有没有办法让HTML5 canvas显示/预览word/excel/powerpoint 文档?

发布于 2022-09-03 01:19:48 字数 205 浏览 12 评论 0

目前想实现类似百度文库那样的在线文档预览,但是他们使用的一般都是Flash,而HTML5 canvas可以在大多数情况下代替Flash,那么有没有办法让canvas显示/预览Office文档?
如果不用Flash,目前唯一的方法是,用OpenOffice/LibreOffice或者在线服务(比如七牛里面第三方提供的文档转换服务)转换成PDF,然后用Mozilla的pdf.js来在线预览。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

故事还在继续 2022-09-10 01:19:48

其实不一定要用Flash或者PDF,HTML更好。
目前找到的几种方式:
1.像以前的百度文库那样,先转换成flash,然后放在网页上。
说明:使用软件OpenOffice/LibreOffice,swftools。
优点:在国内,由于Flash安装量很大,而且很多人用IE和Chrome内核的浏览器,所以是可以查看的。
缺点:OpenOffice/LibreOffice转换的结果可能会丢失格式/排版(我没试过所以不知道会不会),而且比较耗服务器资源,如果浏览器没装Flash就没法查看文档了,尤其是移动端。
2.转换成PDF,然后用Mozilla的pdf.js查看。
说明:转换成PDF的方法可以用OpenOffice/LibreOffice,也可以用七牛的第三方服务“文档转换”(由亿方云提供)。
优点:如果是把文件存放在七牛云,用在线的服务会比较有保障,加载速度也快。
缺点:收费,不过费用很低廉,pdf.js可能比较大,加载相对慢点,放到七牛上面会好些,对移动端支持不好。
3.转换成HTML,像现在的百度文库那样。
说明:使用PHPOfficePDFtoHTML将文档转换成HTML直接在浏览器输出,类似现在的百度文库。
优点:浏览器无需安装任何插件,也不用担心兼容性问题,还支持移动端。
缺点:可能会丢失格式,而且用户可以直接拷贝文档内容,如果是扣积分下载的话,可能达不到目的。

综上所述,桌面端用方案2,移动端用方案3比较好。

时光礼记 2022-09-10 01:19:48

这种需求,主要还是靠强大的后端处理了。

抠脚大汉 2022-09-10 01:19:48

我之前找过,可以看看我这个https://segmentfault.com/q/1010000004959795

↙温凉少女 2022-09-10 01:19:48

试试 pageoffice 组件吧. pageoffice 可以直接在线打开 office 办公文档,比如 word excel ppt pdf 等.
http://www.pageoffice.cn:8080/Samples4/ 可以看看具体的效果

冰魂雪魄 2022-09-10 01:19:48

其实pageOffice 显示/预览word/excel/powerpoint 文档的效果还是比较好用的。跟自己用office打开一样

谈情不如逗狗 2022-09-10 01:19:48

可以调用这个office在线预览模式,参考下 http://usdoc.cn
文件地址可以加密以及采用试读

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文