700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Aspose word pdf 相互转换

Aspose word pdf 相互转换

时间:2023-09-06 20:56:39

相关推荐

Aspose word pdf 相互转换

Aspose word pdf 相互转换

工具类

文件的详细路径:

pdfToDoc(String pdfPath, String docPath)

输入流:

pdfToDoc(InputStream pdfPathInputStream, String docPath)

// An highlighted blockpackage 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: /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 blockpackage 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: /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 blockpackage 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: /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>

百度云:

链接:/s/1uskoVYZvxHnc6COWW_eAJg

提取码:qmz7

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。