ajout d'un caractère chinois à l'intérieur d'un élément de graphique dans les rapports jasper

StackOverflow https://stackoverflow.com/questions/1607803

  •  05-07-2019
  •  | 
  •  

Question

Lorsque j'essaie d'afficher un caractère chinois dans un élément de graphique (nom de graphique) dans les rapports jasper, il ne s'affiche pas. J'utilise i18n pour prendre la valeur du fichier de propriétés. Il lit les clés mais ne parvient pas à afficher le caractère chinois. . Il n’affiche aucun caractère sauf l’anglais.

c'est mon 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="true" 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"/>

                                                                                                                                                                                                                                                                                                                                                                                                                                                                 

Était-ce utile?

La solution

Dans la boîte de dialogue Propriétés du champ de texte, vous devez définir un codage PDF approprié. Vous utilisez le CP1252 qui convient aux caractères latins mais pas au chinois.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top