JasperReports 5.6:无法加载以下字体 [英] JasperReports 5.6: Could not load the following font
本文介绍了JasperReports 5.6:无法加载以下字体的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正面临一个问题, JasperReports 仍然找不到Arial字体.
I am facing the problem, that JasperReports still cannot find the Arial font.
我创建了一个具有以下结构的简单Maven项目,并将其包含到我的主应用程序中.因此,主应用程序在类路径中包含已安装的JAR:
I created a simple Maven Project with following structure and included it to my main application. So the main application contains the installed JAR in classpath:
- jasperreports_extension.properties
- fonts
|-> arial
|-> ariali.ttf
|-> arialbi.ttf
|-> arialbd.ttf
|-> arial.ttf
|-> fonts.xml
但是在将报告导出到PDF时,我仍然看到以下异常.
But I still see following Exception while exporting report to PDF.
net.sf.jasperreports.engine.JRRuntimeException: Could not load the following font :
pdfFontName : Arial
pdfEncoding : Identity-H
isPdfEmbedded : true
jasperreports_extension.properties
net.sf.jasperreports.extension.registry.factory.simple.font.families=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.arial=fonts/fonts.xml
fonts.xml:
<?xml version="1.0" encoding="UTF-8"?>
<fontFamilies>
<fontFamily name="Arial">
<normal>fonts/arial/arial.ttf</normal>
<bold>fonts/arial/arialbd.ttf</bold>
<italic>fonts/arial/ariali.ttf</italic>
<boldItalic>fonts/arial/arialbi.ttf</boldItalic>
<pdfEncoding>Identity-H</pdfEncoding>
<pdfEmbedded>true</pdfEmbedded>
</fontFamily>
</fontFamilies>
模板
<font fontName="Arial" size="8" pdfFontName="Arial" pdfEncoding="Identity-H" isPdfEmbedded="true"/>
推荐答案
问题在于模板本身:在一种字体标记下,缺少<fontName>
属性:
The problem was the template itself: At one font-tag the <fontName>
property was missing:
不起作用:
<font size="12" isBold="true" pdfFontName="Arial"/>
可行吗?
<font fontName="Arial" size="12" isBold="true" pdfFontName="Arial" pdfEncoding="Identity-H" isPdfEmbedded="true"/>
这篇关于JasperReports 5.6:无法加载以下字体的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文