基本的にUnicode文字を含むiText v2.1.5を使用してpdfを生成しようとしていますが、Arielは同じフォントに使用されているフォントです。問題は、「ヒンディー語」や「グジャラート語」のような文字の一部が正しく生成されているということです。問題をよりよく理解するには、下記のスクリーンショットをご覧ください。iTextはPDFのUnicode文字を変形/スペルミスしています
グラフと表のハイライト表示されたフォントは同じフォントを使用しますが、表のフォントはヒンディー語やグジャテイ文字には適していません。
はザはグラフ(融合チャート)の文字を強調PhantomJSを使用して生成され、PNG画像としてPDFに埋め込まれています。以下の表の文字は、グラフで使用されているものと同じ "Arial_Unicode_MS.ttf"フォント(linuxマシンで/usr/share/fonts/truetype/Arial_Unicode_MS.ttfで利用可能)を持っていますが、テーブルは生成されていますiTextを使用すると、なぜこのような予期しない動作が発生するのかわかりません。
私はphantomJSをデバッグしようとしましたが、私はそれが上記の同じフォントファイルを使用することを保証することができます。私はiTextの中に持っている以下のコードをご参照ください:問題は、iTextのであるかどうかを確認するには
String formattedData="જિજ્ઞેશ";
BaseFont nationalBase = BaseFont.createFont("/usr/share/fonts/truetype/Arial_Unicode_MS.ttf", BaseFont.COURIER, BaseFont.NOT_EMBEDDED);
PdfPCell dataCell= new PdfPCell(new Phrase(8, new Chunk(formattedData, dataFont)));
を私は、直接「જિજ્ઞેશ」formattedData =にUnicode文字を使用してみましたまだフォントのは、生成されたテーブルに反映しました私が元々使っていたものとはかなり異なっています。
iText7のみがDevanagariとTamilを適切にサポートしています。 –
...タイポグラフィの拡張機能でのみ使用できます。 – mkl