84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
要想做一个在线文档预览的功能,查到的方案是先转换成pdf,再使用pdfviewer来预览。
文档转换一般需要很长时间,而且需要大量的cpu。考虑并发性是否需要搞一个队列来处理文档转换?
另外,如何和前端交互呢?直接ajax等待返回得到pdf的地址,这样ok吗?
欢迎选择我的课程,让我们一起见证您的进步~~
这个问题我也研究了一段时间,自己的项目正在做,我说几种办法。1.使用google在线文档预览功能google是有一套在线文档编辑程序的,实际上是可以直接调用谷歌的接口来预览在线文档的,但是有个关键问题,国内有墙,所以这个方案不是很好。2.使用第三方api可以使用百度文库的第三方云服务https://cloud.baidu.com/produ...或者I DOC V 提供的在线预览按钮。https://www.idocv.com/3.php的库自己解析调用正如你说你想转换成pdf然后pdfviewer但是这种需要有个列队来定时处理文档。我的想法是只允许用户上传docx或者pptx这种支持xml格式的文档,主要是为了保证兼容性。php有phpword phpexcel等等相关的库,具体可以去composer的列表搜索下,这些库可以把文档内容直接输出成html,我让用户直接预览html就好了。这样也避免了文档被用户随意下载,虽然html也可以复制粘贴~~~暂时我的项目就想使用这种方案。4.使用js让客户端去解析我的想法还是给客户端传递数据,然后通过js来解析office文档实现预览,在npm的列表当中搜过一些库,但是还没研究,如果实在都不行可能会自己想办法写一个。这种文档解析压力转到客户端是比较好的,毕竟office文档内容实际情况会更复杂一些,以上的3种情况表现力都十分有限,从百度文库的表现你就看出来了。
总结在线预览这种事情对在线教育行业我觉得是挺有用的一个需求,但是实际上wps和msoffice中间还有很多兼容性问题,以及msoffice之前的2003 2007还有好多学校在用,还在教学生如何用,所以这又是很麻烦的一件事情。楼主要是有更好的方案希望能共同交流学习。
试一下,体验可以就行呗。
这个问题我也研究了一段时间,自己的项目正在做,我说几种办法。
1.使用google在线文档预览功能
google是有一套在线文档编辑程序的,实际上是可以直接调用谷歌的接口来预览在线文档的,但是有个关键问题,国内有墙,所以这个方案不是很好。
2.使用第三方api
可以使用百度文库的第三方云服务
https://cloud.baidu.com/produ...
或者I DOC V 提供的在线预览按钮。
https://www.idocv.com/
3.php的库自己解析调用
正如你说你想转换成pdf然后pdfviewer但是这种需要有个列队来定时处理文档。我的想法是只允许用户上传docx或者pptx这种支持xml格式的文档,主要是为了保证兼容性。php有phpword phpexcel等等相关的库,具体可以去composer的列表搜索下,这些库可以把文档内容直接输出成html,我让用户直接预览html就好了。这样也避免了文档被用户随意下载,虽然html也可以复制粘贴~~~暂时我的项目就想使用这种方案。
4.使用js让客户端去解析
我的想法还是给客户端传递数据,然后通过js来解析office文档实现预览,在npm的列表当中搜过一些库,但是还没研究,如果实在都不行可能会自己想办法写一个。这种文档解析压力转到客户端是比较好的,毕竟office文档内容实际情况会更复杂一些,以上的3种情况表现力都十分有限,从百度文库的表现你就看出来了。
总结
在线预览这种事情对在线教育行业我觉得是挺有用的一个需求,但是实际上wps和msoffice中间还有很多兼容性问题,以及msoffice之前的2003 2007还有好多学校在用,还在教学生如何用,所以这又是很麻烦的一件事情。楼主要是有更好的方案希望能共同交流学习。
试一下,体验可以就行呗。