From 17ac23e93792f1403297dfa783c85db0c10abb20 Mon Sep 17 00:00:00 2001
From: linzhijie <19970921lzj>
Date: 星期五, 06 八月 2021 16:15:38 +0800
Subject: [PATCH] PAQ 模板支持
---
src/main/java/com/ots/project/tool/ShellTool.java | 23 -----------
src/main/java/com/ots/common/utils/poi/WordUtil.java | 3 +
src/main/java/com/ots/project/tool/PdfUtil.java | 35 +++++++++++++++++
3 files changed, 37 insertions(+), 24 deletions(-)
diff --git a/src/main/java/com/ots/common/utils/poi/WordUtil.java b/src/main/java/com/ots/common/utils/poi/WordUtil.java
index 029f035..8ca167f 100644
--- a/src/main/java/com/ots/common/utils/poi/WordUtil.java
+++ b/src/main/java/com/ots/common/utils/poi/WordUtil.java
@@ -9,6 +9,7 @@
import com.ots.project.exam.domain.TReportTemplate;
import com.ots.project.exam.dto.JAQTableStyle;
import com.ots.project.exam.dto.WordParam;
+import com.ots.project.tool.PdfUtil;
import com.ots.project.tool.ShellTool;
import com.ots.project.tool.exam.ExamUtil;
import com.ots.project.tool.exam.ImageUtil;
@@ -771,7 +772,7 @@
if(!ReportTypeEnum.PAQ.getCode().equals(reportType)){
ShellTool.execLibreofficeCommand("pdf", EssConfig.getProfile() + "/" + reportName, EssConfig.getProfile() + "/");
}else{
- ShellTool.execPythonCommand(1,EssConfig.getProfile() + "/" + reportName);
+ PdfUtil.convertPDF(EssConfig.getProfile() + "/" + reportName);
}
zipFilePath = getPdfPath(reportName);
diff --git a/src/main/java/com/ots/project/tool/PdfUtil.java b/src/main/java/com/ots/project/tool/PdfUtil.java
new file mode 100644
index 0000000..ff31931
--- /dev/null
+++ b/src/main/java/com/ots/project/tool/PdfUtil.java
@@ -0,0 +1,35 @@
+package com.ots.project.tool;
+
+import com.aspose.words.Document;
+import com.aspose.words.SaveFormat;
+import lombok.extern.slf4j.Slf4j;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+
+@Slf4j
+public class PdfUtil {
+
+ public static void convertPDF(String input){
+ try {
+ //鎵嬪姩鏇挎崲杈撳嚭pdf鍚嶇О
+ String output = input.replaceAll(".docx", ".pdf");
+ long old = System.currentTimeMillis();
+ FileInputStream fileInput = new FileInputStream(input);
+ Document pres = new Document(fileInput);
+ FileOutputStream out = new FileOutputStream(new File(output));
+ pres.save(out, SaveFormat.PDF);
+ out.close();
+ long now = System.currentTimeMillis();
+ log.info("doc杞琾df鑰楁椂锛歿}绉�", ((now - old) / 1000.0));
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public static void main(String[] args) {
+ convertPDF("D:\\娴嬭瘎绯荤粺\\home\\鏋梍PAQ_IA_CN.docx");
+ }
+
+}
diff --git a/src/main/java/com/ots/project/tool/ShellTool.java b/src/main/java/com/ots/project/tool/ShellTool.java
index 5f65299..1e2b8b1 100644
--- a/src/main/java/com/ots/project/tool/ShellTool.java
+++ b/src/main/java/com/ots/project/tool/ShellTool.java
@@ -29,28 +29,6 @@
return exec(builder.toString());
}
- public static String execPythonCommand(Integer type,String sourcePath) {
- String os = System.getProperty("os.name");
- StringBuilder builder = new StringBuilder();
- if(type == 0){
- //鏈嶅姟鍣�
- builder.append("python /bin/doc2pdf.py ");
- }else{
- //鏈湴娴嬭瘯
- builder.append("python D:\\Project\\yaohuo\\doc2pdf.py ");
- }
- builder.append(sourcePath).append(" ");
-
- try {
- File file = new File(sourcePath.replaceAll(".docx", ".pdf"));
- if (file.exists()) {
- file.delete();
- }
- } catch (Exception e) {
- }
- return exec(builder.toString());
- }
-
private static String exec(String command) {
String returnString = "";
Runtime runTime = Runtime.getRuntime();
@@ -75,6 +53,5 @@
}
public static void main(String[] args) {
//System.out.println(exec("soffice.exe --headless --invisible --convert-to D:/ots/uploadPath/upload/2021/02/28/01e01cf7e372ba8b1c5d24b8d69a46f8.docx 01e01cf7e372ba8b1c5d24b8d69a46f8.pdf "));
- System.out.println(execPythonCommand(1,"D:\\娴嬭瘎绯荤粺\\home\\鏋梍PAQ_IA_CN.docx"));
}
}
--
Gitblit v1.9.1