1、将office首先要安装OpenOfice,傻瓜式安装就好了,之后可以使用下列代码将word转为pdf。这个需要导入jodconverter-2.2.2里的 ja r包
  1. import java.io.File;
  2. import java.io.FileNotFoundException;
  3. import java.io.IOException;
  4. import java.net.ConnectException;
  5. import org.junit.Test;
  6. import com.artofsolving.jodconverter.DocumentConverter;
  7. import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;
  8. import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;
  9. import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter;
  10. publicclassOfficeChangeToPDF{
  11. /**
  12. * 将Office文档转换为PDF. 运行该函数需要用到OpenOffice, OpenOffice下载地址为
  13. * http://www.openoffice.org/
  14. *
  15. * <pre>
  16. *
  17. * 方法示例:
  18. * String sourcePath = "F:\\office\\source.doc";
  19. * String destFile = "F:\\pdf\\dest.pdf";
  20. * Converter.office2PDF(sourcePath, destFile);
  21. * </pre>
  22. *
  23. * @param sourceFile
  24. * 源文件, 绝对路径. 可以是Office2003-2007全部格式的文档, Office2010的没测试. 包括.doc,
  25. * .docx, .xls, .xlsx, .ppt, .pptx等. 示例: F:\\office\\source.doc
  26. * @param destFile
  27. * 目标文件. 绝对路径. 示例: F:\\pdf\\dest.pdf
  28. * @return 操作成功与否的提示信息. 如果返回 -1, 表示找不到源文件, 或url.properties配置错误; 如果返回 0,
  29. * 则表示操作成功; 返回1, 则表示转换失败
  30. */
  31. publicint office2PDF(String sourceFile,String destFile){
  32. try{
  33. File inputFile =newFile(sourceFile);
  34. if(!inputFile.exists()){
  35. return-1;// 找不到源文件, 则返回-1
  36. }
  37. // 如果目标路径不存在, 则新建该路径
  38. File outputFile =newFile(destFile);
  39. if(!outputFile.getParentFile().exists()){
  40. outputFile.getParentFile().mkdirs();
  41. }
  42. StringOpenOffice_HOME="C:\\Program Files (x86)\\OpenOffice 4";// 这里是OpenOffice的安装目录,
  43. // 在我的项目中,为了便于拓展接口,没有直接写成这个样子,但是这样是绝对没问题的
  44. // 如果从文件中读取的URL地址最后一个字符不是 '\',则添加'\'
  45. if(OpenOffice_HOME.charAt(OpenOffice_HOME.length()-1)!='\\'){
  46. OpenOffice_HOME+="\\";
  47. }
  48. // 启动OpenOffice的服务,也可以一直开启,那就不需要运行一次开启一次,提高效率
  49. String command =OpenOffice_HOME
  50. +"program\\soffice.exe -headless -accept=\"socket,host=127.0.0.1,port=8100;urp;\"";
  51. Process pro =Runtime.getRuntime().exec(command);
  52. // connect to an OpenOffice.org instance running on port 8100
  53. OpenOfficeConnection connection =newSocketOpenOfficeConnection("127.0.0.1",8100);
  54. connection.connect();
  55. // convert
  56. DocumentConverter converter =newOpenOfficeDocumentConverter(connection);
  57. converter.convert(inputFile, outputFile);
  58. // close the connection
  59. connection.disconnect();
  60. // 关闭OpenOffice服务的进程
  61. pro.destroy();
  62. return0;
  63. }catch(FileNotFoundException e){
  64. e.printStackTrace();
  65. return-1;
  66. }catch(ConnectException e){
  67. e.printStackTrace();
  68. }catch(IOException e){
  69. e.printStackTrace();
  70. }
  71. return1;
  72. }
  73. @Test
  74. publicvoid toPDF(){
  75. int office2pdf = office2PDF("C:\\Users\\HP\\Desktop\\xx.doc","C:\\Users\\HP\\Desktop\\xx.PDF");
  76. System.out.println(office2pdf);
  77. }
  78. }
 
 

2、要实现在web端预览pdf需要pdfobject插件,然后使用如下代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>网页嵌入pdf浏览器</title>
  5. <scripttype="text/javascript"src="./js/pdfobject.min.js"></script>
  6. <styletype="text/css">
  7. .pdfobject-container { height:600px;}
  8. .pdfobject { border:1px solid #666; }
  9. </style>
  10. </head>
  11. <body>
  12. <divid="example1"></div>
  13. <scripttype="text/javascript">
  14. PDFObject.embed("./pdf/ELM-Chinese-Brief.pdf","#example1");
  15. </script>
  16. </body>
  17. </html>
 

附件列表

OpenOfice将offic转为pdf并且在web显示的更多相关文章

  1. 把上传过来的多张图片拼接转为PDF的实现代码

    以下是把上传过来的多张图片拼接转为PDF的实现代码,不在本地存储上传上来的图片,下面是2中做法,推荐第一种,把pdf直接存储到DB中比较安全. 如果需要在服务器上存储客户端上传的文件时,切记存储文件时 ...

  2. 将doc文件批量转为pdf文件

    需要将不少doc文件转为pdf,WPS带有这种功能,但是鼠标点击次数太多以后整个人都变得很烦躁 用了一下午去搜这方面的工具软件,找到若干.有一些免费,有一些试用的,但总归就找到一个真正能用,虽说生成的 ...

  3. [置顶] 读取pdf并且在web页面中显示

    读取pdf并且在web页面中显示 if (System.IO.File.Exists(f)) { Response.ContentType = "applicationpdf"; ...

  4. 使用OpenOffice.org将各类文档转为PDF

    http://blog.zhaojie.me/2010/05/convert-document-to-pdf-via-openoffice.html ————————————————————————— ...

  5. java转pdf(html转为pdf),解决中文乱码,标签不规范等问题

    第一步,下载jar包以及建对应的文件夹.注意pd4ml的jar要选择pro版本.然后建一个pd4fonts.properties 里面对应的字体. SimSun = simsun.ttf 前面为变量名 ...

  6. [办公自动化]如何将PPT转为PDF,免费

    同事需要把PPT格式的文档转为PDF.她没有安装adobe acrobat,安装了微软office 2007. 这个其实可以通过安装微软官方插件来解决.无需额外费用. 所需软件为: 2007 Micr ...

  7. Java 将Word转为PDF、PNG、SVG、RTF、XPS、TXT、XML

    同一文档在不同的编译或阅读环境中,需要使用特定的文档格式来打开,通常需要通过转换文档格式的方式来实现.下面将介绍在Java程序中如何来转换Word文档为其他几种常见文档格式,如PDF.图片png.sv ...

  8. Java 基于Spire.Cloud.Excel 将Excel转为PDF

    Spire.Cloud.Excel Sdk 提供GeneralApi接口和WorkbookApi接口,支持将本地Excel和云端Excel文档转换为ODS, PDF, XPS, PCL, PS等格式. ...

  9. Java 将Excel转为PDF

    本文将介绍在Java程序中如何将Excel工作簿转为PDF文档的,包括: 将整个工作簿转为PDF 将指定工作表转为PDF   使用工具:Free Spire.XLS for Java (免费版) Ja ...

随机推荐

  1. jquery中div悬浮嵌套按钮效果

    <div class="btn_sure_cai" style="margin-left: 0px;" onmouseover="show_hi ...

  2. Log4Net不同日志类型写入到不同文件

    1. 一直在用log4net,从来没有自己整理过.实践出真知,只有自己整理过才能真正掌握. 2. log4net,应该读logfornet,以前一直说log4,log4............ 安装 ...

  3. React Image加载图片过大导致ListView滑动卡顿

    今天莫名的发现ListView加载Item很卡,一顿一顿的... ListView Item 中只加载一张图片,小编从百度爸爸上随便复制的链接,这张图片很大,以致埋下如此大坑... Image的Sty ...

  4. lsdslam代码笔记

    0.1. question 0.2. 算法框架 0.3. 代码解析 0.3.1. 数据结构 0.3.1.1. Frame 0.3.1.2. FrameMemory 0.3.1.3. FramePose ...

  5. CSS使用心得小结

    CSS心得 最近对CSS的使用有一些小心得,在此写下来给大家分享分享 .最后附上选择器的实例代码. ------DanlV CSS是什么 层叠样式表(英文全称:Cascading Style Shee ...

  6. Memcached在windows下的基本使用

    1.Memcached是什么 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动 ...

  7. Linux 下搭建www服务器

    偶然的机会接触了前端开发,尽管最初的意愿是后台. 不过现在看来,前端后台数据库密不可分! 回想起来感觉自己学习的层次也还很好,因为之前有学习c语言.c++的基础,所以在学习html,js的过程中感觉还 ...

  8. css 2D转换 transform-rotate 画插图

    学习了一点2D转换,关于Transfrom-rotate的小用法 rotate()方法,在一个给定度数顺时针旋转的元素.负值是允许的,这样是元素逆时针旋转. 下面看实例 第一个例子是没有使用rotat ...

  9. CJOJ 1087 【NOIP2010】乌龟棋 / Luogu 1541 乌龟棋(动态规划)

    CJOJ 1087 [NOIP2010]乌龟棋 / Luogu 1541 乌龟棋(动态规划) Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个 ...

  10. 【Data Visual】一文搞懂matplotlib数据可视化

    一文搞懂matplotlib数据可视化 作者:白宁超 2017年7月19日09:09:07 摘要:数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息.但是,这并不就意味着数据可视化就一定因为 ...