vue 预览 word 文档有什么好方案?

2020-07-28 00:43:45 +08:00
 watanuki
网上给的方案都是利用微软的在线预览功能: http://view.officeapps.live.com/op/view.aspx?src=<文档位置>

但是这要求文件必须有公网链接,若文件在局域网,且不能上传到公网时,又该怎么解决 word 文档预览的问题?
10700 次点击
所在节点    Vue.js
22 条回复
npe
2020-07-28 00:53:08 +08:00
word 源代码其实还是 html 吧,试着读 raw 试试? 或者看看开源解决方案?
ETiV
2020-07-28 01:05:20 +08:00
src=data uri ?支持吗?
buliugu
2020-07-28 01:27:27 +08:00
私有化部署的话,可以看看 onlyoffice 或者基于 onlyoffice 的开源项目
hutng
2020-07-28 01:29:52 +08:00
跑题答一下,先转 PDF,再预览
geelaw
2020-07-28 01:41:30 +08:00
@npe #1 新版的 Word 格式是压缩过的 XML,不是 HTML 。

@ETiV #2 即使这样可以,也相当于把数据传入公网了,此外通常服务器处理 URL 有最大长度限制(比较自然的想法是 32768 个 Unicode 字符这种级别),任何非平凡 Word 文档用 data URI 编码都会超过该长度。

一个简单的方案是(在内网)部署 Office Online Server,见 https://docs.microsoft.com/en-us/officeonlineserver/deploy-office-online-server

另外这个问题和 Vue 不 Vue 关系不大。
312ybj
2020-07-28 08:00:42 +08:00
vue 只是前段,word 文档预览跟 vue 没有太大关系。我正好做过这个。下面是我调研的结果。
1. 后台将 word 转换成 pdf,前台预览 pdf
优点:前台只要预览 pdf
缺点:后台转换需要时间,且会有格式丢失
2. 微软在线预览借口
优点:调用别人的 api 就行
缺点:需要将文件放到公网,以便 url 能访问
3. office web app 服务
目前我是用这个,我们的还是内网环境
优点:无损预览,ppt 都能播放
缺点:部署麻烦,需要两台 windows 服务器,一台域控,一台负责转换
4. wps 服务
这个是最近推出来的
优点:我用过官方 demo,感觉还不错
缺点:付费,量计费:2 元 /个,包月最低 2k 起
renmu123
2020-07-28 08:01:21 +08:00
可以找找有没有 wps 版的,算曲线救国,word 的配置和格式实在太多了,很难有工具可以完整预览
crclz
2020-07-28 08:19:37 +08:00
转 PDF 。PDF 这种宇宙广泛支持的格式多好啊
BarZu
2020-07-28 08:41:01 +08:00
把需求砍了,跟老板说你做不到,只能下载,我是这么干的,老板拿我没办法
killmojo
2020-07-28 08:47:21 +08:00
不需要前端修改的话服务端转 PDF 就行。
用 VSTO 或者 GCWord 都行。
还需要局域网前端编辑预览,貌似只能花重金私有化部署了
kkeybbs
2020-07-28 08:47:45 +08:00
纯 vue 估计挺难,不限定可以参考
https://github.com/kekingcn/kkFileView
搭建专门预览服务
dk7952638
2020-07-28 08:52:30 +08:00
linbingcheng
2020-07-28 09:08:29 +08:00
OWA 只能预览 Office 文件
商用看下永中 、WPS 吧,还有楼上开源的 KKFileView
jydeng
2020-07-28 09:24:12 +08:00
实现过类似的文档分享平台,方案是后端转 PDF,前端 pdf.js 。
ryanlid
2020-07-28 09:26:10 +08:00
百度和 wps 有付费服务
ctrlands
2020-07-28 09:29:08 +08:00
我们以前用的是后端转 pdf,前端 pdf 预览
lbw
2020-07-28 09:55:34 +08:00
mammoth.js
supuwoerc
2020-07-28 10:03:23 +08:00
那就在局域网自己建一个 office web365 去年干了几个项目都是这样做的
fyutou
2020-07-28 10:10:03 +08:00
pageoffice....
LokiSharp
2020-07-28 11:00:10 +08:00
你要的可能是这个? https://ej2.syncfusion.com/vue/demos/#/material/document-editor/default.html
这个 Syncfusion 对 100 万美元以下的公司免费

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/693598

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX