15

我想使用带有 HTML 和 PDF 输出的Jekyll编写文档。Html 可以有导航,但 PDF 应该有目录。有没有一种免费且简单的方法来做到这一点?

HTML 部分很简单,但我想使用@media print CSS 来制作 PDF 文件。

我有一些想法如何做到这一点。

  1. 使用PrinceXML,不幸的是,这是一个价格昂贵的商业产品 ~ 500 美元
  2. 使用WKHTMLTOPDF
  3. 使用Maruku,因为可以使用它进行 PDF 转换

我想要一个带有 TOC 的多页 HTML 和单页 PDF。有什么建议么?

顺便提一句。Buildr使用PrinceXML解决了这个问题。

4

4 回答 4

6

如果“免费”是您最重要的标准,那么 wkhtmltopdf 是您最好的选择。它支持封面、目录、页眉、页脚和部分等内容。根据文档布局的奇特程度,您很可能会遇到一些分页问题,​​但稍加修改就可以了。

我已经使用 wkhtmltopdf 一段时间了,有一些相当复杂的文档(带有 javascript 图表、表格、svg 图像等),并且没有遇到太多问题。

确保使用 wkhtmltopdf 的静态版本,因为它是唯一支持呈现 TOC 页面的版本。

于 2012-03-22T23:58:30.987 回答
3

您可以使用PDFKit gem,它在后台使用 wkhtmltopdf。然后,您可以将您的 PDF 逻辑作为生成器或转换器放入 Jekyll 插件中。

于 2013-02-15T19:32:24.370 回答
3
  • 要使用 Jekyll 生成目录,您可以使用 markdown 提供的{:toc},或者如果您更喜欢使用 Textile,则可以编写自己的Textile 目录过滤器。
  • 对于从 Html 和 CSS 生成 PDF,我发现weasyprint是一个很好的解决方案。由于它们不依赖外部引擎进行渲染,因此它们不依赖于外国项目的路线图来实现相关功能,例如 CSS 生成@page的内容或 CSS 声明。(但与 wkhtmltopdf 相比,weasyprint 不解析 javascript)。
于 2013-07-04T08:42:07.200 回答
0

您还可以使用名为Awesome Screenshot的浏览器扩展程序从页面创建 JPEG/PDF。该扩展允许您创建整页图像或将其导出为 PDF。使用此工具,您可以非常快速地导出所有页面(和/或稍后将所有 PDF 组合在一起以创建单个文档)。

我知道这是一个快速而肮脏的解决方案(不完美)。例如:当使用图像而不是文本时,全文搜索将不起作用。此外,它可能需要一些手动工作,但是当您只想阅读它时它就可以完成工作。

于 2020-12-10T08:37:42.797 回答