新版gitbook导出pdf

最近想把自己写的一个gitbook转成pdf分享出去,突然发现最新的gitbook版本已经不支持导出PDF了。于是在网上找了好久终于被我发现了三个将gitbook转换成pdf的方式,现分享给大家。我使用的是mac系统,如果是其他系统大家可以查找相应的方案。

gitbook自带的npm模块gitbook

npm gitbook的最新版本是3.2.3,最新更新时间是1年前,官方估计已经放弃这个模块了。不过还好,这个模块还能够使用。 具体步骤如下:

  1. 安装npm

    通常来说,安装好nodejs后会自动安装相应的npm。

    brew install nodejs
    
    
  2. 安装gitbook

    npm install gitbook -g
    npm install gitbook-cli -g
    
    
  3. 安装calibre

    直接到官网下载: https://download.calibre-ebook.com/

    安装好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
    
    
  4. 生成PDF

    在所有的一切都准备好之后就可以运行下面的命令生成pdf了。

    gitbook pdf
    
    

注意,calibre要下载3.*版本,否则在gitbook pdf 的过程中会卡住。别问我是怎么知道的,我被这个问题坑了好久。

使用vscode的插件Markdown 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文件。当然这样也有一个缺点就是引入的文件缺少层级概念也无法生成标签。

使用CommandBox GitBook Exporter

第三种方式就是使用forgebox的GitBook Exporter工具了。

方法如下:

  1. 安装CommandBox

    brew install commandbox
    
    
  2. 在box中安装gitbook-exporter

    box install gitbook-exporter
    
    
  3. 在gitbook控制页面台中,导出你要生成的gitbook的信息:
    Advanced->Danger Zone->Export

  4. 导出PDF和html

    CommandBox> gitbook export sourcePath=/path/to/ExportFolder
    
    

使用上面的命令可以同时导出pdf和html,其优点就是比使用官方gitbook命令导出的文件要小很多,缺点就是pdf中文会出现乱码(暂时没有找到解决方法)

好了,三种方法都教给大家了,感觉去试一下吧。

愿与诸君共进步,大量的面试题及答案还有资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系,可以微信搜索539413949获取,最后祝大家都能拿到自己心仪的offer

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值