0

iText(http://www.lowagie.com/iText/)でエンコードの問題が発生しました。データベースからデータをロードし、iTextを使用してhtmlからpdfに挿入します。何らかの理由で、英語以外の(フィンランド語のä、öなど)文字が正しく表示されません。次の例は、htmlにテキストを挿入する方法を示しています。

    text = "<p>" + data + "</p>";
    HTMLWorker htmlWorker = new HTMLWorker(doc);
    InputStream is = new ByteArrayInputStream(text.getBytes());
    InputStreamReader isr = new InputStreamReader(is);
    htmlWorker.parse(isr);  

更新:追加する必要がある場合は、Windows Vistaシステムでは機能しますが、Linuxシステムでは機能しません。

4

2 に答える 2

1

デフォルトのロケールは正しく設定されていますか?Locale.getDefault()それが本来あるべき値を返していることを確認してください。これらのいずれかが正しく設定されていない場合、これはWindowsとLinuxで異なる可能性があります。

于 2009-10-12T07:28:00.937 に答える
1

適切な文字セット名でInputStreamReaderを使用してみてください。

于 2009-10-12T07:29:39.827 に答える