3

いくつかの英字といくつかの漢字を含む文字列データがあります。iTextSharpを使用して、このデータでpdfファイルを作成しています。PDFファイルが作成された後、それを開くと、PDFには英語の文字しか含まれていません。漢字が表示されません。PDFファイルで漢字を表示する方法を教えてください。PDF に書き込んでいる文字列データには動的な言語文字が含まれていることに注意してください。つまり、英語、中国語、日本語などです。

4

2 に答える 2

5

これは iText(Sharp) のドキュメントで説明されています。異なる言語のグリフを含む文字列がある場合は、この例FontSelectorに示すようにa を使用する必要があります。

FontSelector selector = new FontSelector();
selector.AddFont(FontFactory.GetFont(FontFactory.TIMES_ROMAN, 12));
selector.AddFont(FontFactory.GetFont("MSung-Light", "UniCNS-UCS2-H", BaseFont.NOT_EMBEDDED));
Phrase ph = selector.Process(TEXT);
document.Add(new Paragraph(ph)); 

この場合、最初に Times Roman をフォント セレクターに追加し、次に MSung-Light を追加します。これで、すべての英語の文字がTEXTTimes Roman になります。あなたが欠落していると言う文字は、MSung-Light を使用してレンダリングされます。MSung-Light と Times Roman の順序を変更すると、完全TEXTに MSung-Light でレンダリングされるため、フォントを慎重に選択してください。順序は重要でありTEXT、フォントを定義していない文字はすべて失われます。

于 2013-02-21T11:34:16.767 に答える