日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Aspose word pdf 相互转换

發布時間:2023/12/31 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Aspose word pdf 相互转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Aspose word pdf 相互轉換

工具類

文件的詳細路徑:
pdfToDoc(String pdfPath, String docPath)
輸入流:
pdfToDoc(InputStream pdfPathInputStream, String docPath)

// An highlighted block package com.example.wordpdf.utils;import com.aspose.pdf.License; import com.aspose.pdf.SaveFormat; import com.aspose.pdf.Document;import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream;/*** @ProjectName: word-pdf* @Package: com.example.wordpdf.utils* @ClassName: PdfToWord* @Author: jibl* @Description:* @Date: 2021/11/23 15:50* @Version: 1.0*/ public class PdfToWord {public static File pdfToDoc(String pdfPath, String docPath) {File pdfFile = new File(docPath);try {long old = System.currentTimeMillis();String s = "<License><Data><Products><Product>Aspose.Total for Java</Product><Product>Aspose.Words for Java</Product></Products><EditionType>Enterprise</EditionType><SubscriptionExpiry>20991231</SubscriptionExpiry><LicenseExpiry>20991231</LicenseExpiry><SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber></Data><Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature></License>";ByteArrayInputStream is = new ByteArrayInputStream(s.getBytes());License license = new License();license.setLicense(is);Document document = new Document(pdfPath);FileOutputStream outputStream = new FileOutputStream(pdfFile);document.save(outputStream, SaveFormat.Doc);outputStream.close();is.close();long now = System.currentTimeMillis();System.out.println("PDF轉化WORD共耗時:" + ((now - old) / 1000.0) + "秒"); //轉化用時} catch (Exception e) {System.out.println("轉化失敗");e.printStackTrace();}return pdfFile;}public static File pdfToDoc(InputStream pdfPathInputStream, String docPath) {File pdfFile = new File(docPath);try {long old = System.currentTimeMillis();String s = "<License><Data><Products><Product>Aspose.Total for Java</Product><Product>Aspose.Words for Java</Product></Products><EditionType>Enterprise</EditionType><SubscriptionExpiry>20991231</SubscriptionExpiry><LicenseExpiry>20991231</LicenseExpiry><SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber></Data><Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature></License>";ByteArrayInputStream is = new ByteArrayInputStream(s.getBytes());License license = new License();license.setLicense(is);Document document = new Document(pdfPathInputStream);FileOutputStream outputStream = new FileOutputStream(pdfFile);document.save(outputStream, SaveFormat.Doc);outputStream.close();is.close();long now = System.currentTimeMillis();System.out.println("PDF轉化WORD共耗時:" + ((now - old) / 1000.0) + "秒"); //轉化用時} catch (Exception e) {System.out.println("轉化失敗");e.printStackTrace();}return pdfFile;} } // An highlighted block package com.example.wordpdf.utils;import com.aspose.words.Document; import com.aspose.words.License; import com.aspose.words.SaveFormat;import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream;/*** @ProjectName: word-pdf* @Package: com.example.wordpdf.utils* @ClassName: WordToPdf* @Author: jibl* @Description:* @Date: 2021/11/23 15:50* @Version: 1.0*/ public class WordToPdf {public static File docToPdf(String docPath, String pdfPath) {File pdfFile = new File(pdfPath);try {long old = System.currentTimeMillis();String s = "<License><Data><Products><Product>Aspose.Total for Java</Product><Product>Aspose.Words for Java</Product></Products><EditionType>Enterprise</EditionType><SubscriptionExpiry>20991231</SubscriptionExpiry><LicenseExpiry>20991231</LicenseExpiry><SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber></Data><Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature></License>";ByteArrayInputStream is = new ByteArrayInputStream(s.getBytes());License license = new License();license.setLicense(is);Document document = new Document(docPath);FileOutputStream outputStream = new FileOutputStream(pdfFile);document.save(outputStream, SaveFormat.PDF);long now = System.currentTimeMillis();outputStream.close();is.close();System.out.println("WORD轉化PDF共耗時:" + ((now - old) / 1000.0) + "秒"); //轉化用時} catch (Exception e) {System.out.println("轉化失敗");e.printStackTrace();}return pdfFile;}public static File docToPdf(InputStream docPathInputStream, String pdfPath) {File pdfFile = new File(pdfPath);try {long old = System.currentTimeMillis();String s = "<License><Data><Products><Product>Aspose.Total for Java</Product><Product>Aspose.Words for Java</Product></Products><EditionType>Enterprise</EditionType><SubscriptionExpiry>20991231</SubscriptionExpiry><LicenseExpiry>20991231</LicenseExpiry><SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber></Data><Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature></License>";ByteArrayInputStream is = new ByteArrayInputStream(s.getBytes());License license = new License();license.setLicense(is);Document document = new Document(docPathInputStream);FileOutputStream outputStream = new FileOutputStream(pdfFile);document.save(outputStream, SaveFormat.PDF);long now = System.currentTimeMillis();outputStream.close();is.close();System.out.println("WORD轉化PDF共耗時:" + ((now - old) / 1000.0) + "秒"); //轉化用時} catch (Exception e) {System.out.println("轉化失敗");e.printStackTrace();}return pdfFile;} }

controller

// An highlighted block package com.example.wordpdf.controller;import com.aspose.words.Document; import com.aspose.words.License; import com.aspose.words.SaveFormat; import com.example.wordpdf.utils.PdfToWord; import com.example.wordpdf.utils.WordToPdf; import org.springframework.core.io.ClassPathResource; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest;import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.*; import java.util.Date;/*** @ProjectName: word-pdf* @Package: com.example.wordpdf.controller* @ClassName: FileController* @Author: jibl* @Description:* @Date: 2021/11/23 14:32* @Version: 1.0*/ @Controller @RequestMapping("/file") public class FileController {public static void main(String[] args) {File file = WordToPdf.docToPdf("D:/upload/test.doc", "D:/upload/test666.pdf");}@RequestMapping("/docToPdf")public void importPdfFile(@RequestParam("file") MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws IOException {System.out.println("doc =====> PDF");InputStream inputStream = file.getInputStream();File converFile = WordToPdf.docToPdf(inputStream,"D:/upload/"+new Date().getTime() +".pdf");inputStream.close();System.out.println("====轉化成功!====");response.setContentType("application/x-download");response.setHeader("Content-Disposition", "attachment;filename="+ new String("ggg.pdf".getBytes(),"iso-8859-1"));InputStream is = new FileInputStream(converFile);ServletOutputStream oupstream = response.getOutputStream();byte[] buffer = new byte[512]; // 緩沖區int bytesToRead = -1;// 通過循環將讀入的文件的內容輸出到瀏覽器中while ((bytesToRead = is.read(buffer)) != -1) {oupstream.write(buffer, 0, bytesToRead);}oupstream.close();is.close();}@RequestMapping("/pdfToDoc")public void importDocFile(@RequestParam("file") MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws IOException {System.out.println("doc =====> PDF");InputStream inputStream = file.getInputStream();File converFile = PdfToWord.pdfToDoc(inputStream,"D:/upload/"+new Date().getTime() +".doc");inputStream.close();System.out.println("====轉化成功!====");response.setContentType("application/x-download");response.setHeader("Content-Disposition", "attachment;filename="+ new String("ggg.pdf".getBytes(),"iso-8859-1"));InputStream is = new FileInputStream(converFile);ServletOutputStream oupstream = response.getOutputStream();byte[] buffer = new byte[512]; // 緩沖區int bytesToRead = -1;// 通過循環將讀入的文件的內容輸出到瀏覽器中while ((bytesToRead = is.read(buffer)) != -1) {oupstream.write(buffer, 0, bytesToRead);}oupstream.close();is.close();}}

html

// An highlighted block <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>PDF-WORD轉化</title><script src="/jquery-3.2.1/jquery-3.2.1.js"></script><link type="text/css" rel="stylesheet"href="/bootstrap-3.4.1/css/bootstrap.css"/><script src="/bootstrap-3.4.1/js/bootstrap.js"></script><style>* {margin: 0px;padding: 0px;}html, body {margin: 0px;width: 100%;height: 100%;}</style> </head> <body> <div class="container" style="padding: 20px;height:95%"><div class="panel panel-info"><div class="panel-heading"><h3 class="panel-title">WORD/PDF轉化</h3></div><div class="panel-body"><div class="row" style="margin-top: 10px;"><div class="col-sm-3"></div><div class="col-sm-4"><input type='text' class="form-control" style="width:100%"name='filename' id='filename' autocomplete="off"readonly="readonly" /></div><div class="col-sm-2"><input onclick="upload()" value="選擇文件上傳" type="button"class="btn btn-primary" /></div><input type="file" id="file" accept=".doc,.pdf" name="file"style="display: none" /></div><div class="row" style="margin-top: 10px;margin-right: 20px;text-align: right"><button type="button" class="btn btn-primary" onclick="docToPdf()">Word轉PDF</button><button type="button" class="btn btn-info" onclick="pdfToDoc()">PDF轉Word</button></div></div></div></div> </body> <script>function upload() {$("#file").click();$('#file').change(function(e) {fileName = e.target.files[0];// 上傳文件對象$("#filename").val(fileName.name.substring(fileName.name.lastIndexOf('.')));if (fileName !== undefined) {var file_typename = fileName.name.substring(fileName.name.lastIndexOf('.'));if (file_typename === '.doc' || file_typename === '.pdf') {$("#filename").css("display", "block");$("#filename").val(fileName.name);// UpladFile(fileName);} else {$("#filename").val("")alert("請選擇正確的文件類型!")}} else {$("#filename").val("")alert("請選擇正確的文件!")}})}function docToPdf() {var formData = new FormData();formData.append("file", fileName); // form中放入文件對象var xhr = new XMLHttpRequest();xhr.open('POST', "http://localhost:8066/file/docToPdf", true); // 也可以使用POST方式,根據接口// xhr.setRequestHeader("Content-Type","multipart/form-data");xhr.responseType = "blob"; // 返回類型blob// 定義請求完成的處理函數,請求前也可以增加加載框/禁用下載按鈕邏輯xhr.onload = function () {// 請求完成if (this.status === 200) {// 返回200var blob = this.response;var reader = new FileReader();reader.readAsDataURL(blob); // 轉換為base64,可以直接放入a表情hrefreader.onload = function (e) {// 轉換完成,創建一個a標簽用于下載var a = document.createElement('a');a.download = new Date().getTime()+'.pdf';a.href = e.target.result;a.click();}}};// 發送ajax請求xhr.send(formData)}function pdfToDoc() {var formData = new FormData();formData.append("file", fileName); // form中放入文件對象var xhr = new XMLHttpRequest();xhr.open('POST', "http://localhost:8066/file/pdfToDoc", true); // 也可以使用POST方式,根據接口// xhr.setRequestHeader("Content-Type","multipart/form-data");xhr.responseType = "blob"; // 返回類型blob// 定義請求完成的處理函數,請求前也可以增加加載框/禁用下載按鈕邏輯xhr.onload = function () {// 請求完成if (this.status === 200) {// 返回200var blob = this.response;var reader = new FileReader();reader.readAsDataURL(blob); // 轉換為base64,可以直接放入a表情hrefreader.onload = function (e) {// 轉換完成,創建一個a標簽用于下載var a = document.createElement('a');a.download = new Date().getTime()+'.doc';a.href = e.target.result;a.click();}}};// 發送ajax請求xhr.send(formData)} </script> </html>

pom

<!--word轉pdf--><dependency><groupId>com.aspose</groupId><artifactId>aspose-word</artifactId><version>15.8.0</version></dependency><!--pdf轉word--><dependency><groupId>com.aspose</groupId><artifactId>aspose-pdf</artifactId><version>15.8.0</version></dependency>

百度云:
鏈接:https://pan.baidu.com/s/1uskoVYZvxHnc6COWW_eAJg
提取碼:qmz7

總結

以上是生活随笔為你收集整理的Aspose word pdf 相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。