分类分类
大小:154 MB 更新:2021/01/07
类别:办公专区系统:WinXP, Win7, Win8, Win10, WinAll
kkFileView提供在线文件预览功能,可以直接在软件打开office类型的文件,可以将本地的资源添加到软件预览,可以将网页上的资源添加到软件预览,输入URL就可以直接在网页打开文件,实现更方便的在线预览文件功能,如果你的文件无法在线预览就可以下载这款软件;现在很多文件都是下载到电脑才能打开使用的,一些网站或者是web程序也功能在线预览功能,不下载文件就可以直接在web查看文件内容,这款kkFileView软件为用户提供多种文件在线预览,图像、PDF、Word、Excel、压缩文件、编程文件、音视频媒体文件都可以在软件预览!
1、支持word excel ppt,pdf等办公文档
2、支持txt,java,php,py,md,js,css等所有纯文本
3、支持zip,rar,jar,tar,gzip等压缩包
4、支持jpg,jpeg,png,gif等图片预览(缩小,缩放,缩小)
5、支持mp3,mp4,flv等多媒体文件预览
6、使用spring boot开发,预览服务建造部署非常重复
7、rest接口提供服务,跨平台特性(java,php,python,go,php,....)都支持,应用接收简单方便
8、支持普通http / https文件下载url,http / https文件下载流url,ftp下载url等多种预览源
9、提供zip,tar.gz发布包,提供一键启动脚本和丰富的配置项,方便部署使用
10、提供Docker大规模发行包,方便在容器环境部署
11、抽象预览服务接口,方便二次开发,非常方便添加其他类型文件预览支持
12、最最重要Apache协议开源,代码pull下来想干嘛就干嘛
1.文本预览
支持所有类型的文本文档预览,由于文本文档类型过多,无法全部枚举,又开启的类型如下txt,html,htm,asp,jsp,xml,json,properties,md,gitignore,log,java,py ,c,cpp,sql,sh,bat,m,bas,prg,cmd
文本预览效果如下
2.图片预览
支持jpg,jpeg,png,gif等图片预览(缩放,缩放,缩小),预览效果如下
3. word文档预览
支持doc,docx文档预览,单词预览有两种模式:一种是每页单词转为图片预览,另一种是整个word文档转成pdf,再预览pdf。
图片预览:word文件大,前台加载整个pdf过慢
pdf预览:内网访问,加载pdf快捷
图片预览模式预览效果如下
pdf预览模式预览效果如下
4. ppt文档预览
支持ppt,pptx文档预览,和word文档一样,有两种预览模式
图片预览模式预览效果如下
pdf预览模式预览效果如下
5. pdf文档预览
支持pdf文档预览,和word文档一样,有两种预览模式
图片预览模式预览效果如下
pdf预览模式预览效果如下
6. excel文档预览
支持xls,xlsx文档预览,预览效果如下
1. 环境要求
Java: 1.8+
OpenOffice或LiberOffice(Windows下已内置,CentOS或Ubuntu下会自动下载安装,MacOS下需要自行安装)
2. 部署运行
1). 物理机或虚拟机上运行
1、下载最新版发行包
2、解压kkFileView-2.x.x.zip包
3、打开解压后文件夹的bin目录,运行startup脚本(Windows下以管理员身份运行startup.bat,Linux以root用户运行startup.sh)
4、浏览器访问本机8012端口 http://127.0.0.1:8012 即可看到项目演示用首页
2). Docker容器环境环境运行
拉取镜像
docker pull keking/kkfileview
运行
docker run -it -p 8012:8012 keking/kkfileview
浏览器访问容器8012端口 http://xxx.xxx.xxx.xxx:8012 即可看到项目演示用首页
3. 项目接入使用
当您的项目内需要预览文件时,只需要调用浏览器打开本项目的预览接口,并传入须要预览文件的url,示例如下:
var url = 'http://127.0.0.1:8080/file/test.txt'; //要预览文件的访问地址
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(previewUrl));
当您的项目内需要预览文件时,只需要调用浏览器打开本项目的预览接口,并传入须要预览文件的url。
注意,如果要预览的url里包含需要转义的特殊字符,如下表格,请使用encodeURIComponent(url)转义
1. 普通文件下载url预览
var url = 'http://127.0.0.1:8080/file/test.txt'; //要预览文件的访问地址
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(url));
2. http/https下载流url预览
很多系统内不是直接暴露文件下载地址,而是请求通过id、code等参数到通过统一的接口,后端通过id或code等参数定位文件,再通过OutputStream输出下载,此时下载url是不带文件后缀名的,预览时需要拿到文件名,传一个参数fullfilename=xxx.xxx来指定文件名,示例如下
var originUrl = 'http://127.0.0.1:8080/filedownload?fileId=1'; //要预览文件的访问地址
var previewUrl = originUrl + '&fullfilename=test.txt'
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(previewUrl));
3. FTP下载url预览
1). FTP匿名访问
如果要预览的FTP url是可以匿名访问的(不需要用户名密码),则可以直接通过下载url预览,示例如下
var url = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(url));
2). 非匿名访问,确定只有访问一台FTP服务器
如果预览服务只访问一台FTP服务器,只需要在配置文件中 配置FTP链接信息 ,则可以直接通过下载url预览,示例如下
var url = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(url));
3). 非匿名访问,不只访问一台FTP服务器
如果预览服务要访问多台FTP服务器,且用户名密码不一致,可以通过在url中加入用户名密码等参数预览(url参数中的优化于配置文件中的),示例如下
var originUrl = 'ftp://127.0.0.1/file/test.txt'; //要预览文件的访问地址
var previewUrl = originUrl + '?ftp.username=xx&ftp.password=xx&ftp.control.encoding=xx';
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(previewUrl));
打开conf目录,下面有一个application.properties配置文件,有部分配置是可以在程序运行中变更的,其他的变更需要重新启动程序
不可动态配置,需要重启生效部分
server.context-path
说明:kkFileView运行时tomcat的ServletContext 默认值:/ 示例:server.context-path = /preview
file.dir
说明:预览文件存储路径,当有大量文件要预览时需要保证该目录所在磁盘有足够的容量
默认值:程序根目录下的file目录下
示例:file.dir = D:\\kkFileview\\
office.home
说明:openoffice或libreoffice安装目录,一般情况下不用配置,如果需要使用自己安装openoffice或libreoffice,可以自行指定
默认值:不同操作系统各自对应的默认安装目录
示例:office.home = C:\\Program Files (x86)\\OpenOffice 4
cache.type
说明:缓存实现方式,默认为内嵌RocksDB实现,可选项:'default', 'jdk', 'redis'
default:默认实现,使用RocksDB存储引擎,使用磁盘存储,会占用少量磁盘空间;Windows下需要使用管理员身份启动程序
jdk:java对象实现,使用纯内存对象存储,速度极快,外部依赖最少,调试部署方便,会占用内存,推荐调试时和预览文件量不是很大时(<50万)使用,预览文件量极大或有大量压缩包时不推荐使用
redis: redis作为缓存实现,速度快,不占用内存和磁盘空间,但是需要有外部redis服务
当配置为redis实现时,需要同时配置redis连接相关配置,如下:
spring.redisson.address = 127.0.0.1:6379
spring.redisson.password = xxxxxx
cache.clean
说明:是否需要自动定时清理缓存及预览过的文件,默认开启(如果不清理缓存,同一个url下如果文件发生变更是不会重新拉取新的文件再去预览的),开启的情况下会在每天凌晨3点清理所有缓存及预览文件,推荐预览量不大,对预览速度要求不高,且同一url下文件经常更新的用户开启,预览量大、预览速度要求高的用户不推荐开启
true: 默认值,开启
false: 不开启
空:注释掉,不开启
可在运行时动态改变部分
base.url
说明:提供预览服务的地址,默认从接收请求url读,如果使用nginx等反向代理,需要手动设置为通过nginx访问预览服务的地址
默认值:未设置
示例:base.url = https://file.keking.cn
例如nginx的访问地址为 http://file.keking.cn 想要使用 http://file.keking.cn/preview/来做预览,kkFileView部署在内网192.168.1.233服务器上,需要在nginx中添加反向代理如下
location /preview {
proxy_pass 192.168.1.233:8012;
}
修改kkFileView的配置文件如下两项
server.context-path = /preview
base.url = http://file.keking.cn/preview
使用如下地址来访问预览页面
var url = 'http://file.keking.cn/file/test.txt'; //要预览文件的访问地址
window.open('http://file.keking.cn/preview/onlinePreview?url='+encodeURIComponent(url));
trust.host
说明:信任站点,设置了之后,会限制只能预览来自信任站点列表的文件,默认不限制,多个用','隔开, 默认值:未设置 示例:trust.host = file.keking.cn,kkfileview.keking.cn
simText
说明:用来配置预览方式为纯文本的文件类型
默认值:txt,html,htm,asp,jsp,xml,json,properties,md,gitignore,log,java,py,c,cpp,sql,sh,bat,m,bas,prg,cmd
media
说明:用来配置预览方式为多媒体(视频、音频)的文件类型
默认值:mp3,wav,mp4,flv
converted.file.charset
说明:文件转换编码,默认根据操作系统获取,一般情况下不用改
默认值:从java系统属性sun.jnu.encoding获取,操作系统的默认编码
示例:converted.file.charset = GBK
office.preview.type
说明:office文件(doc、docx、ppt、pptx)、pdf 文件预览方式,默认为图片方式,预览时也有按钮相互切换,可选项:'image', 'pdf'
image: 默认预览方式,将office文件每一页后台转成图片,前台懒加载(只加载当前页面内容),推荐预览文件大且前台加载慢的时候使用
pdf: 统一转成pdf加一次加载,推荐内网访问,网速快时使用
ftp.username
说明:预览url为FTP地址时,默认的ftp用户名,可过url参数中的ftp.username=xxx覆盖,即优先使用url参数中的,如果url参数中没有,则取本配置的
默认值:null
ftp.password
说明:预览url为FTP地址时,默认的ftp密码,可过url参数中的ftp.password=xxx覆盖,即优先使用url参数中的,如果url参数中没有,则取本配置的
默认值:null
ftp.control.encoding
说明:预览源为FTP时, FTP连接默认的ControlEncoding,根据FTP服务器的操作系统选择,Linux一般为设置UTF-8,Windows一般为设置GBK。可过url参数中的ftp.control.encoding=xxx覆盖,即优先使用url参数中的,如果url参数中没有,则取本配置的
默认值:UTF-8
watermark.txt
默认水印内容,如需取消水印,内容设置为空即可,例如:watermark.txt = ${WATERMARK_TXT:}
默认值:''
watermark.x.space
水印x轴间隔
默认值:10
watermark.y.space
水印y轴间隔
默认值:10
watermark.font
水印字体
默认值:微软雅黑
watermark.fontsize
水印字体大小
默认值:18px
watermark.color
水印字体颜色
默认值:black
watermark.alpha
水印透明度,要求设置在大于等于0.005,小于1
默认值:0.2
watermark.width
水印宽度
默认值:180
watermark.height
水印高度 默认值:80
watermark.angle
水印倾斜度数,要求设置在大于等于0,小于90
默认值:10
Q:怎么把这个项目集成到我的项目里
A:不需要集成,本项目只需要独立部署,向外提供http预览服务(外部系统只需要访问本项目预览接口并传入需要预览文件的url,就可以打开预览页面)
Q:怎么把这个项目放Tomcat里运行
A:不需要放进Tomcat里,编译好的发行包为zip包,直接解压运行一键启动脚本就可以完成部署(需要有java环境)具体部署步骤详见:部署指南
Q:预览并发问题&预览首次打开慢
A:可使用预览转码队列,将需要预览的文件url放入队列中,提前进行转码,本地访问接口为:http://127.0.0.1:8012/addTask?url=http://xxx/test.txt (url参数为需要需要的文件访问地址)
Q:预览乱码
A:乱码问题可能有如下两个原因
字体问题
大部分Linux系统上并没有预装中文字体或字体不全,需要把常用字体拷贝到Linux服务器上,具体操作如下: 下载如下字体包 http://kkfileview.keking.cn/fonts.zip 文件解压完整拷贝到Linux下的 /usr/share/fonts目录。然后依次执行mkfontscale 、mkfontdir 、fc-cache使字体生效
编码问题
编码问题分为如下两方面
1、Excel文件编码格式 Excel软件是可以选择用什么编码去保存文件的
目前我们读取Eecel文件是用的服务器操作系统默认编码,可以通过在启动脚本里加入如-Dfile.encoding=UTF-8指定,
2、生成html网页编码格式
生成html网页也是用的服务器操作系统默认编码(java系统属性:sun.jnu.encoding),比如用浏览器用手动更改编码格式为utf-8或gbk打开没有问题,但是用浏览器默认编码就有问题,此时可调整系统配置文件中的配置项converted.file.charset可解决此类乱码问题,
Q:Linux下运行startup.sh脚本报错:/bin/bash^M: bad interpreter: No such file or directory
A:一般为在Windows下用IDEA导入项目编译时,默认使用Windows(\r\n)下的文件换行符导致的,导入项目时设置默认换行符为Unix类操作系统换行符再编译即可(File->Settings->Editor->Code Style->Line separator 选择Unix and MacOs(\n))
2020年05月20日:
1、添加更多支持层次水印,并支持通过参数动态更改水印内容
2、新增支持CAD文件预览
3、新增base.url配置,支持使用nginx反向代理和使用上下文路径
4、支持所有配置项支持从环境变量里读取,方便Docker部署和扩展中大规模使用
5、支持配置限信任站点(只能预览来自信任点的文件源),保护预览服务不被滥用
6、支持配置自定义缓存清理时间(cron表达式)
7、全部能识别的纯文本直接预览,不用再转跳下载,如.md .java .py等
8、支持配置限制转换后的PDF文件下载
9、优化maven打包配置,解决.sh脚本可能出现换行符问题
10、将前端所有CDN依赖放到本地,方便没有外网连接的用户使用
11、首页评论服务由搜狐畅言切换到Gitalk
12、修复网址中包含特殊字符可能会引起的预览异常
13、修复转换文件文本addTask异常
14、修复其他已经问题
网易灵犀办公电脑版 办公专区121.3 MB1.44.2
详情TickTick(滴答清单) 办公专区16.18 MB6.1.0.0
详情滴答清单(TickTick) v6.1.0.0 办公专区16.18 MB6.1.0.0
详情钉钉电脑版 办公专区4.97 MB7.6.15
详情华为welink电脑版 办公专区277.3 MB7.44.5.541
详情Office 2016 专业增强版 办公专区1078.84 MB16.0.4266.1001
详情网络编辑超级工具箱 办公专区0.47 MB1.0.3.0
详情企业微信电脑版 办公专区477.74 MBv4.1.28.6005
详情腾讯文档电脑版 办公专区269.64 MB3.5.5.0
详情小鱼易连 办公专区120.35 MB3.10.0.23246
详情青虎浏览器 办公专区1.06 MB3.0
详情腾讯TIM 办公专区85.34 MB3.4.8
详情语雀 办公专区80.46 MB3.4.0.1204
详情Todo清单(待办提醒) 办公专区93.61 MB3.6.4
详情中通宝盒电脑版 办公专区225.75 MB8.29.2.1116
详情全能PDF转换助手 办公专区132.99 MB2.9.0.0
详情固乔电商图片助手 办公专区6.18 MB63.0.1.0
详情MindNow思维导图 办公专区3.51 MB3.6.1.2
详情计算书大师 办公专区15.99 MB2013.0.0
详情彩虹办公中心 办公专区4.59 MB1.23.6.291
详情Office2003 四合一 简体中文极度精简版 办公专区70.00 MB
详情Microsoft Office Project 2003 简体中文精简版 办公专区23.00 MB
详情Mindjet MindManager 2020激活码 办公专区0 MB附带程序激活序列号
详情microsoft office 2010官方免费完整版 办公专区825 MB附密钥
详情Microsoft Project Pro 2010 sp2 中文便携版 办公专区438.00 MB
详情福昕高级PDF编辑器 办公专区480 MBv9.2
详情microsoft project 2019中文 办公专区3584 MB32位/64位 附安装教程
详情microsoft project2016中文 办公专区1024 MB附安装教程
详情Microsoft Office Visio 2007 中文版 办公专区426.00 MB
详情Tableau Desktop Professional Edition(专业数据分析软件) 办公专区431.0 MBv2020.1.0 中文
详情汉王考勤管理系统 办公专区67.1 MBv7.3.1 官方标准版
详情Microsoft Office 2016 15.30 for Mac 简体中文 办公专区1802 MB
详情office安装激活一条龙 Office Tool Plus 办公专区7.16 MBv8.0.4.7 绿色版
详情PDF编辑 PDF-XChange Editor Plus 办公专区207 MBv8.0.339.0 中文
详情钉钉电脑版 办公专区4.97 MB7.6.15
详情Office2003 SP3 六合一 免激活单文件版 办公专区185.00 MB
详情《EXCEL高效办公系列》五百多个EXCEL模板 办公专区11.00 MB
详情powerpoint(ppt) 办公专区120.0 MBv2013 免费完整版
详情Adobe acrobat reader dc 2018中文 办公专区256.0 MB附安装教程
详情office365 办公专区5.8 MB附安装教程
详情wps office mac版 办公专区539.79 MBv3.6.2
详情WPS Office 2019 办公专区153.39 MBv11.1.0.10314 官方正式版
详情萝卜开会 办公专区90.1 MBv0.0.3 官方版
详情腾讯手游助手 办公专区3.4 MBv3.10.1416.80
详情钉钉电脑版 办公专区4.97 MB7.6.15
详情语雀 办公专区80.46 MB3.4.0.1204
详情青虎浏览器 办公专区1.06 MB3.0
详情快会电脑版 办公专区77.54 MBv1.2.0.5
详情金山文档教育版 办公专区130.35 MBv11.3.0.8513
详情钉钉专业版 办公专区 MBv1.0
详情