iText、PDFBox、およびOracle Formsを試しました。また、iText の場合、グジャラート語の PDF ドキュメントを生成することにも成功しました。しかし、残念ながら、グジャラート語 (UTF-8) 言語で適切なフォントを生成していません。
私のプロジェクトは jdk 1.4 であり、使用が必須です。そのため、グジャラート フォントをサポートする古いバージョンの API が必要です。
利用可能なオプションがあれば提案してください。
サンプルコード:
public void GeneratePDFusingiText(String lStrGujaratidata)
{
try
{
BaseFont bf = BaseFont.createFont("C:\\Windows\\Fonts\\Shruti.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
Font font = new Font(bf, 12);
Document document = new Document();
PdfWriter.getInstance(document, new FileOutputStream("D:/GeneratePDFusingiText.pdf"));
document.open();
document.add(new Paragraph(lStrGujaratidata, font));
document.close();
}
catch(Exception e)
{
System.out.println("Exception while generating PDF");
e.printStackTrace();
}
}
編集1:
画像が表示されていない可能性があります。こちらにアップされています。
編集2:
ステップ 1)グジャラート語の文字列 Google Transliterate を入力します。
Step-2) BableMap Software を使用して Unicode に変換し、Resourse Bundle を使用して使用します。
問題:文字列を持たせてください: બિલાડી (Biladi)
ユニコードは次のようになります: \u0AAC \u0ABF \u0AB2\u0ABE\u0AA1\u0AC0
上記の太字の Unicode 文字を確認してください。それが私が問題を抱えているところです。このユニコードを\u0ABF \u0AAC\u0AB2\u0ABE\u0AA1\u0AC0 に変更すると、適切な出力が PDF に出力されます。
同時に、HTML で間違った出力を出力します: િબલાડી
私はそれらの間を管理する必要があります。
「gu」と「gu.UTF-8」と「UTF-8」を使ってみました。しかし、毎回同じ出力が得られます。