Tag: apache fop

如何更改Apache FOP Xalan XSLT处理器?

我正在使用Apache FOP 1.1。我想将当前的apache Xalan XSLT处理器更改为其他支持XSLT 2.0的处理器。 目前它不支持XSLT 2.0。 请帮我解决这个问题。 谢谢。

使用OutputStream在FOP中渲染图像

我想在PDF上渲染图像,这将由FOP生成。 要渲染图像我使用标签如下所示: 我也尝试通过提供完整的URL作为: 在控制器中我有一个请求映射(../offlinePaper/displayImage) ,它从getParameter获取图像名称disImg并解密图像并返回OutputStream 。 但是当我生成PDF时,我发现日志文件中的错误为: Image not available. URI: http://10.2.10.79:80/Web/offlinePaper/displayImage?disImg=4bec89f0-5b97-40c3-b7c9-ac555a664df8. Reason: org.apache.xmlgraphics.image.loader.ImageException: The file format is not supported. No ImagePreloader found for http://10.2.10.79:80/Web/offlinePaper/displayImage?disImg=4bec89f0-5b97-40c3-b7c9-ac555a664df8 (No context info available) 但是,如果我复制此URL并粘贴到URL中,那么图像将显示在浏览器中,我还发现,当我生成PDF时,请求映射(假设要调用图像解密)不会被调用。 更新 另外一个奇怪的想法我知道,如果Web服务器是Tomcat ,使用相同的代码PDF可以成功生成,但如果我在Glassfish上部署应用程序则会出错。

加载XSLT文件时解析相对路径

我需要使用Apache FOP进行XSL转换,我有这样的代码: //Setup FOP Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, out); //Setup Transformer Source xsltSrc = new StreamSource(new File(xslPath)); Transformer transformer = tFactory.newTransformer(xsltSrc); //Make sure the XSL transformation’s result is piped through to FOP Result res = new SAXResult(fop.getDefaultHandler()); //Setup input Source src = new StreamSource(new File(xmlPath)); //Start the transformation and rendering process transformer.transform(src, res); 其中xslPath是存储我的XSLT文件的路径。 我已经确认它只有一个XSLT文件时才有效,但是在我的项目中,我将事物分成了几个XSLT文件,并用标签加入它们。 […]

Apache FOP使用SunSim显示###

我正在维护一个使用Apache FOP打印PDF文档的程序。 有几个关于中文字符出现“####”的投诉。 我找到了一个关于这个问题的现有线程,并在我身边做了一些研究。 http://apache-fop.1065347.n5.nabble.com/Chinese-Fonts-td10789.html 我的系统上安装了uming.tff语言文件。 与此post中的人不同,我仍然得到“####”。 从现在开始,有没有人看过一个可以让你使用Apache FOP在PDF文档中打印复杂字符的工作? 瑞安