如何更改报告中的默认字体大小
问题描述:
如何更改JasperReports报告中的默认字体大小?我试过net.sf.jasperreports.default.pdf.font.size
但它没有工作。如何更改报告中的默认字体大小
我真正想要的是当我使用我的应用程序将报告导出为pdf格式时,保持相同的字体和大小。
Pure JasperReports或甚至Java解决方案是受欢迎的。
答
这个任务至少可以解决了两种方法帮助:
使用默认样式
我们可以创建默认风格在报告中,以及我们没有为报告的元素指定字体大小等属性(例如,textField或staticText)将应用默认样式的字体大小。
例
的JRXML将是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Default font size" pageWidth="842" pageHeight="595" orientation="Landscape" whenNoDataType="AllSectionsNoDetail" columnWidth="583" leftMargin="2" rightMargin="10" topMargin="2" bottomMargin="2" >
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
<style name="defaultStyle" isDefault="true" fontSize="20"/>
<title>
<band height="383">
<textField>
<reportElement x="10" y="30" width="100" height="50"/>
<textFieldExpression><![CDATA["Text Field"]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="10" y="100" width="802" height="55"/>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Static Text]]></text>
</staticText>
</band>
</title>
</jasperReport>
在本报告中,我们的默认样式声明字体大小:<style name="defaultStyle" isDefault="true" fontSize="20"/>
输出结果
对于具有默认样式的模板,结果在Jasper中生成软工作室将是:
如果不使用默认样式的结果将是:
使用net.sf.jasperreports.default.font.size财产
如果我们有一个Java生成报告的代码我们可以n使用我们自己的副本jasperreports.properties文件。
我jasperreports.properties改变我自己的缺省值文件:
net.sf.jasperreports.default.font.size=20
,并与使用JRPdfExporter出口的Java代码重建报告。
对于同一个模板,但没有任何风格的结果将是:
如果我们试图改变net.sf.jasperreports.default.font.size财产例如价值与(这是一个缺省值)的结果将是:
注:
的jasperreports.properties文件应该被放置在类路径中。
也许这是一个错字,尝试用'net.sf.jasperreports.default.font.size'代替。 – Berger
不变!!!!! – devuser
为了以防万一,这个文档可以帮助:http://jasperreports.sourceforge.net/sample.reference/fonts/index.html#fonts – Berger