可以使用 CSS 文件生成 PDF 输出吗?

Posted

技术标签:

【中文标题】可以使用 CSS 文件生成 PDF 输出吗?【英文标题】:Can a CSS file be used to generate PDF output? 【发布时间】:2020-03-26 18:56:06 【问题描述】:

DITA-OT 是否支持通过 CSS 自定义生成 PDF 输出?我认为它支持使用 Apache FOP 生成 PDF。

我同时生成 html 和 PDF 输出并希望使用 CSS。

谢谢...

【问题讨论】:

【参考方案1】:

DITA Open Toolkit 默认不支持使用 CSS 创建 PDF。但这是可以完成的。以下是有关执行此操作的几种方法的一般信息,以供您参考:

如果您有 Oxygen XML 编辑器的最新模型版本,则可以使用名为 DITA Map PDF - 基于 HTML5 和 CSS 的转换方案。这可能是最简单的方法。如果您想在服务器上拥有此功能,则需要额外付费。有关更多信息,请参阅氧气 PDF 化学:https://www.oxygenxml.com/chemistry-html-to-pdf-converter.html XML Rocks DITA OT 插件,需要商业 PDF 处理器,其中之一:Antenna House Formatter、PDFReactor、Vivliostyle 或 Prince。 https://github.com/xmlrocks/dita-ot-pdf-css-page 自己动手。我这样做的一种方法是从 DITA OT 创建正常的 XHTML 输出,然后使用 PDF 处理器和 CSS 将 XHTML 转换为 PDF。我用过 Antenna House,但其他商业 PDF 处理器(见上文)也可以工作。您应该通过将此属性添加到 <map> 元素来使 XHTML 全部在一个文件中(所有 DITA 主题合并到一个文件中):<map chunk="to-content">

【讨论】:

以上是关于可以使用 CSS 文件生成 PDF 输出吗?的主要内容,如果未能解决你的问题,请参考以下文章

java怎么输出pdf格式的文件

如何合并物理文件(pdf)和生成的文件(pdf)并将它们输出到浏览器?

使用Itext搜索和替换PDF

我可以使用 webpack 分别生成 CSS 和 JS 吗?

使用 Ghostscript 将 PDF 转换为 TIFF 时未生成输出文件

我可以使用 PHP 仅将输出的可见元素保存为新文件吗?