SpringBoot 实现 Office 各种格式在线预览

来源:
blog.csdn.net/jxlhljh/article/details/119815808
1.项目特性
  • 支持word Excel ppt,pdf等办公文档
  • 支持txt,JAVA,php,py,md,js,css等所有纯文本
  • 支持zip,rar,jar,tar,gzip等压缩包
  • 支持jpg,jpeg,png,gif等图片预览(翻转,缩放,镜像)
  • 支持mp3,mp4,flv等多媒体文件预览
  • 使用spring boot开发,预览服务搭建部署非常简便
  • rest接口提供服务,跨平台特性(java,php,Python,go,php,....)都支持,应用接入简单方便
  • 支持普通http/https文件下载url、http/https文件下载流url、ftp下载url等多种预览源
  • 提供zip,tar.gz发行包,提供一键启动脚本和丰富的配置项,方便部署使用
  • 提供Docker镜像发行包,方便在容器环境部署
  • 抽象预览服务接口,方便二次开发,非常方便添加其他类型文件预览支持
  • 最最重要Apache协议开源,代码pull下来想干嘛就干嘛
2.部署过程部署方式,可以直接下载二进制步骤,也可以通过docker直接拉取,还可以通过源码编译进行,下面分别说明
前提条件:Jdk需要先安装设置好,kkFileWiew是Java开发的,Jdk必需 。
tar -xvf jdk-8u191-linux-x64.tar.gz -C /usr/localcat >> /etc/profile << EOFexport JAVA_HOME=/usr/local/jdk1.8.0_191/export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarEOFsource /etc/profile[root@localhost testuser]# java -versionjava version "1.8.0_191"Java(TM) SE Runtime Environment (build 1.8.0_191-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)2.1 二进制下载部署文件进行部署1.从码云发行版本下载最新版发行包,这里只以linux为例,一般服务器都是linux的,如果用windows也可,看官网说明进行 。
SpringBoot 实现 Office 各种格式在线预览

文章插图
 
2.解压kkFileView-x.x.x文件(Windows用.zip包,Linux/macOS用.tar.gz包),如:
tar xvf kkFileView-4.0.0.tar.gz -C /opt/3.运行startup脚本(Windows下以管理员身份运行startup.bat,Linux以root用户运行startup.sh)
cd /opt/kkFileView-4.0.0/bin
注:linux下kkFileWiew需要Libreoffice的支持,因此startup.sh会判断系统是否已安装LibreOffice,如果没有安装,将自动下载安装,因此需要有互联网环境的支持,如果是内网的机器,可以考虑在一台有互联网环境下的机器上搭建一个http代理服务器,然后通过export命令设置通过代理下载,如在192.168.56.1上搭建了一个http代理(设置了账号和密码),可以通过如下命令执行,然后再执行startup.sh
export http_proxy=http://admin:admin123@192.168.56.1:1080export https_proxy=http://admin:admin123@192.168.56.1:1080export no_proxy='127.0.0.1'运行startup.sh
[root@localhost bin]# ./startup.sh Using KKFILEVIEW_BIN_FOLDER /opt/kkFileView-4.0.0/binInstalling OpenOfficeLoaded plugins: fastestmirrorDetermining fastest mirrors........略Complete!Loaded plugins: fastestmirrorNo such command: installlocalho. Please use /usr/bin/yum --helpinstall finshed...Starting kkFileView...Please execute ./showlog.sh to check log for more informationYou can get help in our official homesite: https://kkFileView.keking.cnIf this project is helpful to you, please star it on https://gitee.com/kekingcn/file-online-preview/stargazers4.按步骤3的提示执行./showlog.sh查看启动日志,报错,需要解决office.home的问题:
SpringBoot 实现 Office 各种格式在线预览

文章插图
 
./startup.sh报错,不是一键部署吗?官网直接说.startup.sh难道有坑?查看startup.sh中,定定了几个目录/opt/libpreoffice*,根据官网说的,4.0版本后依赖libpreoffice,继续看/opt目录下,没看到libpreoffice目录存在,说明libpreoffice未安装成功 。
SpringBoot 实现 Office 各种格式在线预览

文章插图
 
/opt目录下,没看到libpreoffice目录存在,说明libpreoffice未安装成功,如下:
[root@localhost opt]# ls -hl /opt/total 0drwxr-xr-x. 5 root root 42 Aug 20 13:05 kkFileView-4.0.0继续看,发现没有安装的情况是要执行install.sh的
SpringBoot 实现 Office 各种格式在线预览

文章插图
 
install.sh如下
SpringBoot 实现 Office 各种格式在线预览

文章插图
 
看着像是会执行安装的,cd /tmp/LibreOffice_7.1.4.2_Linux_x86-64_rpm/RPMS查看,也确实是下载了很多包


推荐阅读