我正在使用Jasper Report 5.6.0 + JSF 2.2 + Primefaces 5.2
我的问题是jrxml的详细band(内容)我正在从pe:ckEditor
here传递RTF。这个编辑器有许多丰富的组件,桌子,收音机,字体等。
在生成的文档中,许多样式会自动转义。喜欢桌子或字体。虽然该文本字段标记是html。
如果我生成html而不是pdf,更多:字体将会被更改。我粗略猜测是否有任何不在JasperReport中的字体 - > iText库会自动转义
答案 0 :(得分:0)
要呈现 RTF 文字,请在markup="rtf"
上使用textElement
,但您不能够呈现表格,文字对齐方式,框& #39; s ecc。
此功能仅用于制作样式文字。,文字的外观(粗体,大小,颜色等)
你有什么选择?
转换为html并使用HTML Renderer Component,请注意这不是完美的,因为它会渲染你的html图像(溢出和大小的问题)。
创建自己的RTF组件,我还没有看到RTF渲染器组件,我认为JasperSoft Community
LI>在java中解析RTF并使用动态jasper生成报告(或相对于RTF的子报告)
生成pdf时,如果未提供字体扩展名,iText将使用(引用@Bruno Lowagie)" 尽力而为"要渲染你的字体,这往往是不够的。考虑在项目中添加font-extension
Check list for rendering font in pdf using jasper report
How to add font extensions using iReport or JasperSoft Studio
注意:如果您使用的是HTML呈现器组件,则不需要它,因为它正在渲染图像。