gitbook导出markdown文件为pdf格式
前言
本人想完成如题所示的操作,可是兜兜转转在网上搜了好久,不是Linux下的教程就是mac OS下的教程,而且一大堆windows的教程能够说明白的寥寥无几,本着分享的态度,鄙人今天特整理教程如下:
一、安装nodejs
进入官网: http://nodejs.cn/download/,并点击如图所示找到对应的版本并下载安装包:
双击安装包安装nodejs,默认也把npm勾选安装上,选择自定义安装路径,例如:D:\Program Files\nodejs,这个时候nodejs应该已经被添加到环境变量了,如果没有可以自己手动添加。
查看nodejs版本:
执行npm -version可以查看版本,如下图:
二、下载gitbook工具
在安装之前可以先更改一下安装源,默认是国外的,改成国内的,否则后续安装你会有想哭的冲动~~
打开D:\Program Files\nodejs\node_modules\npm\npmrc文件,增加如下配置:
registry=http://registry.npm.taobao.org
保存配置。
然后输入命令: npm install gitbook-cli -g , 全局安装gitbook。
查看gitbook工具是否已经安装成功,使用命令:gitbook -V
同时这个命令会自动安装gitbook
出现如上图结果则说明此时gitbook安装成功。
三、制作PDF
先下载两个插件:
3.1 phantomjs
进入https://bitbucket.org/ariya/phantomjs/downloads/下载phantomjs:
将下载的压缩包解压,并将解压后的目录添加到环境变量。
安装完成后,查看版本:phantomjs --version
表示安装成功。
3.2 calibre
进入https://calibre-ebook.com/download_windows下载calibre:
直接安装下载后的软件,并在将安装目录添加到环境变量中,默认安装在:
C:\Program Files (x86)\Calibre2
安装可以参看链接:https://jingyan.baidu.com/album/6079ad0eb87aa328fe86db6a.html?picindex=1。
直接点击下一步即可,邮件什么的不用填写。
查看版本:calibre -v
3.3 插件都安装好并配置环境变量后,接下来我们就可以安装gitbook-pdf了:
npm install gitbook-pdf -g
查看版本:gitbook-pdf --version
gitboot-pdf安装失败后,再次安装仍失败解决:
查看日志:删除gitbook-pdf相关安装文件:
C:\Users\Administrator\AppData\Roaming\npm-cache\_logs
安装成功后:下面会有:gitbook-pdf相关配置信息。安装失败后需要删除重新安装。
C:\Users\Administrator\AppData\Roaming\npm
C:\Users\Administrator\AppData\Roaming\npm\node_modules
三、 生成PDF文件
切换到你之前自己写的电子书文档目录(shift+右键:当前目录打开命令行窗口),或者从网上下载的电子书文档,执行如下命令:
gitbook pdf ./mybook
生成的PDF文件即在你的电子书文档目录mybook里面。
关于gitbook build 生成的HTML无法跳转章节的问题
如题,发生如上所述问题,很大概率你使用的gitbook版本过高,解决办法如下:
gitbook降低版本到 2.6.7 就可以了,使用如下命令:
gitbook build --gitbook=2.6.7
四、注意事项
1、本地的环境变量:用到的标黄了。
E:\ProgramFiles\Java\jdk1.7.0_80\bin;%MAVEN_HOME%\bin;E:\ProgramFiles\Java\jdk1.7.0_80\jre\bin;C:\Program Files (x86)\VanDyke Software\Clients\;C:\Users\Administrator\AppData\Local\BypassRuntm;C:\Users\Administrator\AppData\Roaming\npm;C:\Users\Administrator\AppData\Local\Yarn\bin;C:\Users\Administrator\AppData\Local\GitHubDesktop\bin;E:\phantomjs-1.9.7-windows\phantomjs-1.9.7-windows;C:\Program Files (x86)\Calibre2
其中phantomjs的环境变量配置时,就是将.exe文件所在的目录配置到path中即可。
calibre的环境变量配置时,将其安装路径C:\Program Files (x86)\Calibre2配置到path中即可。
原文链接:https://blog.csdn.net/june_young_fan/article/details/88628096
https://bitbucket.org/ariya/phantomjs/downloads/下载phantomjs:
gitbook导出markdown文件为pdf格式的更多相关文章
- Markdown转HTML/pdf格式
Markdown转HTML/pdf格式 通过_github自带_的更新博客的网页: https://github.com/YOUR_GITHUB_ACCOUNT/YOUR_GITHUB_ACCOUNT ...
- java 调用OpenOffice将word格式文件转换为pdf格式
一:环境搭建 OpenOffice 下载地址http://www.openoffice.org/ JodConverter 下载地址http://sourceforge.net/projects/jo ...
- winform利用itextsharp.dll实现图片文件转换PDF格式文件
1.利用itextsharp.dll实现单个图片文件转换为PDF格式文件, 可以使用以下类: void ConvertJPG2PDF(string jpgfile, string pdf) { var ...
- [原创]使用Pandoc实现Markdown文件转PDF文件
Markdown写法简单明快,我十分喜欢,以至于我最近都想使用Markdown快速的进行测试说明书的写作,但是考虑到这文档是要进行交接的,一个.md的文件在内部传输还是有不便,于是就想到了能不能把Ma ...
- [csdn markdown]使用摘记二 快捷键及导入导出Markdown文件
csdn推出了新的编辑器markdown,对于习惯使用离线编辑的人员来说是个大的福利,比如上班的时候,不能联网,但是又有好些知识点需要记录,等到下班了呢,又想直接把这些排版格式良好的文件直接上传到cs ...
- 使用openoffice将word文件转换为pdf格式遇到问题:The type com.sun.star.lang.XEventListener cannot be resolved. It is indirectly referenced from required
The type com.sun.star.lang.XEventListener cannot be resolved. It is indirectly referenced from requi ...
- Linux(Ubuntu)使用日记------markdown文件与pdf,doc,docx文件的相互转化(pandoc使用)
安装: sudo apt-get install pandoc 使用: man pandoc 查看帮助文档 直接转换,命令如下: pandoc -f markdown -t docx ./test ...
- 导出文本、表格、图像到PDF格式文件中(学习整理)
1.测试例子: 需要导入的外部jar包: 相关API http://www.coderanch.com/how-to/javadoc/itext-2.1.7/com/lowagie/text/pack ...
- 利用Pandoc将markdown文件转化为pdf
利用Pandoc将markdown文件转化为pdf 准备工作 安装pandoc 安装MiKTeX 将markdown文件转换为pdf 准备工作 安装pandoc Windows下安装pandoc很容易 ...
随机推荐
- 说说对 Node 中的 fs 模块的理解? 有哪些常用方法?
一.是什么 fs(file system),该模块提供本地文件的读写能力,基本上是POSIX文件操作命令的简单包装 可以说,所有与文件的操作都是通过fs核心模块实现 导入模块如下: const fs ...
- .NET Worker Service 作为 Windows 服务运行及优雅退出改进
上一篇文章我们了解了如何为 Worker Service 添加 Serilog 日志记录,今天我接着介绍一下如何将 Worker Service 作为 Windows 服务运行. 我曾经在前面一篇文章 ...
- 从Vehicle-ReId到AI换脸,应有尽有,解你所惑
最近在做视频搜索的技术调研,已经初步有了一些成果输出,算法准确性还可以接受,基本达到了调研的预期.现将该技术调研过程中涉及到的内容总结一篇文章分享出来,内容比较多,初看起来可能关系不大,但是如果接触面 ...
- 【NX二次开发】UF_CSYS_map_point()函数,绝对坐标,工作坐标,部件之间坐标转换。
UF_CSYS_map_point用来变换点的坐标,比较简单且实用.例如工作坐标系与绝对坐标系转换,一个部件的坐标与另一个部件坐标系之间的转换.下面的例子是在三个坐标下创建三个点相对坐标为{10,50 ...
- java并发编程实战之线程安全性(一)
1.1什么是线程安全性 要对线程安全性给出一个确切的定义是非常复杂的.最核心的概念就是正确性.正确性:某个类的行为与其规范完全一致.在良好的规范中通常会定义各种不变性条件来约束对象的状态,以及定义各种 ...
- Java并发编程--基础进阶高级(完结)
Java并发编程--基础进阶高级完整笔记. 这都不知道是第几次刷狂神的JUC并发编程了,从第一次的迷茫到现在比较清晰,算是个大进步了,之前JUC笔记不见了,重新做一套笔记. 参考链接:https:// ...
- Bean初始化操作initMethod、@PostConstruct和InitializingBean
我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 1 简介 很多时间当一个Bean被创建出来后,我们希望做一些初始化操作,如初始化数据.缓存预热等.有以下三种方法: 初始化 ...
- 全面解析Pytorch框架下模型存储,加载以及冻结
最近在做试验中遇到了一些深度网络模型加载以及存储的问题,因此整理了一份比较全面的在 PyTorch 框架下有关模型的问题.首先咱们先定义一个网络来进行后续的分析: 1.本文通用的网络模型 import ...
- 海量数据Excel报表利器——EasyExcel(开场篇)
EasyExcel 简介篇 互联网的精髓就是共享,可以共享技术.共享经验.共享情感.共享快乐~ 很多年前就有这个想法了,从事IT行业时间也不短了,应该把自己工作和业余所学习的东西记录并分享出来,和有缘 ...
- Dockerfile优化方式
如今GitHub 仓库中已经包含了成千上万的Dockerfile,但并不是所有的Dockerfile都是高效的.本文将从四个方面来介绍Dockerfile的最佳实践,以此来帮助大家编写更优雅的Dock ...