最近想把本身寫的一個gitbook轉成pdf分享出去,忽然發現最新的gitbook版本已經不支持導出PDF了。因而在網上找了很久終於被我發現了三個將gitbook轉換成pdf的方式,現分享給你們。我使用的是mac系統,若是是其餘系統你們能夠查找相應的方案。html
npm gitbook的最新版本是3.2.3,最新更新時間是1年前,官方估計已經放棄這個模塊了。不過還好,這個模塊還可以使用。 具體步驟以下:node
安裝npmgit
一般來講,安裝好nodejs後會自動安裝相應的npm。shell
brew install nodejs
安裝gitbooknpm
npm install gitbook -g npm install gitbook-cli -g
安裝calibremarkdown
直接到官網下載: https://download.calibre-eboo...app
安裝好calibre以後,須要將 /Applications/calibre.app/Contents/MacOS/ebook-convert 連接到/usr/local/bin/ebook-convert工具
ln -s /Applications/calibre.app/Contents/MacOS/ebook-convert /usr/local/bin/ebook-convert
生成PDF插件
在全部的一切都準備好以後就能夠運行下面的命令生成pdf了。code
gitbook pdf
注意,calibre要下載3.*版本,不然在gitbook pdf 的過程當中會卡住。別問我是怎麼知道的,我被這個問題坑了很久。
vscode是一個很是強大的文本編輯工具,咱們能夠可使用它的Markdown PDF插件來將markdown來轉換成pdf。
它有一個markdown-it-include的功能,能夠將一個markdown文件中引入的其餘markdown文件包含進來。
考慮下面的文件結構:
├── [plugins] │ └── README.md ├── CHANGELOG.md └── README.md
若是咱們新建一個md文件,其內容以下:
README Content :[Plugins](./plugins/README.md) :[Changelog](CHANGELOG.md)
導出爲PDF以後,其內容以下:
Content of README.md Content of plugins/README.md Content of CHANGELOG.md
這樣就能夠經過一個文件來包含多個md文件。固然這樣也有一個缺點就是引入的文件缺乏層級概念也沒法生成標籤。
第三種方式就是使用forgebox的GitBook Exporter工具了。
方法以下:
安裝CommandBox
brew install commandbox
在box中安裝gitbook-exporter
box install gitbook-exporter
導出PDF和html
CommandBox> gitbook export sourcePath=/path/to/ExportFolder
使用上面的命令能夠同時導出pdf和html,其優勢就是比使用官方gitbook命令導出的文件要小不少,缺點就是pdf中文會出現亂碼(暫時沒有找到解決方法)
好了,三種方法都教給你們了,感受去試一下吧。
更多教程請參考 flydean的博客