网站设计招标评标标准及办法,wordpress 加载顺序,网络科技公司图片,网络营销方式类型有哪些1.背景#xff1a;
通过spire.doc.free将word转换成PDF时存在缺陷#xff1a;只能获取前3页。获取全文另外需支付费用。 2.解决办法
使用documents4j#xff0c;documents4j会保留原word文件中更多的样式#xff0c;如修订模式下的差异化字体颜色、文档右侧修订记录等。 … 1.背景
通过spire.doc.free将word转换成PDF时存在缺陷只能获取前3页。获取全文另外需支付费用。 2.解决办法
使用documents4jdocuments4j会保留原word文件中更多的样式如修订模式下的差异化字体颜色、文档右侧修订记录等。
3.具体步骤
1.引入Pom
dependencygroupIdcom.documents4j/groupIdartifactIddocuments4j-local/artifactIdversion1.0.3/version
/dependency
dependencygroupIdcom.documents4j/groupIdartifactIddocuments4j-transformer-msoffice-word/artifactIdversion1.0.3/version
/dependency
2. xml2pdf方法如下xmlpath是xml文件地址pdfPath是生成的pdf地址。
public void xml2pdf(String xmlPath,String pdfPath) throws IOException {// 参考https://blog.csdn.net/ka3p06/article/details/125476270 通过documents4j实现InputStream docxInputStream null;OutputStream outputStream null;try {// 原word地址docxInputStream new FileInputStream(xmlPath);// 转换后pdf生成地址outputStream new FileOutputStream(pdfPath);IConverter converter LocalConverter.builder().build();converter.convert(docxInputStream).as(DocumentType.XML).to(outputStream).as(DocumentType.PDF).execute();// 关闭converter.shutDown();// 关闭outputStream.close();// 关闭docxInputStream.close();} catch (Exception e) {System.out.println([documents4J] word转pdf失败: e.toString());} finally {if (outputStream ! null) {outputStream.close();}if (docxInputStream ! null) {docxInputStream.close();}}}
4. documents4j也可以把word转为pdf
只需改如下
converter.convert(docxInputStream) .as(DocumentType.DOCX).to(outputStream).as(DocumentType.PDF).execute();