目录
一、base64
二、提示找不到OFFICE组件
三、乱码
四、文件流
4.1、首先引入BASE64.js文件
4.2、
五、预览首次打开慢
六、如何水印文本内容动态传值
一、base64
1.1、3.0以上版本需要base64方法
1.2、base64.js地址
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/js-base64@3.6.0/base64.min.js">
1.3、接入方法
http://127.0.0.1:8012/onlinePreview?url=encodeURIComponent(Base64.encode(url))
1.4、请参考官方文档地址https://kkfileview.keking.cn/zh-cn/docs/usage.html
二、提示找不到OFFICE组件
2.1、首先安装 开源OFFICE openoffice或LibreOffice 建议安装LibreOffice
2.2、是打开配置文件路径是kkFileView-4.0.0\config\application.properties
(1)、指定OFFCIE安装路径 /opt/libreoffice7.1
(2)、如果是手动安装的自行修改自己的路径参考(1)
2.3、运行OFFICE脚本命令 (LibreOffice)
(1)、(/opt/libreoffice7.2/代表脚本路径自行修改)
/opt/libreoffice7.2/program/soffice --headless --accept="socket,host=127.0.0.1,port=2001;urp;" --nofirststartwizard &
(2)、(openoffice4脚本命令)
/opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &
2.4、看运行脚本提示
(1)、出现ID并没提示错误,表示安装正确
(2)、出现ID并提示错误,请百度搜索错误信息修复错误,再次运行命令知道不在提示错误
2.5、Xshell 关闭转发链接:看下图
2.6、MobaXterm:请更换其他链接工具
2.7、运行命令:
ps -ef |grep kkfileview
ps -ef |grep office
kill -9 结束运行程序
2.8、如果是4.09以上版本提示:
(1)、进程已处于运行状态,进程号为
(2)、进入kkFileView-4.0.0/bin/删除kkFileView.pid文件再次运行
三、乱码
3.1、打开bin目录里面的startup.bat加入-Dfile.encoding=UTF-8
3.2、字体问题大部分Linux系统上并没有预装中文字体或字体不全,需要把常用字体拷贝到Linux服务器上,具体操作如下: 下载如下字体包 http://kkfileview.keking.cn/fonts.zip 文件解压完整拷贝到Linux下的 /usr/share/fonts目录。然后依次执行mkfontscale 、mkfontdir 、fc-cache使字体生效。
四、文件流
4.1、首先引入BASE64.js文件
4.2、
var originUrl = 'http://127.0.0.1:8080/filedownload?fileId=1'; //要预览文件的访问 var previewUrl = originUrl + '&fullfilename=/test.txt' //(4.09以上版本)这里反斜杠必须有 window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(Base64.encode(previewUrl)));
五、预览首次打开慢
5.1、可使用预览转码队列,将需要预览的文件url放入队列中,提前进行转码,本地访问接口为:http://127.0.0.1:8012/addTask?url=http://xxx/test.txt (url参数为需要需要的文件访问地址)
六、如何水印文本内容动态传值
6.1、在预览url后面加上参数&watermarkTxt即可
var url = 'http://127.0.0.1:8080/file/test.txt'; //要预览文件的访问地址window.open('http://127.0.0.1:8012/onlinePreview?url=' + encodeURIComponent(url) + '&watermarkTxt=' + encodeURIComponent('动态水印'));
其他请参考https://kkfileview.keking.cn/zh-cn/docs/home.html 官网文档