`

iReport字体报错“JRFontNotFoundException”

    博客分类:
  • J2EE
阅读更多
net.sf.jasperreports.engine.util.JRFontNotFoundException: Font 'Times-Roman' is not available to the JVM. See the Javadoc for more details.
	net.sf.jasperreports.engine.util.JRFontUtil.checkAwtFont(JRFontUtil.java:358)
	net.sf.jasperreports.engine.util.JRStyledText.getAwtAttributedString(JRStyledText.java:226)
	net.sf.jasperreports.engine.fill.TextMeasurer.measure(TextMeasurer.java:326)
	net.sf.jasperreports.engine.fill.JRFillTextElement.chopTextElement(JRFillTextElement.java:510)
	net.sf.jasperreports.engine.fill.JRFillTextField.prepare(JRFillTextField.java:593)
	net.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:328)


可通过Jaspersoft iReprot Designer软件生成字体包:
1.点击 Tools>>Options>>iReport>>Fonts 标签项

2.Install Font

3.选择字体,可选择添加粗体、斜体等配套字体。


4.选择需要打包的字体 >>Export as extension ,输入名字保存成jar文件


生成jar包里面主要有两个配置文件 jasperreports_extension.properties,fontsfamily.xml,也可以不通过iReport自己手动创建字体jar包,按照如下结构:



jasperreports_extension.properties内容如下:
net.sf.jasperreports.extension.registry.factory.fonts=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.ireportfamily1381460521792=fonts/fontsfamily1381460521792.xml

fontsfamily.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<fontFamilies>
   <fontFamily name="Arial Unicode MS">
       <normal><![CDATA[fonts/ARIALUNI.TTF]]></normal>
       <pdfEmbedded><![CDATA[false]]></pdfEmbedded>
   </fontFamily>
   <fontFamily name="SimSun">
       <normal><![CDATA[fonts/simsun.ttf]]></normal>
       <pdfEmbedded><![CDATA[false]]></pdfEmbedded>
   </fontFamily>
   <fontFamily name="Times-Roman">
       <normal><![CDATA[fonts/Times-Roman.ttf]]></normal>
       <pdfEmbedded><![CDATA[false]]></pdfEmbedded>
   </fontFamily>
</fontFamilies>




  • 大小: 42.2 KB
  • 大小: 141.6 KB
  • 大小: 94.9 KB
  • 大小: 117.4 KB
  • 大小: 29 KB
  • 大小: 12.6 KB
  • 大小: 9.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics