使用Gitbook生成电子书

背景

  《Google工程实践文档》相对原文Google's Engineering Practices documentation ,部分内容过时了。需要更新中文版,并使用Gitbook把Markdown文件转换成对应的PDF电子书。

  上一次生成PDF电子书是5年前,当时生成电子书的环境早已不在。此次重新搭建环境,以备忘。

工具

  需要安装3个工具:Calibre、nvm 和nodejs。

  1. Calibre
    使用Gitbook生成PDF文件时,底层会调用Calibre生成PDF文件。
  2. nvm
    用于管理nodejs版本。
    本机已经是最新版本的nodejs(版本号20.11.0)。由于gitbook官方长期未更新,与最新版本的nodejs不兼容。为了让其正常运行,本机只能安装较老版本(10.22.0)的nodejs。
    安装nvm的目的是为了随时能在不同的nodejs版本间切换。当需要使用gitbook时,使用10.22.0,否则,其他场合使用最新版本。
  3. Nodejs和gitbook
    Gitbook命令基于nodejs(版本号10.22.0)运行。

安装步骤

1. 安装Calibre

  Calibre 必须使用3.48版本。

  最新版本的Calibre虽然也能生成PDF文件,但兼容性不好,生成的PDF文件比较大,而且会内嵌很多字体。除此之外,在生成的PDF文件中,电子目录(左边的书签)无法正确定位到文档中正确的位置。

  在官网:Previous calibre releases 可以找到 3.48 版本。

  下载后,双击安装。

2. 安装nvm

 1) 从Github上下载windows版安装文件 nvm-setup.exe 。

  下载链接:https://github.com/coreybutler/nvm-windows/release 。

  安装过程中,会提示找到已安装的版本,是否要纳入版本管理,点击"是"。

 2) 安装nvm之后,到命令行中执行  

  $ nvm npm_mirror https://registry.npmmirror.com

 3) 安装 10.22.0 版本的nodejs,运行

  $ nvm install 10.22.0

 4) 切换到版本 10.22.0,运行

  $ nvm use 10.22.0

 5) 运行 node -v,运行结果显示

  $ node --v
  v10.22.0

3. 安装gitbook并验证版本为3.2.3
  $ npm install gitbook-cli --g
  $ gitbook --v
  CLI version: 2.3.2
  GitBook version: 3.2.3

运行流程

  Gitbook生成电子书的流程如下图所示:

生成PDF电子书

  1. 下载电子书到本地。
  2. 进入电子书目录,运行 gitbook pdf ./ ./Google工程实践文档.pdf。

  运行help命令可以查询gitbook的用法。

$ gitbook help

build book output build a book

--log Minimum log level to display (Default is info; Values are debug, info, warn, error, disabled)

--format Format to build to (Default is website; Values are

......

参考资料

相关推荐
万祥Python6 小时前
2026年6月英语六级真题及答案解析(第一、二、三套全PDF)
pdf
Latchh8 小时前
PDF打开不要密码却显示已加密,前端怎么判断
前端·图像处理·人工智能·计算机视觉·pdf
原子延迟8 小时前
PDF权限密码和打开密码差在哪?我拿7份文件试了
图像处理·人工智能·计算机视觉·pdf
zxanz19 小时前
Gotenberg PDF 转换服务曝出高危 RCE 安全漏洞
pdf
dotnet全栈开发12 小时前
火爆全网的《高性价比人生指南》,613条建议最新完整版PDF来了!
pdf
零基础1231 天前
PDF 处理工具全攻略:pdf24、PDFgear、Adobe Acrobat DC 与 Stirling-PDF 深度对比
java·开发语言·pdf
南风微微吹1 天前
考研数学一、二、三历年真题及答案解析PDF(1987-2026年)
考研·pdf
XLYcmy2 天前
PDF 论文处理器 — 改进方向与建议文档
python·pdf·llm·agent·dify·rag·harness
XLYcmy3 天前
PDF 论文处理器 — 优势与功能文档
大数据·python·网络安全·pdf·dify·rag·漏洞检测
闭包不眠3 天前
PDF文字提取交付前该检查什么
运维·服务器·图像处理·人工智能·计算机视觉·pdf