阿星的博客

转换时,如何在 PDF 中使用目录映射 HTML 里的标题

前言

这个问题困扰我很久了,今天总算解决了。

一个小问题

将网页转为 PDF有很多中办法,我最常用的是打印-另存为 PDF,快又简单。

然而PDF格式是原生支持目录功能的,所以,能不能在转化后的 PDF 里也支持目录展示呢,比如将网页里的h1h2等标题自动转化成对应目录。

希望 Chrome 能支持该功能

我一直觉得是 Chrome 应该支持该功能,然而,很多年过去了,Chrome 并没有这个想法。

https://bugs.chromium.org/p/chromium/issues/detail?id=840455

柳暗花明

今天再次尝试寻找答案的时候,在这里https://github.com/GoogleChrome/puppeteer/issues/1778发现有人在讨论 Chrome 打印的问题,讨论里有人提到了wkhtmltopdf可以实现。

酷!

小状况

最新的稳定版0.12.5toc指令有bug,建议使用 beta 版本:https://builds.wkhtmltopdf.org/0.12.6-dev/

markdown -> html -> pdf

  • 首先Sublime里使用 MarkdownPreview 将 Markdown 文档转化为 HTML 文件。
  • 然后在终端或iTerm2里使用命令:wkhtmltopdf toc --toc-header-text "目录" centos6虚拟机安装.html centos6虚拟机安装.html.pdf 即可。

后语

我有一个小本本,上面记满了这么多年的各种奇怪需求,今天总算又清了一条需求,爽。

原文来自阿星的博客:https://wanyaxing.com/blog/20180906181730.html

X