我正在尝试使用Apache FOP fox:external-document
附加pdf文档,但是在使用pdf类型时会引发以下异常:
SEVERE: Image not available. URI: /pathToPdf/file.pdf. Reason: org.apache.xmlgraphics.image.loader.ImageException: The file format is not supported. No ImagePreloader found for /pathToPdf/file.pdf (See position 202:89)
org.apache.xmlgraphics.image.loader.ImageException: The file format is not supported. No ImagePreloader found for /pathToPdf/file.pdf
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions">
<xsl:template match="/">
<fo:root>
<fo:layout-master-set>
...
</fo:layout-master-set>
<fox:external-document content-type="pdf" src="/pathToPdf/file.pdf"/>
</fo:root>
</xsl:template>
</xsl:stylesheet>
我正在使用Apache FOP 2.3和Java 8
答案 0 :(得分:0)
扩展属性fox:external-document
最初旨在将图像作为页面插入pdf输出中。
要与pdf文件一起使用,您还需要PDF Images Plug-In。
只需下载jar并将其放在lib文件夹中,一切便会按预期工作。
答案 1 :(得分:0)
从文件系统或资源添加pdf时对我来说工作正常:
Filesystem:
<fox:external-document src="url('file:D:///resource/test.pdf')"/>
Resource:
<fox:external-document src="url('file:resource/test.pdf')"/>
Remember to add:
xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf"
and
xmlns:fox="http://xmlgraphics.apache.org/fop/extensions"