您的设定
pdfFontName不是
fontName
pdfFontName这是一种旧方法,现已 过时
以指示itext库应使用哪种字体,
JRFontNotFoundException如果缺少该字体,jasper-
reports不会抛出该异常,而是itext将抛出一个异常,该异常被捕获并重新启动为a
JRRuntimeException。
在ext中,Helvetica作为
afm文件包含在内,因此,如果使用ext,它将不会引发任何异常,但是,如果您以jasper-
a表示另一种字体(在本例中未表示=默认字体),则这 不能保证 您的文本 正确呈现
。报告。事实上,这是一个烂摊子,都
pdfFontName和
pfdEncoding被弃用。
如果未安装属性pdfFontName中的字体,是否有任何方法可以中止PDF的生成?
不要使用pdfFontName
,但是如果您坚持(出于问题的考虑),然后还要设置
fontName="Helvetica",那么设置jasper-
reports字体将引发一个
JRFontNotFoundExceptionif(如果找不到)。
在 正确的方法 是只设置 fontName
,然后提供
字体的扩展
,在字体扩展你包括实际
ttf,指示编码和是否应该被嵌入。
顺便说一句:我会使用Identity-H编码,这是推荐用于较新的PDF标准,它使您能够混合使用不同的编码。



