设置一个text框设置为 stretch with overflow,放在title区,里面放一个$p 然后默认显示字符串如下,如果这个字符串里面的逗号都是半角就可以完整显示这个字符串,如果都是全角的这个字符串就不能能显示完整.另外将title区唯一的text框和title区高度都设置为22如果在增加一个text框设置为 stretch with overflow,放summary区,里面放一个$p,默认显示"summary".如果title区的text内容足够多,并且逗号为半角,那导出pdf的时候title区和summary区之间就会有很大的留空.如果text内容少的话或者都改成全角的话就
中间就不会留空很大.但是用ireport显示的时候却没问题.只有导出pdf的时候就有问题了。
感觉都是因为字体造成的如果内容里面全角半角混合或者数字中文混合就会不太好!
不知道怎么解决啊?附上jrxml的全部内容
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Created with iReport - A designer for JasperReports -->
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport
name="Untitled_report_1"
columnCount="1"
printOrder="Vertical"
orientation="Portrait"
pageWidth="595"
pageHeight="842"
columnWidth="535"
columnSpacing="0"
leftMargin="30"
rightMargin="30"
topMargin="20"
bottomMargin="20"
whenNoDataType="NoPages"
isTitleNewPage="false"
isSummaryNewPage="false">
<property name="ireport.scriptlethandling" value="0" />
<property name="ireport.encoding" value="UTF-8" />
<import value="java.util.*" />
<import value="net.sf.jasperreports.engine.*" />
<import value="net.sf.jasperreports.engine.data.*" /> <parameter name="test" isForPrompting="false" class="java.lang.String">
<defaultValueExpression ><![CDATA["大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,end<br>"]]></defaultValueExpression>
</parameter> <background>
<band height="0" isSplitAllowed="true" >
</band>
</background>
<title>
<band height="50" isSplitAllowed="true" >
<textField isStretchWithOverflow="true" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None" hyperlinkTarget="Self" >
<reportElement
x="0"
y="0"
width="535"
height="50"
key="textField-1"/>
<box></box>
<textElement up="html">
<font fontName="宋体" pdfFontName="STSong-Light" isPdfEmbedded ="true" pdfEncoding ="UniGB-UCS2-H"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$P{test}]]></textFieldExpression>
</textField>
</band>
</title>
<pageHeader>
<band height="0" isSplitAllowed="true" >
</band>
</pageHeader>
<columnHeader>
<band height="0" isSplitAllowed="true" >
</band>
</columnHeader>
<detail>
<band height="0" isSplitAllowed="true" >
</band>
</detail>
<columnFooter>
<band height="0" isSplitAllowed="true" >
</band>
</columnFooter>
<pageFooter>
<band height="0" isSplitAllowed="true" >
</band>
</pageFooter>
<summary>
<band height="0" isSplitAllowed="true" >
</band>
</summary>
<noData>
<band height="20" isSplitAllowed="true" >
</band>
</noData>
</jasperReport>
中间就不会留空很大.但是用ireport显示的时候却没问题.只有导出pdf的时候就有问题了。
感觉都是因为字体造成的如果内容里面全角半角混合或者数字中文混合就会不太好!
不知道怎么解决啊?附上jrxml的全部内容
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Created with iReport - A designer for JasperReports -->
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport
name="Untitled_report_1"
columnCount="1"
printOrder="Vertical"
orientation="Portrait"
pageWidth="595"
pageHeight="842"
columnWidth="535"
columnSpacing="0"
leftMargin="30"
rightMargin="30"
topMargin="20"
bottomMargin="20"
whenNoDataType="NoPages"
isTitleNewPage="false"
isSummaryNewPage="false">
<property name="ireport.scriptlethandling" value="0" />
<property name="ireport.encoding" value="UTF-8" />
<import value="java.util.*" />
<import value="net.sf.jasperreports.engine.*" />
<import value="net.sf.jasperreports.engine.data.*" /> <parameter name="test" isForPrompting="false" class="java.lang.String">
<defaultValueExpression ><![CDATA["大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,大千世界,end<br>"]]></defaultValueExpression>
</parameter> <background>
<band height="0" isSplitAllowed="true" >
</band>
</background>
<title>
<band height="50" isSplitAllowed="true" >
<textField isStretchWithOverflow="true" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None" hyperlinkTarget="Self" >
<reportElement
x="0"
y="0"
width="535"
height="50"
key="textField-1"/>
<box></box>
<textElement up="html">
<font fontName="宋体" pdfFontName="STSong-Light" isPdfEmbedded ="true" pdfEncoding ="UniGB-UCS2-H"/>
</textElement>
<textFieldExpression class="java.lang.String"><![CDATA[$P{test}]]></textFieldExpression>
</textField>
</band>
</title>
<pageHeader>
<band height="0" isSplitAllowed="true" >
</band>
</pageHeader>
<columnHeader>
<band height="0" isSplitAllowed="true" >
</band>
</columnHeader>
<detail>
<band height="0" isSplitAllowed="true" >
</band>
</detail>
<columnFooter>
<band height="0" isSplitAllowed="true" >
</band>
</columnFooter>
<pageFooter>
<band height="0" isSplitAllowed="true" >
</band>
</pageFooter>
<summary>
<band height="0" isSplitAllowed="true" >
</band>
</summary>
<noData>
<band height="20" isSplitAllowed="true" >
</band>
</noData>
</jasperReport>
解决方案 »
- oracle查询中having和group by条件书写时先后顺序是什么?
- 关于JRadioButton中fireActionPerformed里面的执行顺序的问题
- 请教:“J2SE”里面的“2”是什么意思?
- sql中datetime数据类型,java里怎么用字符串转成sql要的哪个类型?
- 菜鸟弱问,如何获取button上的内容啊
- 各位朋友介绍几本Java比较经典的电子书籍看看...
- 帮忙!!帮忙 @
- 哪有JBuilder4下载?
- 第一次可以可是第二次就报出以下错误 为什么会出现这样的错误,我实在没办法了
- 再次提问有关设定金额掩码形式的方法....
- 关于java遍历远程文件的问题
- 昨天去一家公司面试
有啊............. <textElement up="html">
<font fontName="宋体" pdfFontName="STSong-Light" isPdfEmbedded ="true" pdfEncoding ="UniGB-UCS2-H"/>
</textElement>
这段就是用了itext-asian 包的字体啊.否则不可能导出中文啊.