0

iText で HTML を使用して PDF を生成しようとしています。html にはいくつかのキリル文字が含まれています。そして、私のWindows 7 OSではすべて正常に動作します。

PDFを生成する方法は次のとおりです。

// Registers the fonts folder.
    FontFactory.registerDirectory(fontFolder);

    Set<String> registeredFonts = FontFactory.getRegisteredFonts();
    LOGGER.info("Registered fonts : " + registeredFonts);

    // Adds wrapper HTML and BODY tags.
    content = "<HTML><BODY style=\"font-family: " + fontFamily + "\">" + content + "</BODY></HTML>";
    content = content.replace(NEW_LINE_SEPARATOR, "<br />");

    // Create input stream from the html content
    InputStream stream = new ByteArrayInputStream(content.getBytes("UTF-8"));
    // convert to PDF
    XMLWorkerHelper worker = XMLWorkerHelper.getInstance();
    worker.parseXHtml(writer, document, stream, Charset.forName("UTF-8"));

フォント フォルダー変数には arial フォントへのパスが含まれ、fontFamily 変数には文字列 "arial" が含まれます。

問題は、Web アプリケーションをリモートの Linux jboss サーバーにデプロイすると、このコードのビットがキリル文字を表示しないことです (ラテン文字と数字は問題ありません)。

問題はフォントの欠落にあると思いますが、サーバー上の構成が問題ないように見えるため、何が原因であるかを正確に把握できません。

4

0 に答える 0