gitbook制作电子书

1 引言

GitBook 是一个开源的文档编辑和托管平台 ,用于创建和维护文档、手册和电子书。它基于 Markdown 和 Git 技术,帮助用户方便地编写、编辑和发布文档。

GitBook 支持将文档输出为多种格式,包括网页、PDF、ePub 等,适用于不同的阅读和分享场景。

GitBook 还提供了团队协作的功能,可以方便多人共同编辑和维护文档。

可以将其部署在 gitbook 平台(https://legacy.gitbook.com/),由于需要科学上网,本文不做详细介绍,如果需要,请见最后的参考部分;也可以**部署在本地或者自己的网站上**。

从功能角度,可以把 gitbook 看作网页版的 obsidian 或者 hexo。gitbook工具实现前端,用户只需要关心文档的内容,遵循gitbook定义的规范,然后使用gitbook提供的命令行工具即可。

从逻辑角度看,它以主题为中心,可以把一个系列的文章梳理集中在同一主题之下,更有章法,适合用来写书或者手册。

https://github.com/GitbookIO/gitbook Start 25.9K

2 原理

其底层基于 Markdown,git,以及一些前端和文档转换技术。

用法和 vue, react, hexo 这些前端工具差不多。

GitBook 的客户端工具是 GitBook CLI,它是一个命令行的工具,用于创建、构建和发布 GitBook 项目;使用 JavaScript 编写的,依赖于 Node.js 环境。

其主要功能包括:

  • 创建项目
  • 本地预览
  • 构建静态网站
  • 生成电子书
  • 发布到 GitBook 平台
  • 安装插件

3 方法

3.1 环境

下载可用的 node docker 环境

shell 复制代码
$ docker pull node:9
$ docker run --rm -it -name node_9 --network host -v /exports/:/opt/xieyan  node:9 bash

注意:这个项目产生比较早,使用最近的工具链可能出现各种问题。l建议使用低版本的 node,否则可能因为工具链版本不匹配报graceful-fs 包相关的错误,我用 node 16 docker 后试降 graceful-fs 版本,但没有成功。

3.2 安装
shell 复制代码
$ npm install gitbook-cli -g
$ gitbook --version # 第一次使用时自动安装 gitbook
3.3 新建项目
shell 复制代码
$ mkdir book
$ cd book
$ gitbook init
$ tree -Na
3.4 启动服务
shell 复制代码
$ gitbook serve --port 4001
3.5 打包
shell 复制代码
$ gitbook build
3.6 生成电子书
shell 复制代码
$ gitbook pdf . 输出文件路径.pdf
$ gitbook epub . 输出文件路径.epub
$ gitbook mobi . 输出文件路径.mobi

注意:gitbook 借助 ebook-convert 实现格式转换,因此需要安装 calibre。

4 参考

相关推荐
largecode2 小时前
打电话时,怎么让号码显示自己的品牌名称?办理号码认证服务流程
笔记·百度·微信·课程设计·微信公众平台·facebook·新浪微博
米罗篮3 小时前
DSU并查集 & 拓展欧几里得-逆元
c++·经验分享·笔记·算法·青少年编程
噜噜噜阿鲁~3 小时前
python学习笔记 | 10.0、面向对象编程
笔记·python·学习
hssfscv4 小时前
软件设计师下午题训练1-3题+2019上上午题错题解析 练习真题训练13
笔记·设计模式·uml
哆哆啦005 小时前
使用 Obsidian + GitHub Actions + GitHub Pages 搭建内容发布流
数据库·笔记·github·obsidian
xuhaoyu_cpp_java7 小时前
SpringMVC学习(五)
java·开发语言·经验分享·笔记·学习·spring
中屹指纹浏览器7 小时前
2026平台集群式风控溯源体系研究与浏览器环境适配应对方案
经验分享·笔记
敲代码的嘎仔8 小时前
力扣高频SQL基础50题详解
开发语言·数据库·笔记·sql·算法·leetcode·后端开发
星恒随风9 小时前
四天学完前端基础三件套(JavaScript篇)
开发语言·前端·javascript·笔记
羊群智妍9 小时前
2026 免费GEO监测:AI搜索优化实用工具推荐
笔记