4

PDF 形式のテキストの折り返しに関する問題があります。xls、rtf、pptx などのすべての形式でレポートは正常に機能しますが、pdf では一部のテキストが折り返されます。つまり、テキストの一部の文字、特に最後の数文字が次の行に印刷されます。そのテキストのプロパティでほとんどすべてのオプションを試しました。影響を軽減できる唯一の方法は、それらのテキストの pdf フォント名をローマ字に変更することでした。ただし、これでもうまくいかない場合があります。

スニペットには問題が含まれていますTextField:

<textField  isBlankWhenNull="true">
    <reportElement positionType="Float" x="560" y="0" width="60" height="20"/>
    <box leftPadding="2">
        <pen lineWidth="0.5"/>
        <topPen lineWidth="0.5"/>
        <leftPen lineWidth="0.5"/>
        <bottomPen lineWidth="0.5"/>
        <rightPen lineWidth="0.5"/>
    </box>
    <textElement>
        <font fontName="Arial Unicode MS"  isPdfEmbedded="false"/>
    </textElement>
    <textFieldExpression class="java.lang.String"><![CDATA[$F{CustState}]]>
    </textFieldExpression>
</textField>

これに対する解決策を共有していただければ幸いです。ありがとう...

Ps Ireport 4.0.2 からレポートを生成すると、この問題が発生します。

4

4 に答える 4

3

まず、フォント拡張機能を使用します。JasperReports (iText) が PDF の生成時に使用したいフォントを使用していないため、問題が発生する可能性が非常に高くなります。これを解決するのがフォント拡張機能です。

次に、修正された問題が発生している可能性があります。JasperReports 4.1.1 変更ログには次のものが含まれます。

the net.sf.jasperreports.export.pdf.force.linebreak.policy configuration property is now deprecated as the PDF text rendering code was refactored so that text is rendered exactly like in AWT

于 2011-11-01T18:54:32.757 に答える
1

stretch type一部の要素(TextFieldまたはStaticText)は、プロパティに応じて高さを増やすことができstretch with overflowます。ただし、要素の幅はプログラミングなしでは変更できません。

からの引用iReport Ultimate Guide

ストレッチタイプ-この属性は、印刷の精緻化中に要素の高さを計算する方法を定義します。可能な3つの値は次のとおりです。
  • NoStretch-これは事前定義されたストレッチタイプであり、要素の高さを等しく保つ必要があることを示します。
  • RelativeToBandHeight-要素の高さは、バンドのサイズの増加に比例して増加します。これは、テーブルの境界線をシミュレートする垂直線に役立ちます。
  • RelativeToTallestObject-要素は、最も近い要素の変形に応じて高さを変更します。このオプションは

    、オーバーフローを伴うiReport Stretchによって管理されない要素グループメカニズムである要素グループでも使用されます -このオプションを選択すると、テキストフィールドが許可されます要素がすべてのテキスト行を含むのに十分でない場合、コンテンツに垂直に適応する
  • たとえば、 DynamicJasper APIのColumnBuilderクラスを使用して、列幅を設定できます。

    このディスカッションも読むことができます。

    于 2011-11-01T11:51:02.790 に答える
    0

    For text wrapping issue in pdf export in iReport 4.0.2:

    Convert your fonts as Jar, then add as external jar, definitely it will work.

    In iReport designer:

    Step 1) Tool -> Option -> Fonts -> Install your fonts

    Step 2) Select that font -> click on export as extension [ make it as JAR ]

    Step 3) Go to Classpath -> click on ADD Jar -> add your font jar -> OK

    Now preview the report.

    于 2015-07-06T09:57:27.923 に答える