预览失败:报错
org.jodconverter.core.office.OfficeException: Could not store document: testdoc.pdf
java.lang.NullPointerException: Could not open document: 1691539546735.docx
错误原因
由于kkfileView在linux上默认使用openOffice来实现转换
解决方案
改用LibreOffice来实现
安装LibreOffice
- 下载LibreOffice:https://zh-cn.libreoffice.org/download/libreoffice/
- 解压与安装
tar -zxvf LibreOffice_7.6.6_Linux_x86-64_rpm.tar.gz
cd /LibreOffice_7.6.6_Linux_x86-64_rpm/RPMS/
yum localinstall *.rpm
配置kkfile使用LibreOffice
office.home = ${KK_OFFICE_HOME:opt/libreoffice7.6}
字体乱码
下载如下字体包 http://kkfileview.keking.cn/fonts.zip
解压至 /usr/share/fonts 目录下
依次执行 mkfontscale 、mkfontdir 、fc-cache 使字体生效
为使系统所有用户都能使用该字体,需要给字体访问权限,进入解压后的目录,执行以下命令后重启服务
# 执行命令:
chmod -R 755 *.TTF
chmod -R 755 *.ttf
chmod -R 755 *.ttc
source /etc/profile
参考:
- https://blog.csdn.net/weixin_43148701/article/details/129403372
- https://blog.csdn.net/qq_42137703/article/details/126852034