48c385a8c0eb41ab2441607559400ed9.png

百度上根据pdf转makrdown为关键字进行搜索,结果大多数是反过来的转换,即markdown文本转PDF格式。

4f91c57893ed5bf0fe2e945806bffac3.png

但是PDF转markdown的解决方案很少。

正好我工作上有这个需求,所以自己实现了一个解决方案。

下图是一个用PDF XChange Editor打开的PDF文件,我想将其内容通过markdown格式导出。

ee9789c7b2a20752f0da0a1c8c6fdc59.png

(1) 首先将该PDF导出成word格式,后缀.docx

c1d0646a298fddd45ebd0234a8180d37.png

bf19ba3b80e3990f032418443c57380a.png

(2) 使用typora获得该word文档的markdown源代码:

c5412f183cedd6a461d4855b3ac2d86c.png

此时任务只完成了一半,因为typora这个工具转换成的markdown格式,如果原始的word文档里包含图片,这些图片以本地图片的形式存在于markdown里,那我如果直接将包含了这些本地图片的标签的markdown发布到简书,CSDN,开源中国,腾讯云,阿里云这些支持markdown的社区时,这些本地图片将无法显示。

3770f736585ef7093b085d45af602288.png

因此我们必须找到一个高效的方法,将word里包含的本地图片先上传到网络上,再用生成的包含了图片网络url的markdown标签替换本地图片标签。
(3) 把word文件的后缀从.docx改成.zip, 解压后,在文件夹word的子文件夹media里能找到所有的本地文件。

bb510f7c79b0a145f275d988ab5211d1.png

把这些本地文件全部上传到网站,生成下面这些url:

794dd28676ab2345530e4e50cd853f05.png

我写了一个工具,可以把仅包含了本地图片标签的markdown源代码和包含了上述在线图片url标签的源代码做一个合并,后并后,本地图片标签会被在线图片标签取代:

c446b4441217fc23e3472ba606ae8d67.png

这个工具可以从我github上获得:https://github.com/i042416/KnowlegeRepository/blob/master/practice/255_markdown_tool.html

下图就是我的原始PDF转换成markdown格式后发布在某社区上的效果,和原始PDF外观完全一致:

700ceae0b89a1f9d8b8808d64a4e85bb.png

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

21df1270267df1112ae3bb849b3b0b9d.png
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐