cod*_*joe 5 pdf xslt pdf-generation xsl-fo
是否可以使用XSL-FO/XSLT将外部PDF或TEXT文档嵌入到主PDF中?
我有xslt样式表来生成PDF文档.但是,输入XML包含内联的TEXT或Base64编码的PDF文档.所以我在我的样式表的HTML版本中我提取TEXT或PDF并将其转储到磁盘上.然后在xslt我有这个:
<xsl:when test='(n1:text/@mediaType="application/pdf") or (n1:text/@representation="B64")'>
<IFRAME name='documentFrame' id='documentFrame' WIDTH='100%' HEIGHT='65%' src='{$DOC_URI}'/>
</xsl:when>
Run Code Online (Sandbox Code Playgroud)
对于HTML转换,它工作得很好.是否有可能在PDF中实现相同的结果(嵌入文档)?我有一个用于pdf生成的XSLT,但是在完成相同的结果方面却没有成功.
我已经尝试过像这样的Apache FOP附加组件(PDF Image Support):
<fox:external-document src="my-doc.pdf"/>
Run Code Online (Sandbox Code Playgroud)
显然它只适用于图像.
任何提示?
谢谢
所以我发现使用我之前的解决方案是可能的,我只是做得不对.在这里查看: FOP扩展
此外,这是一个如何使用它的示例:
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions">
<fo:layout-master-set>
<fo:simple-page-master master-name="A4">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
<fo:flow flow-name="xsl-region-body">
<fo:block-container>
<fo:block>Hello W3Schools</fo:block>
<fo:block>
</fo:block>
</fo:block-container>
</fo:flow>
</fo:page-sequence>
<fox:external-document content-type="pdf" src="../example_file/test.pdf"/>
</fo:root>
Run Code Online (Sandbox Code Playgroud)