开发者

add a chinese character inside a chart element in jasper reports

开发者 https://www.devze.com 2022-12-08 23:50 出处:网络
When i try to display a chinese character inside a chart element(chart name) in jasper reports it doesn\'t display, i use i18n to take the value from properties file, it reads the keys but fails to di

When i try to display a chinese character inside a chart element(chart name) in jasper reports it doesn't display, i use i18n to take the value from properties file, it reads the keys but fails to display the chinese character. It doesn't display any character except English.

this is my jrxml:

<parameter name="orgId" isForPrompting="true" class="java.lang.String"/>
<parameter name="time" isForPrompting="true" class="java.lang.String"/>
<parameter name="chartName" isForPrompting="true" class="java.lang.String"/>
<parameter name="url" isForPrompting="true" class="java.lang.String"/>
<parameter name="wwidth" isForPrompting="true" class="java.lang.String"/>
<parameter name="wheight" isForPrompting="true" class="java.lang.String"/>
<parameter name="sql" isForPrompting="true" class="java.lang.String"/>
<queryString><![CDATA[$P!{sql}]]></queryString>

<field name="ROWNUM" class="java.math.BigDecimal"/>
<field name="CCOUNT" class="java.math.BigDecimal"/>
<field name="CONTROL_ID" class="java.math.BigDecimal"/>
<field name="CONTROL_CODE" class="java.lang.String"/>
<field name="CONTROL_NAME" class="java.lang.String"/>

    <background>
        <band height="0"  isSplitAllowed="true" >
        </band>
    </background>
    <title>
        <band height="20"  isSplitAllowed="true" >
            <textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
                <reportElement
                    x="0"
                    y="0"
                    width="403"
                    height="19"
                    key="textField-1"/>
                <box leftPadding="5"></box>
                <textElement>
                    <font fontName="Trebuchet MS" pdfFontName="Helvetica-Bold" isBold="true"/>
                </textElement>
            <textFieldExpression   class="java.lang.String"><![CDATA[( ($P{time}!=null && !$P{time}.equals("")) ? str($P{chartName}) : "" )]]></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="222"  isSplitAllowed="true" >
            <bar3DChart>
                <chart  hyperlinkTarget="Self" >
                <reportElement
                    x="0"
                    y="0"
                    width="403"
                    height="222"
                    key="element-1"/>
                <box></box>
                    <chartTitle color="#000000" >
                <font fontName="Trebuchet MS" pdfFontName="Helvetica" size="11" isBold="tr开发者_StackOverflow中文版ue" isItalic="false" isUnderline="false" isStrikeThrough="false" isPdfEmbedded="false" pdfEncoding="Cp1252"/>
                            <titleExpression><![CDATA[str("chartName")]]></titleExpression>
                </chartTitle>
                    <chartLegend textColor="#000000" backgroundColor="#FFFFFF" >
                </chartLegend>
                </chart>
                <categoryDataset>
                    <dataset >
                    </dataset>
                    <categorySeries>
                        <seriesExpression><![CDATA[$F{CONTROL_CODE}]]></seriesExpression>
                        <categoryExpression><![CDATA[$F{CONTROL_NAME}]]></categoryExpression>
                        <valueExpression><![CDATA[$F{CCOUNT}]]></valueExpression>
            <itemHyperlink   hyperlinkType="Reference">
                    <hyperlinkReferenceExpression><![CDATA["javascript:void(0);window.open('"+$P{url}+"&fileName=topControlsDrilldown&conName="+$F{CONTROL_NAME}+"&conId="+$F{CONTROL_ID}+"','TopControls','width="+$P{wwidth}+",height="+$P{wheight}+",top=300,left=250,menubar=0');location.reload()"]]></hyperlinkReferenceExpression>
                    <hyperlinkTooltipExpression><![CDATA[""+$F{CCOUNT}]]></hyperlinkTooltipExpression>
            </itemHyperlink>
                    </categorySeries>
                </categoryDataset>
                <bar3DPlot isShowLabels="true" >
                    <plot orientation="Horizontal" foregroundAlpha="0.7" >
                        <seriesColor seriesOrder="0" color="#615A4A"/>
                        <seriesColor seriesOrder="1" color="#88A3BF"/>
                        <seriesColor seriesOrder="2" color="#B47272"/>
                        <seriesColor seriesOrder="3" color="#E8A4EA"/>
                        <seriesColor seriesOrder="4" color="#FFC189"/>
                        <seriesColor seriesOrder="5" color="#FFEF79"/>
                        <seriesColor seriesOrder="6" color="#AFFAFF"/>
                        <seriesColor seriesOrder="7" color="#F7A7AB"/>
                        <seriesColor seriesOrder="8" color="#A7A1FF"/>
                        <seriesColor seriesOrder="9" color="#E7CEAD"/>


In the Properties dialog of the textfield, you should set a proper PDF-Encoding. You are using CP1252 which is ok for Latin characters but not Chinese.

0

精彩评论

暂无评论...
验证码 换一张
取 消