问题标签 [apache-fop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 在 .NET 应用程序中使用 ApacheFOP v1.0
有没有人成功地将 Apache FOP v1.0 库编译为 .NET DLL?我正在使用http://onjava.com/pub/a/onjava/2004/08/18/ikvm.html中的 IKVM 语法;但是,编译后的 DLL 似乎不完整。例如,我不能将 FopFactory 对象实例化为:
java - Java 的 PDF 生成库
我知道之前有人问过这个问题,但我仍然不确定要为我当前的项目使用哪个 PDF 生成框架。
我的要求
- 即时生成 PDF 文档(主要是订单、发票)
- 基于 Java
- 易于布局
- 应该是开源的
- 易于更改布局
很多人似乎都在使用iText,但我对关注点分离有一些担忧(除了更改的许可证):在 HTML 上下文中,有很好的 MVC 支持,我通常坚持使用 Spring MVC 和 FreeMarker 来分离逻辑和布局。我有点担心使用 iText 你最终会混淆代码和布局。
我知道,Apache FOP在这里可能是一个解决方案,但是我再次发现 XSLT 使用起来很乏味,而且我读到 FOP 在处理大量文档时可能会很慢?
我也考虑过JasperReports,但据我了解,这更适合包含表格数据集的报告,而不是需要大量布局格式的发票等单个文档?
对此有什么想法吗?
xml - 使用 docbook 从 XML 和 CSS 生成输出 - 适用于 HTML,适用于 PDF
从一系列 xml 文件和一个样式表开始,我使用 docbook-xsl-ns-1.73、libxslt-1.1.22.win32 和 fop-0.94 生成了一个 HTML 文件。样式表说代码块必须有编号的行和灰色的背景。这是将 xmls 转换为 html 的 and 任务的一部分:
现在这个任务工作得很好,产生了所需的输出。
用于将 xmls 转换为 pdf 的类似任务具有以下参数:
问题是我的 pdf 转换任务无法按照样式表中的说明格式化代码行。有什么问题?考虑到转换为 html 使用相同的样式表并且有效。我应该在哪里寻找解决方案?提前致谢。
jsf-2 - FOP:如何指定图像 src 相对路径?
这是我在这里的第一个问题,我希望我做对了。抱歉我的英语不好:)
我正在使用 JSF 2.0 (Eclipse IDE),并且正在尝试使用 Apache FOP 1.0 生成一些 PDF 文件。
我可以使用Apache Fop 网站上的说明制作简单的 PDF 文件,但我无法从我的应用程序文件夹中插入任何图像。我的文件夹结构是这样的:在我的应用程序 WebContent 中,我有(除其他外)pdf_transform/xslt/transformFile.xsl 和 pdf_transform/xslt/logo.jpg
在 transformFile.xsl 我有
但是当我在我的 servlet 中单击“showPDF”按钮时,我得到没有图像的 PDF 文件(其他所有内容都在那里),并且在控制台中显示以下消息:
严重:从 URI 解析返回的源不包含 URI 的 InputStream:logo.jpg 2010 年 11 月 18 日下午 5:16:49 org.apache.fop.events.LoggingEventListener processEvent 严重:找不到图像。URI:徽标.jpg。(没有可用的上下文信息)
我尝试使用 'logo.jpg' 而不是 url('logo.jpg'),将图像放在 WebContent 文件夹内的各个位置并使用不同的导航(“./logo.jpg”),但它没有用。
如果我设置绝对路径(例如“d:/fop/images/logo.jpg”),它工作正常,但我需要在我的应用程序中恢复。
在搜索时,我发现这与 fopFactory.setURIResolver() 和/或 userAgent.setBaseURL() 有关。尝试了一些东西,但没有成功。
我是 JSF 和 FOP 的新手,这种图像问题困扰了我很长一段时间。有人可以帮我解决这个问题,或者至少指导我阅读一些关于“如何配置 FOP 以使用相对路径”的教程吗?
编辑:我不希望任何绝对路径和应用程序应该独立于其在计算机上的位置工作(可发布)。我的搜索告诉我它与配置 FOP 有关,但我不知道该怎么做 :)
提前致谢。
PS这是显示PDF的方法:
pdf-generation - XSL-FO 后备箱。长文本流入相邻的单元格/块,掩盖那里的东西
任何人都可以建议我一种方法来包装长词(如序列号)吗?我尝试了一些商业软件,没有这样的问题。它是一个 fop 错误还是可能有可用的解决方案?
我不能在文档中每个单词的每个字符之后插入零长度空格。这个解决方案对我来说听起来很疯狂。
c# - IKVM Apache FOP
我正在尝试将 Apache FOP v1.0 库编译为 .NET DLL。我按照以下说明进行操作: 在 .NET 应用程序中使用 ApacheFOP v1.0
但是,当我运行 ikvmc 命令时,我收到了一些警告(我可以忍受),然后是一个错误:
System.ArgumentException:已添加具有相同键的项。
谁能指出我如何解决这个问题?对此的任何帮助将不胜感激。
谢谢杰
java - 如何在 Java 中将 xsl-fo 转换为 docx(Office Open XML)?
我正在寻找一个开源或商业友好的 Java 库以转换xsl-fo
为docx
(Office Open XML)格式。
我打算用它xsl-fo
来生成pdf
文档(使用 Apache FOP),所以我认为docx
从相同的源 XML 生成 Word 文档 ( ) 可能是个好主意。
更新:我忘了提到我正在使用 Java。
java - Apache FOP:来自 xml 数组列表迭代的多页 PDF
我有一个包含复杂元素数组/列表的 xml 文档。我想生成一个 PDF 文件,以便每个复杂元素都显示在新页面上。我让它在一个页面上工作。我的示例 XML 就像:
我已经尝试了以下
我收到验证错误。我究竟做错了什么?有没有更好的方法来做到这一点?谢谢
jsf - 如何在 AdobeReader 中直接显示 java (jsf) 生成的 pdf
我正在使用 JSF 2.0 (Eclipse IDE),并且我的一个 bean 中有一个方法,它使用 Apache FOP 1.0 生成一些 PDF 文件。当我单击 JSF 页面上的“makePDF”按钮时,生成的 PDF 会在我的页面所在的相同窗口中打开(并且在查看/保存/打印 PDF 后我必须使用“返回”按钮)。
我可以改变这种方式,当按下“makePDF”按钮时,会出现标准弹出对话框并询问我是否希望保存文件或使用 AdobeReader 打开它。
有没有一种方法,当我单击“makePDF”按钮时,生成的 PDF 会直接在 AdobeReader 中打开(我仍然有我的 JSF 页面,不需要确认任何内容)???另外(这不是真的需要,但很高兴知道),有没有办法在新窗口中打开它或直接发送到打印机?
这是我的代码的主要部分(我删除了一些不相关的东西):
当我删除response.setHeader("Content-disposition", "attachment");
它时,它会在同一个窗口中打开,否则它会要求我保存或打开。
提前致谢。
unicode - FOP对希腊字符的解释
您能帮我将带有 HTML 显示的希腊字符解释为 HTML= & #8062; 和十六进制值 01F7E
这些字符的详细信息可以在以下 URL 中找到
http://www.isthisthingon.org/unicode/index.php?page=01&subpage=F&hilite=01F7E
当我在 Apache FOP 中运行这个角色时,他们给了我一个 ArrayIndexOut of Bounds 异常
引起:java.lang.ArrayIndexOutOfBoundsException:-1 at org.apache.fop.text.linebreak.LineBreakUtils.getLineBreakPairProperty(LineBreakUtils.java:668) at org.apache.fop.text.linebreak.LineBreakStatus.nextChar(LineBreakStatus.java :117)
当我查看 FOP 代码时,我无法理解 LineBreakUtils.java 中需要 lineBreakProperties[][] 数组。
我还注意到,对于上述页面上提到的所有希腊字符,FOP 都失败了,这些字符因类似的错误而无法显示。
这些特殊字符是什么?
为什么这些字符没有显示这些换行符或制表符?
有没有人用 FOP 解决过类似的问题?