0

私のプロジェクトは課金アプリケーションに関連しており、PDFファイルの生成にiTextPdfライブラリを使用しています。ただし、私の要件は、「Rs」ではなく、iTextPdfによって生成されたPDFに新しいルピー記号を表示することです。

\u20B9次のUnicodeは新しいルピー記号用であることを私は知っています。フォーマットに次のコードを使用しています。

String formater(String a) {
  DecimalFormat formatter = new DecimalFormat("\u20B9 000");
  return formatter.format(Double.parseDouble(a));
}

ただし、生成されたPDFファイルにはルピー記号は表示されません。では、iTextPdfライブラリでそれをどのように使用できますか?ライブラリ自体とマージする必要のある追加のフォントはありますか?

4

2 に答える 2

0

助けてくれたmkl、Naveenに感謝します。

これが誰かを助けることができることを願って、私はこれのために次のことをしました:

ステップ1:ルピー記号Unicodeを含むフォントをダウンロードしました(このために、ウィンドウを更新しました(Windows Updateを使用して、ルピー記号付きのarialフォントを取得しました)。

ステップ2:iTextを使用して、IDENTITY_Hエンコーディングで埋め込みベースフォントを作成しました。

BaseFont baseFont = BaseFont.createFont(this.getClass().getResource("arial.ttf").toString(), BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font font = new Font(baseFont);

これで、生成されたpdfに新しいルピー記号が表示されます。

于 2012-12-30T04:07:26.860 に答える
0

IDEでの変更は問題ではありません。iTextPDFは、特定の文字セットでコンテンツをPDFに書き込みます。データが正しく表示されるかどうかを制御します。

これらの2つのリンクを試すことができます

そのための質問には、文字セットをチェックする方法が含まれています

文字セットを修正する方法については、iTextPdfサイトを参照してください

于 2012-12-28T04:47:57.697 に答える