2

現在jasperreports-4.5.1ライブラリを使用していますが、テキスト フィールドのオーバーフローに問題があります。

英語で書かれた住所を表示するために、バンド内に 1 つのテキストフィールドがあります。このテキスト フィールドは、プロパティisStrechWithOverFlowが true に設定されているため、幅をテキストに合わせて自動的に調整します。何が起こるかというと、アドレスの長さがテキスト フィールドよりもほんの少し大きい場合 (たとえば 4 文字)、テキスト フィールドは自動的に拡大されず、最後の文字が隠されます。ただし、6 文字を超える場合は、文が正しく折り返され、非表示の部分が下の行に貼り付けられます。

スクリーンショット

添付の画像では、問題が発生した場所を示す赤い円が表示されます。そこに表示される完全なアドレスは次のとおりです。

EDF. KUAI TAK TAK (TAK TAK KAK CHKK), 2 ANDAR c

ご覧のとおり、ANDAR c部品が欠落しています。これらのフィールドを生成するコードは次のとおりです。

<textfield isstretchwithoverflow="true" isblankwhennull="true">
    <reportelement uuid="82599625-2379-4c37-b390-5fece5e8e828" style="FontStyle" positiontype="Float" mode="Transparent" x="227" y="151" width="224" height="11"></reportelement>
    <textelement verticalalignment="Top">
        <font size="6" isitalic="false"></font>
    </textelement>
    <textfieldexpression></textfieldexpression>
</textfield>

ワードラッパーまたはストレッチテキストフィールドアルゴリズムに問題はありますか? 私はここで初めてなので、これは単なる推測です。多分問題は私のコードにあります。

これの解き方が分からないので教えてください!

前もって感謝します。

4

2 に答える 2

0

stretchTypeのを指定してみてくださいreportElement

 stretchType="RelativeToTallestObject"
于 2012-12-11T07:12:32.480 に答える
0

iReport を使用している場合、問題は iReport 内部プレビューアと PDF プレビューアの両方で発生しますか? 内部プレビューアでは正しく書式設定されているが、PDF では書式設定されていない場合は、フォント拡張機能を使用していない可能性があります。PDF を正しくフォーマットするには、フォント拡張子を使用する必要があります。

フォント拡張子の詳細な説明については、こちらを参照してください。

Alex K は、iReport とフォント拡張機能の使用に関する優れたドキュメントを提供しています

フォント拡張機能を整理してプログラムする方法のデモは、リリース ページで入手可能な JasperReports プロジェクトの zip ファイルの demo/fonts ディレクトリにあります。

お役に立てれば。

于 2012-11-29T16:53:59.963 に答える