什么是java.awt.FontFormatException:坏表,标记= 1196445523表明? [英] What does java.awt.FontFormatException: bad table, tag=1196445523 indicating?
问题描述
我遵循此链接将字体添加到我的jasper报告项目,但是我得到了这个尝试构建报告时出现异常,这种异常意味着什么?我找不到任何解决办法。
请注意,我正在尝试添加 Ubuntu-LI
font
17:26:35-218 - - raysis.rohani.rg.report.builder.ReportBuilder.show(120) - 显示jasper报告错误(从ReportBuilder调用)
net.sf.jasperreports.engine .JRRuntimeException:java.awt.FontFormatException:bad table,tag = 1196445523
at net.sf.jasperreports.engine.fonts.SimpleFontFace。< init>(SimpleFontFace.java:104)
at net。 < init>(SimpleFontFace.java:128)
at net.sf.jasperreports.engine.fonts.SimpleFontFace.getInstance(SimpleFontFace.java:67)
at net.sf.jasperreports.engine.fonts.SimpleFontFamily.setNormal(SimpleFontFamily.java:99)
at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:261)
在net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamilies(SimpleFontExtensionHelper.java:232)
at net.sf .jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:193)
at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:162)
at net.sf .jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:56)
at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:110)
at net.sf.jasperreports .engine.DefaultJasperReportsContext.getExtensions(DefaultJasperReportsContext.java:246)
at net.sf.jasperreports.engine.fonts.FontUtil.getFontInfo(FontUtil.java:185)
at net.sf.jasperreports.engine .fonts.FontUtil.getAwtFontFromBundles(FontUtil.java:245)
at net.sf.dynamicreports.design.transformation.StyleResolver.getFont(StyleResolver.java:96)
at net.sf.dynamicreports.design .transformation.StyleResolver.getFont(StyleResolver.java:71)
at net.sf.dynamicrep orts.design.transformation.StyleResolver.getFontHeight(StyleResolver.java:52)
at net.sf.dynamicreports.design.transformation.TemplateTransform.getTextFieldHeight(TemplateTransform.java:967)
at net.sf.在net.sf文件中,动态报表组件转换.textField(ComponentTransform.java:332)
在net.sf.dynamicreports.design.transformation.BandTransform.band(BandTransform.java:184)
。在net.sf.d中的
在net.sf.dynamicreports.design.base.DRDesignReport.transform(DRDesignReport.java:135)
。 dynamicreports.design.base.DRDesignReport。< init>(DRDesignReport.java:107)
at net.sf.dynamicreports.design.base.DRDesignReport。< in它>(DRDesignReport.java:99)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.toJasperReportDesign(JasperReportBuilder.java:261)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder .getJasperParameters(JasperReportBuilder.java:288)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.toJasperPrint(JasperReportBuilder.java:299)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder .show(JasperReportBuilder.java:328)
at raysis.rohani.rg.report.JasperBuilder.show(JasperBuilder.java:121)
at raysis.rohani.rg.report.builder.ReportBuilder.show (ReportBuilder.java:118)
at raysis.rohani.rg.report.test.ReportMaker.main(ReportMaker.java:46)
引起:java.awt.FontFormatException:坏表,标记= 1196445523
at sun.font.TrueTypeFont.init(TrueTypeFont.java:547)
at sun.font.TrueTypeFont。< init>(TrueTypeFont.java:191)
at sun.font .SunFontManager.createFont2D(SunFontManager。 java:2460)
在java.awt.Font。< init>(Font.java:614)$ b $在java.awt.Font.createFont0(Font.java:968)
at java.awt.Font.createFont(Font.java:876)
at net.sf.jasperreports.engine.fonts.SimpleFontFace。< init>(SimpleFontFace.java:100)
... 31更多
任何帮助都会被高度折扣
在我的情况下,我使用Maven 3.3.3来构建我的发行版。
maven-resource-plugin正在过滤资源并在字体文件(.ttf)中应用UTF-8。
所以,我添加了这个配置,解决了这个问题。
< build>
<资源>
< resource>
< directory> $ {project.basedir} / src / main / resources< / directory>
<过滤>虚假< /过滤>
<包括>
< include> ** / jasperreports_extension.properties< / include>
< include> ** / tecsofti-fonts.xml< / include>
< include> ** / *。ttf< / include>
< / includes>
< / resource>
< /资源>
< / build>
I have followed this link to add fonts to my jasper report project, but i get this exception when trying to build the report, what does this exception mean any way? i can't find any solution on how to solve it.
note that i am trying to add Ubuntu-LI
font
17:26:35-218 - - raysis.rohani.rg.report.builder.ReportBuilder.show(120) - error in showing the jasper report (called from ReportBuilder)
net.sf.jasperreports.engine.JRRuntimeException: java.awt.FontFormatException: bad table, tag=1196445523
at net.sf.jasperreports.engine.fonts.SimpleFontFace.<init>(SimpleFontFace.java:104)
at net.sf.jasperreports.engine.fonts.SimpleFontFace.<init>(SimpleFontFace.java:128)
at net.sf.jasperreports.engine.fonts.SimpleFontFace.getInstance(SimpleFontFace.java:67)
at net.sf.jasperreports.engine.fonts.SimpleFontFamily.setNormal(SimpleFontFamily.java:99)
at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:261)
at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamilies(SimpleFontExtensionHelper.java:232)
at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:193)
at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:162)
at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:56)
at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:110)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.getExtensions(DefaultJasperReportsContext.java:246)
at net.sf.jasperreports.engine.fonts.FontUtil.getFontInfo(FontUtil.java:185)
at net.sf.jasperreports.engine.fonts.FontUtil.getAwtFontFromBundles(FontUtil.java:245)
at net.sf.dynamicreports.design.transformation.StyleResolver.getFont(StyleResolver.java:96)
at net.sf.dynamicreports.design.transformation.StyleResolver.getFont(StyleResolver.java:71)
at net.sf.dynamicreports.design.transformation.StyleResolver.getFontHeight(StyleResolver.java:52)
at net.sf.dynamicreports.design.transformation.TemplateTransform.getTextFieldHeight(TemplateTransform.java:967)
at net.sf.dynamicreports.design.transformation.ComponentTransform.textField(ComponentTransform.java:332)
at net.sf.dynamicreports.design.transformation.ComponentTransform.component(ComponentTransform.java:152)
at net.sf.dynamicreports.design.transformation.ComponentTransform.list(ComponentTransform.java:285)
at net.sf.dynamicreports.design.transformation.BandTransform.band(BandTransform.java:184)
at net.sf.dynamicreports.design.transformation.BandTransform.transform(BandTransform.java:74)
at net.sf.dynamicreports.design.base.DRDesignReport.transform(DRDesignReport.java:135)
at net.sf.dynamicreports.design.base.DRDesignReport.<init>(DRDesignReport.java:107)
at net.sf.dynamicreports.design.base.DRDesignReport.<init>(DRDesignReport.java:99)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.toJasperReportDesign(JasperReportBuilder.java:261)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.getJasperParameters(JasperReportBuilder.java:288)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.toJasperPrint(JasperReportBuilder.java:299)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.show(JasperReportBuilder.java:328)
at raysis.rohani.rg.report.JasperBuilder.show(JasperBuilder.java:121)
at raysis.rohani.rg.report.builder.ReportBuilder.show(ReportBuilder.java:118)
at raysis.rohani.rg.report.test.ReportMaker.main(ReportMaker.java:46)
Caused by: java.awt.FontFormatException: bad table, tag=1196445523
at sun.font.TrueTypeFont.init(TrueTypeFont.java:547)
at sun.font.TrueTypeFont.<init>(TrueTypeFont.java:191)
at sun.font.SunFontManager.createFont2D(SunFontManager.java:2460)
at java.awt.Font.<init>(Font.java:614)
at java.awt.Font.createFont0(Font.java:968)
at java.awt.Font.createFont(Font.java:876)
at net.sf.jasperreports.engine.fonts.SimpleFontFace.<init>(SimpleFontFace.java:100)
... 31 more
any help will be highly apreciated
In my case, I'm using Maven 3.3.3 to build my releases. The maven-resource-plugin was filtering the resources and applying UTF-8 in font files (.ttf).
So, I added this configuration and it solved the problem.
<build>
<resources>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>**/jasperreports_extension.properties</include>
<include>**/tecsofti-fonts.xml</include>
<include>**/*.ttf</include>
</includes>
</resource>
</resources>
</build>
这篇关于什么是java.awt.FontFormatException:坏表,标记= 1196445523表明?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!