GitBook输出为PDF
在github上有许多的文档,里面大部分是md格式,虽然可以用markdown编辑器来看,但是总感觉有点不方便,所以就想到有没有一个方法将md文档全部合并成一个PDF文件。
然后通过Google发现可以使用gitbook合并成一个PDF。
而要合成则必须是按照Gitbook的格式写的,简单来说就是有 SUMMARY.md
本机环境为Windows8.1 64bit
基础环境搭建
Node安装
到Node.js官网下载,根据自己的操作系统选择具体的安装包。
GitBook安装
GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。通过Node.js命令安装GitBook
全局安装Gitbook
1 |
|
图书输出
输出为静态网站
有两种方法输出一个静态网站
本地预览时自动生成
1 |
|
这里会启动一个4000的端口用于预览服务器
1 |
|
在浏览器打开这个网址就行
http://localhost:4000
使用build参数生成
与直接预览生成的静态网站文件不一样的是,使用这个命令,你可以将内容输入到你所想要的目录中去,步骤如下:
1 |
|
完成后就会在outbook目录下生成了同样的静态html文件
输出为PDF
安装calibre
由于生成PDF文件依赖于ebook-convert,故首先在calibre官网下载所需要的版本安装
然后,进入到文档目录,用下面的命令就可以生成PDF文件了
1 |
|
错误解决
ERR cb() never called
这个错误是在第一步安装gitbook-cli时出现的,解决方法如下
1 |
|
Error: ENOENT: no such file or directory
这个错误是在构建时出现的,解决方法就是把copyPluginAssets.js
里的confirm: true
改为confirm: false
这个文件具体在C:/User/{username}/.gitbook/versions/{version}/lib/output/website/copyPluginAssets.js
使用编辑器搜索修改即可
Error: Error with command “svgexport”
这个错误出现在构建时,假如文档里有svg图片,则会出现这个错误,具体解决方法如下
1 |
|
Template render error
这个错误是出现在生成pdf文件时,通常是文中有{{`和`}}
,并且这两个符号没有被代码块包括,解析就会出问题。
解决办法:
方法一:
1 |
|
改正之后就是
1 |
|
方法二:
直接把原文变为代码块
比如原文是{{ input }}
修改之后就是