2015-12-06 8 views
0

Несколько дней назад я столкнулся с устаревшим кодом, который обрабатывал файл .docx как шаблон и помещал значения в заполнители. Эта система работает правильно, пока в шаблон не будут вставлены сложные таблицы. Я не мог найти решение, кроме таблицы римейка. Возможно, кто-то знает трюк или какую-то настройку в XSLFO.Conversion, которая помогает справиться с этим. здесь просто код reprodure поведение на мой вопросПреобразование docx в pdf()

public class App { 
public static void main(String[] args) { 
    System.out.println("Hello World!"); 
} 

private static WordprocessingMLPackage wordComplex; 

static { 
    try { 
     wordComplex = WordprocessingMLPackage.load(App.class.getResourceAsStream("complexTable.docx")); 
     Conversion c = new Conversion(wordComplex); 
     c.output((new FileOutputStream(System.getProperty("user.dir")+"/table.pdf")), new PdfSettings()); 
    } catch (Throwable e) { 
     e.printStackTrace(); 
    } 
} 

}

Вот простой пример .docx complexTable.docx

После преобразования PDF документ просто игнорирует первую таблицу и содержит только второй Вот результат .pdf file table.pdf
Кто-нибудь знает обходное решение?

P.S. Извините за мой английский. Надеюсь, моя проблема ясна из моего поста. и I`m new на Stackoverflow, поэтому can not post много ссылок обычным способом

ответ

0

Его ошибка.

Исследование затруднительного на https://github.com/plutext/docx4j/commit/be730349442923fa2d60e47630417a92405af719

Работающий альтернативой является использование коммерческого PDF Converter Plutext в.

+0

Спасибо, Джейсон. Я рад услышать от вас. Надеюсь, мой вопрос поможет вам сделать doc4j лучше. – Ivan

Смежные вопросы