Текст кириллицы c из свойств документа поврежден в файле PDF в docx4j - PullRequest
0 голосов
/ 26 марта 2020

Я пытаюсь конвертировать docx в pdf, используя docx4j 3.7.7. Проблема в том, что pdf генерируется правильно, но документ с текстом кириллицы c не появляется. Это приходит как #####. Обычный абзац с текстом кириллицы c генерируется правильно. Проблема воспроизводима только в linux. В windows docProperty конвертируется правильно. Файл для тестирования можно найти здесь file

Ниже приведен код:


import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import org.docx4j.Docx4J;
import org.docx4j.convert.out.FOSettings;
import org.docx4j.openpackaging.packages.WordprocessingMLPackage;

public class TestRussian {

    public static void main(String[] args) {
        new TestRussian().convertWordToPdf();

    }

    public void convertWordToPdf() {
        FileOutputStream fileOutputStream =null;
        try {
            File file = new File("Test1.docx");

            WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(file);

            boolean checkViaFo = Docx4J.pdfViaFO();
            FOSettings foSettings = Docx4J.createFOSettings();
            fileOutputStream= new FileOutputStream("PDFRussian1.pdf");
            foSettings.setWmlPackage(wordMLPackage);
            //Getting error in update() during complex field update
            //FieldUpdater updater = new FieldUpdater(wordMLPackage);
            //updater.update(true);

            Docx4J.toPDF(wordMLPackage,fileOutputStream);
            System.out.println("Done");
        } catch (Exception ex) {

        } finally {
            try {
                if (fileOutputStream != null) {
                    fileOutputStream.close();
                }
            } catch (IOException e) {
            }
        }

    }

}

Я читал кое-что о MERGEGORMAT & CHARFORMAT, но не имел большого представления об этом

...