Java語言實現word轉PDF(10分鐘解決)

前言:

常常作OA辦公項目的同窗必定和我同樣被各類線上的office操做整瘋了。基本上涉及到Java操做office的時候就會想到POI和openoffice.這兩種方案都是須要找各類jar包,而後用裏面繁雜的api。關鍵是作出來的文件格式有各類各樣的問題,有時生成的文件打不開,有時文檔格式混亂。搞了好幾天的需求終於實現了,最後看到效果那一刻。。。唉呀媽呀 腦瓜疼 腦瓜疼javascript

此時就須要另闢新徑了,得找個更專業的解決線上office操做的插件——pageoffice。雖然pageoffice官網提供了大量功能,可是經過這篇博客可讓同窗們省去學習時間,讓你10分鐘實現word轉PDF的功能。而且最重要的是本篇博客後面會提供破解註冊碼html

先看效果

點擊另存爲PDF按鈕就會開始轉PDF(若是不想點擊按鈕也能夠放在其餘事件中自動轉PDF)

而後查看轉換的PDF文件,格式是很是標準的,和本地word轉出來的如出一轍

部署步驟(只需5步)

1.官網http://www.zhuozhengsoft.com/dowm/下載集成文件,引入jar包,配置web.xml

去剛纔下載的集成文件中找到lib,將裏面的內容放在項目web-inf的lib中引入jar包,而後將web.xml的pageoffice配置引入到本身項目的wb.xml中java

2.在父頁面aaa.jsp(須要打開文檔的頁面)放一個a標籤或者button

寫button以前先引入pageoffice須要的js文件jquery

 
  1. <script type="text/javascript" src="/jquery.min.js"></script>web

  2. <script type="text/javascript" src="/pageoffice.js" id="po_js_main"></script>api

而後添加a標籤瀏覽器

<a href="javascript:POBrowser.openWindowModeless('word.jsp', 'width=1050px;height=900px;','id=er');">打開word文檔</a>

3.在父頁面同級目錄下建立一個word.jsp文件

 
  1. <%@ page language="java"服務器

  2. import="java.util.*, com.zhuozhengsoft.pageoffice.*"app

  3. pageEncoding="utf-8"%>less

  4. <%

  5. PageOfficeCtrl pocCtrl=new PageOfficeCtrl(request);

  6. //設置服務器頁面

  7. pocCtrl.setServerPage(request.getContextPath()+"/poserver.zz");

  8. //添加自定義按鈕

  9. pocCtrl.addCustomToolButton("保存", "Save()", 1);

  10. pocCtrl.addCustomToolButton("另存爲PDF文件", "SaveAsPDF()", 1);

  11. //設置保存頁面

  12. pocCtrl.setSaveFilePage("SaveFile.jsp");

  13. String fileName = "template.docx";

  14. String pdfName = fileName.substring(0, fileName.length() - 4) + ".pdf";

  15. //打開文件

  16. pocCtrl.webOpen(fileName, OpenModeType.docNormalEdit, "張佚名");

  17. %>

  18.  
  19. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

  20. <html>

  21. <head>

  22. <title>Word文件轉換成PDF格式</title>

  23. <script type="text/javascript">

  24. //保存

  25. function Save() {

  26. document.getElementById("PageOfficeCtrl1").WebSave();

  27. }

  28.  
  29. //另存爲PDF文件

  30. function SaveAsPDF() {

  31. document.getElementById("PageOfficeCtrl1").WebSaveAsPDF();

  32. document.getElementById("PageOfficeCtrl1").Alert("PDF文件已經保存到template.doc同級目錄下。");

  33. <%--document.getElementById("div1").innerHTML = "<a href='OpenPDF.jsp?fileName=<%=pdfName %>'> 查看另存的 pdf 文件<a><br><br>";--%>

  34. document.getElementById("div1").innerHTML = "<a href='template.pdf'> 查看另存的 pdf 文件<a><br><br>";

  35. }

  36. </script>

  37.  
  38. </head>

  39. <body>

  40. <form id="form1">

  41. <div id="div1"></div>

  42. <div style="width: auto; height: 700px;">

  43. <%=pocCtrl.getHtmlCode("PageOfficeCtrl1")%>

  44. </div>

  45. </form>

  46. </body>

  47. </html>

  48.  

4.在父頁面同級目錄下建立一個SaveFile.jsp文件 

 
  1. <%@ page language="java"

  2. import="java.util.*,com.zhuozhengsoft.pageoffice.*"

  3. pageEncoding="utf-8"%>

  4. <%

  5. FileSaver fs = new FileSaver(request, response);

  6. //保存文件到本地磁盤

  7. fs.saveToFile(request.getSession().getServletContext().getRealPath(fs.getFileName()));

  8. fs.close();

  9.  
  10. %>

  11.  
  12.  

5.新建一個名爲template.docx的word文件(若是新建的是doc文件就將第三步的String fileName = "template.docx"代碼改成String fileName = "template.doc";)放在父頁面同級目錄下.而後啓動項目直接訪問aaa.jsp點擊連接.此時會提示安裝插件,點擊安裝成功後提示註冊,填寫相關信息,填寫註冊碼CA1XB-MF7Y-12ST-PSBP2就能夠打開文檔.

  注意:這些只是演示級代碼,你們能夠去pageoffice官網下載示例代碼直接將samples4文件夾扔到Tomcat的webapps下,啓動Tomcat,瀏覽器訪問http://localhost:8080/Samples/index.html,查看示例中的下面一個連接,直接看samples4文件夾下SaveAsPDF文件夾裏面的代碼.

 

--------------------- 本文來自 it_zhang81 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/IT_zhang81/article/details/82773423?utm_source=copy

相關文章
相關標籤/搜索