Java使用documents4j将word和excel转pdf
·
- pom.xml添加documents4j依赖
<!-- documents4j -->
<dependency>
<groupId>com.documents4j</groupId>
<artifactId>documents4j-local</artifactId>
<version>1.0.3</version>
</dependency>
<!-- documents4j 转 word -->
<dependency>
<groupId>com.documents4j</groupId>
<artifactId>documents4j-transformer-msoffice-word</artifactId>
<version>1.0.3</version>
</dependency>
<!-- documents4j 转 pdf -->
<dependency>
<groupId>com.documents4j</groupId>
<artifactId>documents4j-transformer-msoffice-excel</artifactId>
<version>1.0.3</version>
</dependency>
- 使用
/**
* word/excel转pdf
* @param inputWordPath 传入转换之前的路径 比如:"D:\\printFile\\test.pdf"
* @param outPdfPath 传入转换之后的路径 比如:"D:\\printFile\\test.pdf"
*/
private void wordOrExcelTransition(String inputWordPath, String outPdfPath){
File inputWord = new File(inputWordPath);
File outputFile = new File(outPdfPath);
try {
InputStream docxInputStream = new FileInputStream(inputWord);
OutputStream outputStream = new FileOutputStream(outputFile);
IConverter converter = LocalConverter.builder().build();
String fileTyle = inputWordPath.substring(inputWordPath.lastIndexOf("."), inputWordPath.length());//获取文件类型
if(".docx".equals(fileTyle)){
converter.convert(docxInputStream).as(DocumentType.DOCX).to(outputStream).as(DocumentType.PDF).execute();
}else if(".doc".equals(fileTyle)){
converter.convert(docxInputStream).as(DocumentType.DOC).to(outputStream).as(DocumentType.PDF).execute();
}else if(".xls".equals(fileTyle)){
converter.convert(docxInputStream).as(DocumentType.XLS).to(outputStream).as(DocumentType.PDF).execute();
}else if(".xlsx".equals(fileTyle)){
converter.convert(docxInputStream).as(DocumentType.XLSX).to(outputStream).as(DocumentType.PDF).execute();
}
outputStream.close();
System.out.println("success");
} catch (Exception e) {
e.printStackTrace();
}
}
更多推荐


所有评论(0)