From d68d798881163134cb5f59fc4a8d924809119a3c Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 17 十月 2023 12:59:56 +0800
Subject: [PATCH] #fropensagresxdocreport

---
 src/main/java/com/zy/crm/manager/utils/WordUtils.java |   31 ++++++++++++++++++++++++++++---
 1 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/crm/manager/utils/WordUtils.java b/src/main/java/com/zy/crm/manager/utils/WordUtils.java
index 74b58ac..31be1b6 100644
--- a/src/main/java/com/zy/crm/manager/utils/WordUtils.java
+++ b/src/main/java/com/zy/crm/manager/utils/WordUtils.java
@@ -1,7 +1,8 @@
 package com.zy.crm.manager.utils;
 
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
+import com.documents4j.api.DocumentType;
+import com.documents4j.api.IConverter;
+import com.documents4j.job.LocalConverter;
 import org.apache.poi.xwpf.usermodel.*;
 import org.apache.xmlbeans.XmlCursor;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge;
@@ -13,7 +14,6 @@
 import java.io.*;
 import java.text.DecimalFormat;
 import java.text.NumberFormat;
-import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -50,6 +50,31 @@
                 .body(resource);
     }
 
+    /*
+    * word杞琍DF
+    * */
+    public static void documents4jWordToPdf(String sourcePath, String targetPath) {
+        File inputWord = new File(sourcePath);
+        File outputFile = new File(targetPath);
+        try {
+            InputStream docxInputStream = new FileInputStream(inputWord);
+            OutputStream outputStream = new FileOutputStream(outputFile);
+            IConverter converter = LocalConverter.builder().build();
+            boolean execute = converter.convert(docxInputStream)
+                    .as(DocumentType.DOCX)
+                    .to(outputStream)
+                    .as(DocumentType.PDF).schedule().get();
+            outputStream.close();
+            docxInputStream.close();
+
+            System.out.println("杞崲瀹屾瘯 targetPath = "+outputFile.getAbsolutePath());
+            converter.shutDown();
+            return;
+        } catch (Exception e) {
+            System.out.println("[documents4J] word杞琾df澶辫触:"+e.toString());
+        }
+    }
+
     /**
      * 澶勭悊娈佃惤涓枃鏈紝鏇挎崲鏂囨湰涓畾涔夌殑鍙橀噺锛�
      * @param param 闇�瑕佹浛鎹㈢殑鍙橀噺鍙婂彉閲忓��

--
Gitblit v1.9.1