Excel / Word в PDF с Apache POI - PullRequest
       33

Excel / Word в PDF с Apache POI

0 голосов
/ 25 сентября 2018

Я тестирую Apache POI и у меня есть вопросы.
Я работаю с maven и java.

  1. Возможно ли преобразовать файл Excel в PDF, не читая его (что-то похожее на PdfConverter.getInstance().convert)
  2. Если нет функции для выполнения, как в шаге 1, как я могу сохранить стили, форматы и другие объекты Excel?
  3. Почему этот код PdfConverter.getInstance().convert(doc,outFile,options); имеет эту ошибку java.lang.ClassNotFoundException: org.apache.poi.POIXMLDocumentPart (см. Код ниже)?
  4. Есть ли какая-нибудь другая БЕСПЛАТНАЯ библиотека, которую я могу использовать?

Я приложил pom.xml и код для преобразования слова:

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.0.0</version>
</dependency>

<!-- org.apache.poi/poi-ooxml -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.0.0</version>
</dependency>   

<!-- org.apache.poi.xwpf.converter.pdf -->
<dependency>
    <groupId>fr.opensagres.xdocreport</groupId>
    <artifactId>org.apache.poi.xwpf.converter.pdf</artifactId>
    <version>1.0.6</version>
</dependency>    

<!-- com.itextpdf/itextpdf -->
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>5.5.13</version>
</dependency>

Код для преобразования слова:

File file1 = new File("myWord.docx");
FileInputStream fileInpStr1 = new FileInputStream(file1.getAbsolutePath());

XWPFDocument doc = new XWPFDocument(fileInpStr1);
OutputStream outFile = new FileOutputStream("myPDFout.pdf"));

PdfOptions options = null;
PdfConverter.getInstance().convert(doc,outFile,options); <-- here the error jumps

outFile.close();
doc.close();
...