强推!一个项目实现所有文件类型的预览功能!
大家好,我是 Java陈序员
。
我们在工作中,经常需要与文件上传下载进行打交道。甚至有时候要实现文件预览功能。
如果是一两种的文件类型,我们或许可以借助一些插件完成工作,那么如果是要适配各式各样的文件类型呢?
今天,给大家介绍一个支持预览多种文件类型的开源项目 —— kkFileView
.
项目介绍
kkFileView
是一个基于 SpringBoot
实现文档在线预览的开源项目,基本支持主流办公文档(Word
、PPT
、Excel
、Pdf
等)的在线预览。
项目特性:
- 基于
SpringBoot
实现,开箱即用 - 提供丰富的
Restful
接口服务 - 支持
http
/https
/ftp
/文件流等多种预览源 - 统一的预览服务接口,方便二次开发
- 支持
Docker
部署
支持多种文件类型,目前已支持:
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/kqjctvul_urzu.png)
项目地址:
https://github.com/kekingcn/kkFileView
在线体验:
https://file.kkview.cn/
在线文档:
https://kkfileview.keking.cn/zh-cn/docs/home.html
功能预览
文本预览
文本预览不仅支持预览 .txt
,而且 .html
、.js
、.xml
、.json
、.yaml
、.java
、.py
、.cpp
等也是支持的!
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/lhceoulj_woz2.png)
图片预览
支持 jpg
、jpeg
、png
、gif
等图片预览,并可以放大、缩小、旋转图片!
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/nxcwdpcg_wp6s.png)
Pdf
预览
Pdf
预览支持两种格式
图片模式
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/myhkepnv_gjq5.png)
PDF 格式
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/lkmwabwq_3qs5.png)
Excel
预览
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/ofnmmfya_7nca.png)
Word
预览
Word
预览预览有两种模式:
- 每页
Word
转为图片预览:Word
文件大,前台加载整个PPT
过慢 - 整个
Word
文档转成PPT
,再预览PPT
:内网访问,加载PPT
快
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/rxepuxyn_kywh.png)
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/pjtggjfv_xp5a.png)
PPT
预览
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/zwskwcto_0sbk.png)
多媒体预览
理论上支持所有的视频、音频文件,默认开启的类型:mp3
、wav
、mp4
、flv
,可通过配置文件指定多媒体类型
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/wdofijkt_9xls.png)
压缩包预览
支持 zip
、rar
、jar
、tar
、gzip
等压缩包。
可点击压缩包中的文件名,直接预览文件!
![](https://img.shuduke.com/static_img/cnblogs/create-center/kkFileView/dfsucwos_anpb.png)
安装使用
环境准备
Java
: 1.8+LibreOffice
或OpenOffice
(Windows
下已内置,CentOS
或Ubuntu
下会自动下载安装,MacOS
下需要自行安装)
Docker
安装
拉取镜像:
docker pull keking/kkfileview:4.1.0
启动运行:
docker run -it -p 8012:8012 keking/kkfileview:4.1.0
成功启动后,访问容器 8012
端口 http://127.0.0.1:8012
.
或者使用 nginx
进行反向代理:
server {
listen 80;
server_name chencoding.top;
location / {
proxy_pass http://localhost:8012;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
nginx
配置成功后,浏览器访问:http://ip:端口
或者 http://域名:端口
最后
推荐的开源项目已经收录到 GitHub
项目,欢迎 Star
:
https://github.com/chenyl8848/great-open-source-project
或者访问网站,进行在线浏览:
https://chencoding.top:8090/#/
大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!