前言 对于Office的文件得在线预览基本有以下要求 尽量支持Centos,否则文件要在不同服务器之间来回传输 要支持在线预览 要支持转换为PDF自行处理 转换效果要好 最好PPT支持动态效果 在这些前提下我们来看看常用得解决方案 2.6M http://wordupload.xhkjedu.com/resource/665a33b7aacc4e81afea856ce4d9e4c3/83d58b6a09744c568604c7d3febadbb5 http://view.xdocin.com/ 特点 基于MSOffice 支持Window 转换效果相对较好 可以本地部署 缺点 PPT无动态预览效果 微软 office web app 如果项目只要求预览 如果服务器为win推荐微软 office web app Centos推荐使用kkfileview 如果项目要能获取到图片 推荐使用JobConverter + OpenOffice ,只需要调用浏览器打开本项目的预览接口,并传入须要预览文件的url,示例如下: var previewUrl = 'http://127.0.0.1:8080/file/test.txt'; //要预览文件的访问地址
针对android系统不支持pdf文档在线预览,可通过引入pdf.js插件实现,其具体实现步骤如下 一、引入插件 方式一:npm install –save pdfjs-dist,安装完成后在vue项目的 node_modules出现如下依赖 方式二:只引入pdf.js的核心文件pdf.js和pdf.work.js,其他无关的文件全部删除 方式三:将插件直接放在static文件夹下 二、前端页面代码 方式一和方式二 let url = ‘/static/pdf/web/compressed.tracemonkey-pldi-09.pdf’ // 跨域请求文件,需要走后台代理,后台需要将文件流返回前端才可在页面显示 ,此种方式的filePath如为本地文件不进行编码也可发送请求,如为跨域文件不进行编码无法发送请求,因此建议统一进行编码。 outputStream); } catch (Exception e) { e.printStackTrace(); } return null; } } 具体采用哪种方式实现pdf文档的在线预览
最近客户有个需求,需要在线预览PPT、Excel、Word,开始打算用第三方组建去读取 office系列,然后生成html,这样的话样式相当于丢了,只剩下数据,而且第三方组件对office版本支持不够完善 最后决定,用户在上传的过程中调用office API里面的saveAs,自动生成了静态html,预览的时候就直接访问的该html页面。 ? word = new Word.Application(); 6 7 Type wordType = word.GetType() ; 8 9 Word.Documents docs = word.Documents; 10 11 // 打开文件 workbook = null ; 6 Microsoft.Office.Interop.Excel.Worksheet worksheet =
插入一个文件到页面中是能够让你将有用的文件,电子表格,幻灯片或者其他可用的文件在你小组中进行分享的好方法。 针对所有的文件类型,你可以选择以链接方式插入一个文件。 缩略图将会对文档的内容进行预览同时可以对大小进行调整。 希望你预览一个 Office 或者 PDF 文件,单击链接或者缩略图来显示完整的预览(不需要 Excel,Word 或者 PowerPoint 安装在你的额电脑中)。 可选的,在预览界面中选择下载按钮来下载文件后进行离线方式预览。 你甚至可以进行 编辑 和 在 Office 和 PDF 文件中评论。 https://www.cwiki.us/display/CONF6ZH/Display+Files+and+Images
具体实现方法请看官方文档下面这种方式可以实现快速预览word但是对文件使用的编辑器可能会有一些限制 XDOC文档预览服务接口简单,只需要传入文档地址 XDOC文档预览云服务:https://view.xdocin.com 预览功能(包括其他各种媒体文件)但是对word等类型的文件无能为力。 2、word、xls、ppt文件在线预览功能 word、ppt、xls文件实现在线预览的方式比较简单可以直接通过调用微软的在线预览功能实现 (预览前提:资源必须是公共可访问的) <iframe src= url="fileurl"></iframe> 3、excel文件 目前excel文件已经有了类似pdf.js那样的解析sheet.js 总结 1、免费纯前端方式实现在线预览word、excel、ppt 最优选择微软在线预览(不可编辑) 2、利用后端将文件转为图片,前端以图片形式预览(可行方案) 3、购买在线预览服务例如百度DOC文档服务、永中、I DOC VIEW等
当你浏览一个页面的时候,单击一个图片,文件缩略图或者链接将会运行预览。 预览视图包括了从远程 Web 页面导入的图片文件和已经附加到页面中的文件(尽管有可能这些文件没有在页面中显示)。 在预览中你可以: 现在图片文件。 上传一个文件的新版本(仅针对附件)。 评论一个文件。 通过选择桌面应用编辑一个文件。 在你浏览器中放大和缩小图片文件。 像幻灯片一样来进行浏览,使用前后箭头按钮。 查看附件到页面中的其他文件,和选择缩略图来预览这些文件。 切换到全屏显示模式。 很多文件类型都可以被预览,包括有 Office 文件, PDFs 和其他多种图片类型。 那些文件可以被预览? 图片文件 Office 文件 其他文件 JPEGPNGTIFFPSDWMFEMFICOICNS DOCDOCXPPTPPTXXLSXLSX PDFMP3MP4 JPEG PNG TIFF PSD WMF 管理这个文件(Manage this file):下载文件,上传一个文件的新版本或者在你的项目组中分享。 添加一个评论(Add a comment):拖动 pin 来对文件进行评论。
当你浏览一个页面的时候,单击一个图片,文件缩略图或者链接将会运行预览。 预览视图包括了从远程 Web 页面导入的图片文件和已经附加到页面中的文件(尽管有可能这些文件没有在页面中显示)。 在预览中你可以: 现在图片文件。 上传一个文件的新版本(仅针对附件)。 评论一个文件。 通过选择桌面应用编辑一个文件。 在你浏览器中放大和缩小图片文件。 像幻灯片一样来进行浏览,使用前后箭头按钮。 查看附件到页面中的其他文件,和选择缩略图来预览这些文件。 切换到全屏显示模式。 很多文件类型都可以被预览,包括有 Office 文件, PDFs 和其他多种图片类型。 那些文件可以被预览? 图片文件 Office 文件 其他文件 JPEG PNG TIFF PSD WMF EMF ICO ICNS DOC 添加一个评论(Add a comment):拖动 pin 来对文件进行评论。 https://www.cwiki.us/display/CONF6ZH/Display+Files+and+Images
地址:https://usdoc.cn Office文件在线预览是目前移动化办公的一种新趋势。Office在线预览指的是Office系列的文件在线查看而不依附域客户端的存在。 usdoc文档在线服务正是为了解决这一问题而做出了优化的访问,充分发挥了前后端结合的优势,提供更好的阅读体验特点 1、不依赖于客户端独立运用,只需要一个url文件地址就可以预览。 2、在服务器端对源文件进行读取操作,彻底解决了浏览器端的跨域读取问题。 3、支持文件地址加密解密处理,保护文档隐私。 客户端使用任何浏览器(包括移动设备上的)、微信都可以预览。 6、支持小程序,QQ、可以嵌套Webkit、webView内核浏览器。 支持Microsoft Office、WPS及Adobe PDF文档在线预览支持PC端、移动端、Mac电脑等文件地址可加密集成很简单,三行代码既可以搞定预览调用方法 https://vw.usdoc.cn
想要实现word或者其他office文件的在线预览,大部分都是用的两种方式,一种是使用openoffice转换之后再通过其他插件预览,还有一种方式就是通过POI读取内容然后预览。 一、使用openoffice方式实现word预览 主要思路是: 1.通过第三方工具openoffice,将word、excel、ppt、txt等文件转换为pdf文件 2.通过swfTools将pdf文件转换成 将flexpaper文件中的js文件夹(包含了flexpaper_flash_debug.js,flexpaper_flash.js,jquery.js,这三个js文件主要是预览swf文件的插件)拷贝至网站根目录 * //p1.setSpacingAfter(6);//--指定应添加在文档中绝对单位这一段的最后一行之后的间距。 * //p1.setSpacingBefore(6);//--指定应添加上面这一段文档中绝对单位中的第一行的间距。
Online团队的一个服务 src=http://mczaiyun.top/ht/3.docx 这个链接是我们要解析的office文档地址 为此我写了一个demo可以供各位网友预览 pdf不能使用此种方式打开 ,毕竟pdf不属于Office文件嘛,需要使用另一种方式打开 大家可以使用pdf.js来操作pdf,在线预览,编辑PDF 注意:无法打开文档? office文档必须是外网可访问的,链接必须是域名,并且是80端口 若您看到错误“很抱歉,由于某种原因我们无法打开该文件”,它意味着无法找到文档或无法显示文档。 文档的文件名称包含无效字符。请尝试编码的文件的名称,当您键入文档的 URL 或重命名文件以仅使用字母和数字。 例如,要编码的 URL,包括与号 (&),您需要键入%26 & 字符。 写在最后,这种方式,有可能将你的Office文件上传到微软服务器,机密文件请谨慎使用.
概述 在做项目的时候会遇到docx、xlsx、pdf等文件的在线预览需求,实现此需求可以有多种解决方式,本文基于vue-office实现纯前端的文件预览。 效果 如下图,分别为docx、xlsx、pdf三种类型的文件在线加载后的效果。你也可以访问官方预览网址查看效果。 实现 1. 添加依赖 在package.json文件中添加如下依赖,并通过命令npm i安装依赖。 ., "dependencies": { "@vue-office/docx": "1.6.0", "@vue-office/excel": "1.6.0", "@vue-office 引入依赖 在vue文件中引入依赖,示例代码如下: //引入相关样式 import '@vue-office/docx/lib/index.css' import '@vue-office/excel/lib
6.安装office web apps 官网下载URL:http://download.microsoft.com/do ... D8639/wacserver.exe ? ? ? http://myscloud.vicp.cc/op/generate.aspx 回到顶部 使用示例 安装完成office web apps以后,你可以采用以下方式实现在线预览。 Internet 服务已成功启动 3.文件太大解决方案(>10M) 服务默认支持的最大文件大小是10M,大于10M会报错。 1.打开如图文件Settings_Service.ini,文件目录为C:\Program Files\Microsoft Office Web Apps\OpenFromUrlHost; --- OpenFromUrlHost Web Apps\OpenFromUrlWeb 下的Settings_Service.ini,进行相同的修改3.重启office web apps服务再重新试一下>10M的文件,发现可以访问了 4.
LibreOffice,哪个更适合你 https://www.linuxdashen.com/openoffice%E4%B8%8Elibreoffice%EF%BC%8C%E5%93%AA%E4%B8%AA%E6% LibreOffice 1、window环境 可以通过下方链接下载,并按提示一步一步安装 https://zh-cn.libreoffice.org/download/download/ 2、centos环境 #安装文件 -- office预览相关--> <dependency> <groupId>org.jodconverter</groupId> <artifactId>jodconverter-core b、点击确定按钮,进行跳转预览 ? /81121581 SpringBoot使用LibreOffice转换PDF https://segmentfault.com/a/1190000015129654 总结 java版的office文档预览
OFFICE 文档在线预览方案很多: 服务器先转换为PDF,再转换为SWF,最后通过网页加载Flash预览,比如flexpaper Office文档直接转换为SWF,通过网页加载Flash预览 微软的Office365 在浏览器中直接打开 转换为html 今天,我们要用的方案是转换为html来预览。 技术方案: office文档转换为pdf:使用libreoffice pdf转html,使用pdf2htmlex 测试环境: 操作系统:ubuntu 12.04 1. office文档转pdf 1.1 总结 本文介绍了一种在服务端将office文档转换为html以方便预览的方法。 实际使用时,可以将生成好的html放到网站路径下,通过拦截器,设置访问权限。
微软的在线预览 利用iframe和微软的Office文档在线预览功能,可以在页面上动态加载doc、excel、ppt格式文档 需要注意的是,文档链接必须是能够公开访问的预览: 举例: https://view.officeapps.live.com 所有数据都存储在以下位置的特别指定的目录中:data volume:/var/log/onlyoffice用于ONLYOFFICE文档日志 /var/www/onlyoffice/Data 证书 /var/lib/onlyoffice 用于文件缓存
上一篇在线文档预览方案-office web apps发布后收到很多网友的留言提问,所以准备再写一篇,一来介绍一下域控服务器安装,总结一下大家问的多的问题,二来宣传预览服务安装与技术支持的事情。 通过修改源码,css样式控制下载按钮隐藏 2.修改缓存文件路径 Set-OfficeWebAppsFarm -RenderingLocalCacheLocation "D:\ProgramData\Microsoft /Building-an-Office-Web-f98650d6/ 2.通过iis提供的IP地址和域限制功能实现 ? 回到顶部 技术支持服务 在写完前篇之后陆陆续续有几个网友找我帮忙在阿里云上部署一套预览服务,自认为安装经验很丰富了。 回到顶部 总结 安装预览服务容易出错,不易排查,所以建议安装到office web apps步骤时,用ghost工具备份一下系统,以免出错从头开始安装。
Office文件常常以附件的形式存在于各种系统中。大家对于线上附件的最常用的需求是预览,偶尔会有简单的编辑。 因此对于这种场景最好的解决方案是office文件能够线上预览编辑。 之所以选择这几个维度进行对比的主要原因是考虑到企业的应用要求: 兼容性:因为企业里面主要的文件是以Office的形式存在的,并且Office文件格式有一定的复杂性,例如合同等文件,不仅仅文件比较大,而且格式内容也比较复杂 API:企业里面使用Office线上预览的大部分场景是处理现有系统中的Office文件,因此更多的需求是使用API的方式来实现现有系统的office文件的预览和编辑 私有化部署:企业由于自身对数据敏感性的要求 ,不能有效处理存量Office文件,只有公有云服务,无公开API 新生代产品,用户比较认可,兼容性还需改进,私有化部署门槛对于中小企业较高 能处理大部分业务系统中的Office文件,仅限预览,无法编辑,
关于office文档在线预览,无外乎这几种方式: 1. 文档转成html或pdf格式,再使用WebView加载显示。 2. 运用WebView打开在线office文档地址。 3. 调用本地office程序打开。 第一种方式,有两种实现方法,一是使用在线的接口(如谷歌、微软……但前者被墙,后者付费使用,当然也可以自己部署个接口处理转换,不想特别折腾也可以用微软的office web apps),二是使用第三方的库 第二种方式,对于ios就很简单了,本来浏览器就支持预览office文档,所以只需调用 webView 加载网络文件路径即可,但可惜的是android的webview不支持,不知道将来会不会支持。 于是常规方案呼之欲出: ios使用webView打开,android调用本地office程序打开。
但是在体验在线文档阅读时,遇到无法预览的情况。由于官方采用微软和谷歌的在线预览服务,由于各种原因无法预览,那又如何解决呢? 我们可以自行搭建相关接口。 用当前站点的域名访问这个文件就行了。)新建文件view.html 内容如下: <! 完整效果如下: https://office.bbskali.cn/welcome/view.html? src=https://blog.bbskali.cn/usr/uploads/2024/12/3865909025.pptx 配置Alist 点击设置-预览-Iframe 预览 添加修改后的参数。 我们还可以在HTML页面中展示office文档。 <embed src='https://xxxxx/web-apps/view.html?
使用Cloudreve的时候一直苦于不能在线预览,微软的预览服务也用不了 看到好多文档预览的服务,价格很贵 正好用的腾讯云COS,无意中看到腾讯云有文档转 HTML 功能 先看价格,价格第一位: 微信截图 .png 二、【基础配置】-【静态网站】,打开静态网站功能 微信截图_20220305212545.png 三、建立一个html文件,上传到储存桶 为什么要整这一步骤呢,因为Cloudreve把文件url 转码了,直接访问不了,整个文件跳转一下,其实换个思路放到其他地方只要能打开html解码后跳转一下也可以了,这样网址更简洁一点 怎么命名文件都可以,代码不需要改动,我的是 https://储存桶名.cos-website.ap document/product/436/54059 //记得把htmlwaterword参数(base64)改掉 </script> </html> 参数什么的自己改就行了 四、设置Cloudreve【Office url={$src} 在你的文件网址后面加上?