最近工作项目需要有文档在线查看功能, 刚开始用了自己老项目的pdf.js, 后来移动端也要用, 用户上传的文档还有excel和ppt, 头疼。。。。

在网上找了一圈, 又有兄弟推荐了kkFileView, 便尝试下。 后来证实的确好用!

1. kkFileView 的简介

官网地址 < https: //kkfileview.keking.cn/zh-cn/index.html>

kkFileView 为文件文档在线预览解决方案,该项目使用流行的 spring boot 搭建,易上手和部署,基本支持主流办公文档的在线预览,如 doc,docx,xls,xlsx,ppt,pptx,pdf,txt,zip,rar,图片,视频,音频等等

image.png

这看着简介就很诱人,不需要其他操作,直接相当于一个服务启动就可以了。

2.下载部署

下载地址就直接从官网的跳转到码云上下载最新的,或直接去码云下载https://gitee.com/kekingcn/file-online-preview/releases

下载的过程正好看下官方文档,有环境要求的。

image.png

本地看下都已经有了。

查看 java 环境的方法 开始菜单->运行->cmd->java -version

image.png

就可以看到本地的 java 环境了。如果没有的话就去官网下载 jdk 安装就行。

这个时候 kkFileView 的在安装包也下载好了,解压后的文件

image.png

我们直接找到 bin 下的 startup 脚本文件,右键以管理员身份运行即可(Linux 以 root 用户运行startup.sh)。

运行后出现下面的截图

image.png
然后我们本地浏览器访问本机 8012 端口http://127.0.0.1:8012

image.png
这样本地部署就好了,下面我们项目中测试下吧。

3.项目使用

根据文档项目中使用的方法很简单,代码如下:
var url = 'http://127.0.0.1:8080/file/test.txt'; //要预览文件的访问地址 window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(Base64.encode(url)));
简简单单两行代码搞定。
然后移动端的同事也试下,搞定。
不仅 ppt、excel 支持,就连 zip 等压缩文件都可以,实在太强大了。就是 excel 的速度稍微慢点。

4.过程中的问题

4.1 服务器部署

我们的服务器是 Windows Server 2008 的。本来以为系统自带了 office 等插件就没管,后来运行的时候一直报错。就想当然的分别安装了 wps,修复了 office 套件还是无果,最后下载了 LiberOffice 才可以。

4.2 配置文件

配置文件是 config 下的 application。
这里可以修改端口号、文件上传的大小、水印等。端口号修改后记得服务器对应的端口要开发哦,当时就是忘记开放了,搞了好久。

image.png

image.png

至此文档在线预览就简单搞定了,里面还有很多其他强大的功能等待 XDM 去发掘哦。

Creativity requires the courage to let go of certainties.