使用Gitbook创建文档并导出PDF
导出PDF
的方式有很多种,之前使用过马克飞象
的导出功能,不过只是简单的导出并不能添加目录,因为源文件是markdown
编写的,经过筛选后采用了gitbook
的方式进行编写文档并且使用gitbook pdf .
的方式导出为PDF
文件。
注意:本机需要有
NodeJs
环境。
环境准备
想要使用gitbook
,那么我们本机需要进行安装,通过npm
命令可以很方便的安装。
安装GitBook
通过npm
的方式进行安装gitbook
环境,命令如下所示:
1 | npm install gitbook -g |
安装calibre & ebook-convert
使用gitbook
的导出功能,需要第三方插件ebook
的支持,下面针对两种不同的操作系统进行配置环境。
Linux系统
下载地址:https://calibre-ebook.com/download_linux
下载并安装
1
sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin
配置软链接
1
sudo ln -s /usr/bin/nodejs /usr/bin/node
Mac系统
下载地址:https://calibre-ebook.com/download_osx
下载并安装
下载的为
dmg
文件直接双击安装即可。配置软链接
1
sudo ln -s ~/Applications/calibre.app/Contents/MacOS/ebook-convert /usr/bin
测试安装
安装完成后通过如下命令进行测试是否已经生效。
1 | ebook-convert --version |
生成文档
一个新的gitbook
文档有两个文件组成,分别是README.md
、SUMMARY.md
(可自行创建文件夹,在文件夹内创建这两个文件)。
README.md
:关于当前文档的详细描述SUMMARY.md
:当前文档的目录层级关系配置,通过初始化命令可直接生成markdown
文件以及文件夹。
编写Summary
下面是一个示例文档的层级关系:
1 | # Summary |
GitBook初始化
gitbook
内部提供了一个初始化的命令,自动根据SUMMARY.md
文件的层级内容生成对应的md
文件以及文件夹,执行如下命令:
1 | ➜ gitbook-example gitbook init |
控制台的输出信息已经告诉我们成功创建了one/first.md
、two/first.md
这两个文件。
配置语言
gitbook
默认使用的并不是中文汉子
,我们需要通过配置book.json
文件来修改默认语言方式(book.json
文件创建在SUMMARY.md
同级目录下)如下所示:
1 | { |
导出文档
gitbook
导出文档的方式有多种,下面简单介绍几种导出的方式。
导出为PDF
在SUMMARY.md
文件的同级目录执行gitbook pdf .
命令进行导出PDF
文件,执行日志如下所示:
1 | ➜ gitbook-example gitbook pdf . |
如果想要自定义生成的
gitbook pdf . ./xxxx.pdf
命令。
导出为epub
在SUMMARY.md
文件的同级目录执行gitbook epub .
命令进行导出epub
文件,执行日志如下所示:
1 | ➜ gitbook-example gitbook epub . |
导出为mobi
在SUMMARY.md
文件的同级目录执行gitbook mobi .
命令进行导出mobi
文件,执行日志如下所示:
1 | ➜ gitbook-example gitbook mobi . |
导出日志查看
如果你在导出过程中遇到了问题,你可以在执行导出命令时添加--log=debug
命令参数,这样导出时就可以看到完整的日志信息在控制台输出,如下所示:
1 | ➜ gitbook-example gitbook pdf . ./example.pdf --log=debug |
总结
使用gitbook
可以用来编写公司的接口使用文档、项目设计文档等等,功能远不止如此,它还可以通过gitbook build
命令来生成静态html
文件,可以部署到Nginx
、阿里云OSS
等静态页面托管的地方。
使用Gitbook创建文档并导出PDF