我遇到的问题是,我在任何JRXML字段中都没有使用的Helvetica被用作Jasper PDF报告中的默认字体。
我正在使用iReports 4.0.2。
答案 0 :(得分:5)
net.sf.jasperreports.default.font.name
和/或 net.sf.jasperreports.default.pdf.font.name
属性来设置默认字体。例如,它是 iReport 中的默认设置(对话框选项 - > JasperReports属性):
使用此设置(未在模板中设置默认样式)我在 iReport 生成的 pdf 中包含 Helvetica 字体。
之后我更改了 iReport 中的设置:
现在我的 pdf 文件中有 Courier 字体(由 iReport 生成):
使用 JasperReports API ,您可以借助JRProperties.setProperty(java.lang.String key, boolean value)方法设置此属性。
样本:
JRProperties.setProperty("net.sf.jasperreports.default.pdf.font.name", defaultPDFFont);
JasperReport jasperReport = JasperCompileManager.compileReport(reportSource);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params);
JasperExportManager.exportReportToPdfFile(jasperPrint, outputFileName);
示例:
<jasperReport .. topMargin="20" bottomMargin="20">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<style name="Base" isDefault="true" hAlign="Center" vAlign="Middle" fontSize="10" pdfFontName="Courier" pdfEncoding="UTF8" isPdfEmbedded="false"/>
<queryString>
有关使用字体的更多信息,请阅读here。
答案 1 :(得分:2)
我使用NetBeans,在我的一个项目中,我想使用Garamond作为我的pdf的默认字体,所以我做的是:
运行报告,保存,然后查看。