gpt4 book ai didi

html - 从 xml 创建可打印 pdf 的一般过程

转载 作者:太空宇宙 更新时间:2023-11-04 12:55:19 24 4
gpt4 key购买 nike

这是一个非常非常基本的问题。我是自学使用 html、xml 和 css 的,所以请原谅我的无知。我的情况如下:我知道如何编写 XMl 文件,我可以创建我想要的 html 输出并使用 Css 以我需要的方式设置页面样式。现在,我想根据这个结果打印一本书。我需要它将我的 html 页面的内容拆分为 A4 页面,添加页码和行号。我必须学习什么技术才能做到这一点?我在网上看到 xsl:fo 用于将 xml 转换为 pdf。有什么方法可以使用 html/css 输出,或者我是否需要使用 xsl:fo 编写一个全新的样式表?我需要学习 JavaScript 吗?我愿意做任何这些,我只是不知道从哪里开始。

我看过将我的 xml 文件导入到 indesign 中,这可行,但我必须再次完成所有文本样式设置工作。必须有更好的方法。

最佳答案

如果你想使用 CSS 来设计你的打印输出,专有的 Prince XML似乎是唯一可以生成体面排版的工具。

转向开源工具,您可以使用 XSLT 将自定义 XML 转换为 XSL-FO,然后 Apache FOP生成 PDF,但是输出不像 TeX 那样干净,您还需要在 XSL-FO 而不是 CSS 中指定所有布局。

我建议将您的 XML 转换为(HTML 或 DocBook XML),然后使用 Pandoc将其转换为 PDF。 Pandoc 使用 pdflatex、xetex 或 luatex 生成 PDF。如果您不熟悉 LaTeX 宏包,我建议使用 ConTeXt macro 包,它具有更一致的布局命令,并且不依赖于基本功能的包。要更改布局,请使用自定义 Pandoc template文件生成所需的 ConTeXt 文件。这将按如下方式工作:

$ saxon -o docbook-file.xml custom.xml stylesheet.xslt #generate DocBook
$ pandoc -f docbook docbook-file.xml -t context --standalone --template template.tex -o out.tex #generate ConTeXt
$ context out.tex #generate PDF

关于html - 从 xml 创建可打印 pdf 的一般过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25890120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com