在线预览word文档
在线预览word文档
- 在线预览word文档
- Java 使用wps将word文件转换pdf文件
- 转成PDF
- 在线预览word(转成pdf)前端展示
欢迎来提更好的意见
在线预览word文档
昨天下午组长告诉我,你去研究一下在线预览word文档,带着一脸懵去上网查资料,csdn,开源,知乎等。最常见的四种文件预览方法:
- kkfileview 文件在线预览 ,是在spring boot上搭建的,因为我项目没用到微服务所以放弃了解;
- officetohtml纯前端的方式,我不是专业的前端,虽然工作中我也是一个人负责前后端(前端:layui框架+js)等页面展示+后端,但是我尽量能后端编写就不会把值复杂化传给前端。所以我放弃了解 ;
- JODConverter ,这个里面提到一个可以用openoffice,实现原理就是:通过第三方工具openoffice,将word、excel、ppt、txt等文件转换为pdf文件流;这样就可以在浏览器上实现预览了。我也去了解并下载软件,但是下载实在太忙,我又放弃了,想有没有更简单的方法:“不下载软件,不去部署环境,最多就是加个包”,所以又放弃了解;
- Aspose ,这个忘记为啥没再去了解了哈哈;
- 最后在各种java群里问,有没有更简单的方式,结果的确有个超级简单的方法,Java 使用wps将word文件转换pdf文件 ;
Java 使用wps将word文件转换pdf文件
贴上代码:
/**** 判断需要转化文件的类型(Excel、Word、ppt)** @param inputFile*/public String convertToPDF(String inputFile) {//判断原文件是否存在File file = new File(inputFile);if (file.exists()) {String kind = getFileSufix(inputFile);if (kind.equals("pdf")) {return inputFile;//原文件就是PDF文件}String pdfFile = inputFile.substring(0, inputFile.lastIndexOf(".")) + ".pdf";if (kind.equals("doc")||kind.equals("docx")||kind.equals("txt")) {wordToPDF(inputFile,pdfFile);}else if (kind.equals("ppt")||kind.equals("pptx")||kind.equals("pptm")||kind.equals("ppsx")) {pptToPDF(inputFile,pdfFile);}else if(kind.equals("xls")||kind.equals("xlsx")){ExToPDF(inputFile,pdfFile);}else{return inputFile;//原文件是其它格式文件}//返回创建的pdfreturn pdfFile;} else {//System.out.println("原文件不存在!");return inputFile;}}
依赖包:
<dependency><groupId>net.sf.jacob-project</groupId><artifactId>jacob</artifactId><version>1.14.3</version></dependency><dependency><groupId>com.jacob</groupId><artifactId>1.0.0</artifactId><scope>system</scope><systemPath>K:\jacob-1.20\jacob.jar</systemPath></dependency>
记得还有下载:jacob-1.20.zip 解压以后,会看到五个文件,但是都不用管它,只需要里面的jar,我是window的所以用…x64.dll。分别放到1: --dll文件 ,放到自己的tomacat/bin下面 2:–dll文件 放到C:/windows/system32下面 3 --dll ,jar 这个我因为我项目下面没有WEB-INF/lib,所以我并没有添加。
启动项目,报错了,,,,,,,,
java.lang.NoClassDefFoundError: Could not initialize class com.jacob.com.ComThread
然后看到一篇博主的就改了一下就好了,目前还没更新到线上,本地测试是可以的。
转成PDF
1、贴代码:
//设置响应内容类型为PDF类型response.setContentType("application/pdf;charset=UTF-8");ServletOutputStream sos = response.getOutputStream();//不在网页中打开,而是直接下载该文件,下载后的文件名为“Example.pdf”File pdf = null;FileInputStream fis = null;byte[] buffer = new byte[1024*1024];if(filePath!=null){ //pdf文件路径pdf = new File(filePath);response.setContentLength((int) pdf.length());fis = new FileInputStream(pdf);int readBytes = -1;while((readBytes = fis.read(buffer, 0, 1024*1024)) != -1){sos.write(buffer, 0, 1024*1024);}sos.close();fis.close();}
在线预览word(转成pdf)前端展示
前端js请求并把id带到后台,用
String id = (String) request.getSession().getAttribute("页面名称xxxxx");页面用iframe打开<iframe id="test1" style="width: 100%;height: 80vh;"></iframe>js请求://pdf预览
$(".withExport ").on("click",function(){
var fileId= $(this).attr("fileId");
$.get( contextPath + 'xxx/pdfs?'+'id='+fileId, {}, function(str){var addIndex = layer.open({type: 1,title:'pdf',content: str,area: ["70%","750px"]});$.get( contextPath + '/selectPDFs?'+ 'id='+fileId, {}, function(str){$("#test1").attr("src",contextPath + "/pdf/web/viewer.html?file=/ams/displayPDFs?");});
});
});
以上就是在线预览word和pdf的思路,如果需要代码,可以留言,我整理文档发给你。溜啦溜啦,还要部署到线上测试。
在线预览word文档相关推荐
- Springboot 超简单实现在线预览,Word文档 doc、xlsx、pdf、txt等
前言 PDF.TXT 只要资源可访问,根本就不需要进行任何处理,直接访问查看就完事了. 也是因为这个PDF可以直接查看(现在浏览器基本支持了),那么我们实现Word文档在线预览,其实也是 把WORD文 ...
- 调用office web 365接口实现在线预览word文档,PDF,PPT
我项目中是直接用iframe显示: <iframe id="iframe_src" scrolling="auto" width="100% ...
- web项目 在线预览doc文档
在线预览word文档 前端代码 后台controller代码(使用Aspose.Words) 前端代码 在前端发送ajax请求,并展示后端生成的html临时文件 showFile:function(m ...
- Android实现在线预览office文档(Word,Pdf,excel,PPT.txt等格式)
1.概述 我们都知道,Android原生并没有提供浏览office文档格式的相关Api,在安卓端想要实现在线预览office文档的功能显然很是复杂,我们手机安装QQ浏览器时,在手机打开office文档 ...
- web项目使用OpenOffice实现前端在线预览office文档(超详细)
超详细的OpenOffice实现前端在线预览office文档记录 最近搞一个数字化共享平台,是一个java web项目,使用框架ssm,其中项目有一个需要在线预览PDF.excle.ppt.word文 ...
- 前端预览word文档实现
记录前端预览word文档的需求实现 方案一:XDOC文档预览 可以使用XDOC文档预览云服务来进行word文件的在线预览,直接去网站体验就知道怎么用了. https://view.xdocin.com ...
- 安卓WebView在线预览office文档功能实现
*## 在线预览office文档 我就直奔主题吧!估计是目前最简单的了吧! 我也搜了很多资料不外乎2种 使用谷歌文档服务(google国内使用不了,各种试就是显示不出来,) mWebView.load ...
- 加载js文件,在线预览pdf文档
加载js文件,在线预览pdf文档 效果演示 环境要求 JS文件下载 Jsp页面导入js文件 jquery.media.js源码 效果演示 首先,先展示效果图 环境要求 Tomcat8.5 [注意]:T ...
- 移动端h5页面预览word文档
在web端预览word文档,可以使用iframe来实现.但由于兼容性问题,并不能使用iframe在安卓和ios上预览文件 经测试发现,mammoth插件可以实现该功能 <!DOCTYPE htm ...
最新文章
- java 复制 粘贴_在java中如何实现复制,粘贴,剪切
- Spring+ActiveMQ配置
- 网联能否一统天下,取决于三个问题
- java.jsp.jdbc_Java-jsp使用JDBC访问数据库时显示乱码是怎么回事?
- 《MySQL——join语句优化tips》
- python使用GUI(图形用户界面)
- 是银弹吗?业务基线方法论
- 前端基础git(一)-git入门代码版本控制介绍
- 鸿蒙王者荣耀想要转区吗,王者荣耀:跨系统角色转移功能终于上线,想要成功转区,这九点常识必须要知道!...
- C语言随笔小算法:取出一个任意整数的每一位数值
- iOS:菜单控制器和菜单项:UIMenuController和UIMenuItem
- Tensorflow相关学习笔记(一)GPU处理相关
- 使用 Google Analytics 跟踪 JavaScript 错误
- DAG图中的关键路径算法
- Netron可视化网络结构
- 《东周列国志》第七十八回 会夹谷孔子却齐 堕三都闻人伏法
- 腾讯的“小弟”长大了
- 进行淘宝商品比价的定向爬虫
- python编码及初体验
- 蝴蝶效应,混沌理论与股市