1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Markdown转PDF→利用 Markdown 制作电子书|非常简单

Markdown转PDF→利用 Markdown 制作电子书|非常简单

时间:2022-01-21 04:23:44

相关推荐

Markdown转PDF→利用 Markdown 制作电子书|非常简单

Markdown转PDF→利用 Markdown 制作电子书

前言

遇到什么问题就解决什么问题,什么不会就学什么.

是这样的,因为最近在看数据分析的书籍《利用Python进行数据分析 原书第2版》,这本书的英文很早就有了,但是网上找不到英文版,不过简书上有人发表了中文翻译版。苦于不是电子书,感觉阅读起来很不方便,也难以携带。简书上有HTML的文档和github上有markdown的文档翻译,所以我在想能不能将HTML和markdown格式的文件转换为PDF,然后弄成电子书。有了需求就开始寻找办法了,网上都有很多方法,以前我使用Atom的markdown插件导出的,但是效果不是很好,一些图片没办法导出,而且也没办法生成docx文档。下面我将介绍两种方法,如何制作电子书的.

工具准备

pandoc

直接使用pandoc这个软件进行转换pypandoc

通过Python的一个库进行转换

工具一:pandoc

①官网/②安装:按照官网的说明操作即可,比较简单

工具二:pypandoc

①官网/project/pypandoc/②安装:按照Python扩展库的安装操作即可.

工具三:Adobe Acrobat DC

下载安装:Adobe Acrobat DC |PDF编辑器

建议:不熟悉Python的用第一种方法,相对来说第一种方法简单,而且文档丰富,第二种方法需要安装Python环境,很麻烦,除非你使用Python进行开发。

使用方法

具体的使用方法建议大家阅读文档操作,毕竟每个人的需求不一样。pandoc的转换功能非常强大,而且很实用。

此外,因为将markdown文件转换位PDF文件需要安装LaTeX,但是使用过程会遇到很多麻烦,解决起来很棘手。

所以我的想法是,将markdown转换为docx文件,再合并,最后将合并好的电子书转换为PDF文件。

这样也可以省去很多不必要的麻烦。

当然其实功能还有很多很多,我也只是介绍了几个,或者根据我的需要来选择,你也可以选择其他的方法。

《利用Python进行数据分析·第2版》|markdown文件下载

如下,我将这本书的markdown文件下载到本地了,一共是17个文件。

由于转换过程中文件名包含中文会出错,所以我将文件名全部修改为数字.

提供一个一键修改文件名的工具吧,下载直接打开使用即可

其他更多使用方法大家自己测试吧

FreeRename下载提取码: bg86

方法一

开始转化,这里使用一位简书作者的代码生成一个Windows可处理文件吧.

简书|更优雅地把Markdown文件转为PDF格式

脚本封装,支持批量转换

把转换命令封装成bat批处理脚本,以后再进行转换的时候只需简单双击一下bat脚本即可,比如封装成convertPDF.bat文件,内容如下:

pandoc text.md -o text.docx && pause

批量处理:假如几十上百个md文件要批量转为docx文件,难道要手工一个个复制这些文件名和pandoc命令去转换吗?完全不需要,一个bat脚本搞定(convert.bat):

@echo off:: 遍历当前文件夹下的所有后缀名为md的文件for /f %%a in ('dir /b *.md') do (:: 执行pandoc命令,把每个md文件都转为docx文件,docx文件的文件名为:md文件名.md.docxpandoc %%a -o %%a.docx)pause

使用方法很简单,使用文本编辑器创建一个TXT文档,然后复制上述代码进去,保存,最后退出来修改文件后缀名为.bat,将需要转化的markdown文件放到一个文件夹下,复制convertPDF.bat到该目录下,双击打开,等待转化完成。

这个时候就将markdown文件转化为docx文档了。

方法二

直接使用pandoc转换。

pandoc text.md -o text.docx

注:运行此代码需要进入到该目录下

①Windows10 系统直接在该目录空白处,按住Shift键,然后鼠标右键,在此处打开Powershell/cmd窗口win + R键打开运行窗口,输入cmd回车,然后进入该目录下,具体的操作可以谷歌。

其他的更多用法大家可以参考pandoc Demos文档/demos.html

方法三

使用Python进行操作。

相对来说用pypandoc还是有很多好处的,例如你可以利用这个库轻松开发出一个简单的应用,还可以利用这个库实现一些抓取网页的功能,因为pandoc可以实现下载一个web page然后转化为docx或者其他格式的文件,而pypandoc提供了pandoc的接口参数,非常方便。当然这都是对学习Python的人来说比较简单。

import pypandocoutput = pypandoc.convert_file('somefile.md', 'docx', outputfile="somefile.docx")

最简单的例子就是这样,首先进入这个文件夹或者在Python中指定文件目录,然后运行上述代码即可。要是想批量转化也是可以的,定义好相对路径,写好脚本,打包为EXE可执行文件,实现一个遍历转化markdown为docx。这里就不再写这个操作了,比较简单,至于打包为可执行文件的可以参考我之前的文章。

利用Python开发图片下载器之教程与源码分享

对于学习Python的同学,我还是建议使用pypandoc的,因为可以调用Python程序。

合并docx&转为PDF

可以先转换为PDF再合并PDF,但是这样感觉不是一个完整的PDF文件,而且不够美观。所以考虑先合并docx再转PDF,这样更完美。

合并docx

我们使用Office 将17个docx文件合并

首先新建一个名为利用Python进行数据分析第二版的docx文件打开这个新建的文件,点击页面上方功能区的插入选项卡下的对象文件中的文字,按照顺序选择这17个文件,点击插入。这个时候就成功合并了这17个文件,并且左边是带有完整目录的,并且该目录可以定位到对应的位置。点击保存

转为PDF

直接利用Adobe Acrobat DC在word中的插件转位PDF,点击上方功能区中的Acrobat下的创建PDF,点击保存。现在成功创建好PDF文件了。电子书制作完成,下面看看预览效果。

《利用Python进行数据分析|第二版》下载

因为没看到有免费的电子书下载,所以这里分享一下我制作好的这本电子书吧。

这本书对于学习Python数据分析还是很好的,大家可以下载学习。

练习环境可以使用Anaconda|Jupyter notebook

书籍下载: 关注个人公众账号【net咖啡屋】回复电子书18

pandoc的其他功能

这里顺便再提一下pandoc的其他的一些功能,具体的大家可以看文档学习测试。

例如之前我提到的这本书

《Learning Scrapy》

译:《精通Python爬虫框架Scrapy》

一样是有简书翻译的

《Learning Scrapy》|简书

很不幸运的是,作者没有给出markdown源文件,我们只可以网上阅读了。为什么需要markdown源文件呢,因为markdown良好的编辑格式使得转化的时候保持了层次分明、带书签的板式,很方便我们制作电子书,节省了很多时间。

值得庆幸的是,pandoc提供了web page 转化为docx的功能。

下面我们来尝试一下。

pandoc -s -r html webpageURL -o doc.md

这里随便转化了一页,但是markdown下的预览很糟糕,因为很多其他多余的内容。

然后我先将其转化为 docx 文档,然后再将多余的内容删掉,然后修改保存。看起来效果还是很好的。

pandoc doc.md -o doc.docx

我测试了多个页面的爬取和转化,发现效果还是很好的,这里如果使用Python的pypandoc来做,就可以做一个EXE程序了,很方便,可以实现自动输入webpagURL实现爬取,然后转化,还是很不错的体验。

更多的用法大家自行测试和思考吧,这里不再赘述了。

Markdown在线生成PDF|网站

这里推荐大家一个markdown自动转化PDF的免费网站吧,体验了一下,感觉还是非常不错的。

MDTR2PDF|MARKDOWN在线生成PDF/index.htm

简单介绍一下

免费文档转换|值得推荐

FREE-CONVERTERhttps://cn.free-/

这个设计很广,可以转换的文件和内容非常多!!!

具体的我这里不介绍了,实在是很丰富!

欢迎关注我的个人公众账号:net咖啡屋

目前涉猎的领域有

『Python』『数据库』『C++』

『数据分析』『网络爬虫』『GUI开发』

我喜欢钻研,喜欢学习自己感兴趣的东西,

在这里,我会坚持分享很多有用的学习心得和学习资源,

你可以在这里找到你需要的一些学习经验和学习资源。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。