从XSLT(html)使用XSL / FO生成PDF

时间:2017-05-20 22:32:36

标签: html xml pdf xslt xsl-fo

我有一个XML和一个生成HTML输出的XSLT。

我想用XSL / FO生成一个PDF,它提供像HTML输出一样的渲染,只是以PDF格式分页。

为此我明白我必须使用XSL / FO样式表,它生成.fo文件,然后我必须使用Apache FOP从.fo文件生成pdf。

我的问题是:如何从生成HTML文件的XSLT .xsl样式表中获取生成.fo文件的XSL / FO .xsl样式表?

有没有简单的方法将XSL(html)转换为其他XSL(xsl / fo)?

谢谢

2 个答案:

答案 0 :(得分:0)

您可以使用XML或HTML作为XSL-FO转换的输入。

您可以将XSL用作XSL-FO样式表的起点。用XSL-FO命令替换HTML输出块。

作为替代方案,您可以查看CSS Paged Media。然后,您可以使用现有的HTML,以及从现有CSS派生的CSS样式表。

答案 1 :(得分:0)

多人在不同时间制作了XHTML到FO样式表。例如,参见' xhtml2fo.xsl'在' XHTML到XSL-FO' https://www.antennahouse.com/antenna1/xml-to-xsl-fo-stylesheets/的标签。

使用内联CSS需要解析CSS并将属性转换为最近的(通常相同的)XSL-FO属性。