Appearance
部署文件预览插件
文件预览插件支持多种类型文件预览,并且支持:添加水印、打印文件、下载文件等功能
文件预览插件支持的文件类型
- 支持 doc, docx, xls, xlsx, xlsm, ppt, pptx, csv, tsv, dotm, xlt, xltm, dot, dotx,xlam, xla 等 Office 办公文档
- 支持 wps, dps, et, ett, wpt 等国产 WPS Office 办公文档
- 支持 odt, ods, ots, odp, otp, six, ott, fodt, fods 等OpenOffice、LibreOffice 办公文档
- 支持 vsd, vsdx 等 Visio 流程图文件
- 支持 wmf, emf 等 Windows 系统图像文件
- 支持 psd 等 Photoshop 软件模型文件
- 支持 pdf ,ofd, rtf 等文档
- 支持 xmind 软件模型文件
- 支持 bpmn 工作流文件
- 支持 eml 邮件文件
- 支持 epub 图书文档
- 支持 obj, 3ds, stl, ply, gltf, glb, off, 3dm, fbx, dae, wrl, 3mf, ifc, brep, step, iges, fcstd, bim 等 3D 模型文件
- 支持 dwg, dxf 等 CAD 模型文件
- 支持 txt, xml(渲染), md(渲染), java, php, py, js, css 等所有纯文本
- 支持 zip, rar, jar, tar, gzip, 7z 等压缩包
- 支持 jpg, jpeg, png, gif, bmp, ico, jfif, webp 等图片预览(翻转,缩放,镜像)
- 支持 tif, tiff 图信息模型文件
- 支持 tga 图像格式文件
- 支持 svg 矢量图像格式文件
- 支持 mp3,wav,mp4,flv 等音视频格式文件
- 支持 avi,mov,rm,webm,ts,rm,mkv,mpeg,ogg,mpg,rmvb,wmv,3gp,ts,swf 等视频格式转码预览
1.创建配置文件:preview.json
配置参数说明
IS_USE_PROXY,仅当以下情况配置为true,否则会导致文件预览失败
- 已安装
域名代理插件,预览请求经域名代理插件转发 - 自建
Nginx反向代理,预览请求经Nginx代理转发
参数字段定义
bash
TRUST_HOSTS # 【可选】信任站点,仅信任站点内的文件可以预览(默认已包含:私有化部署的根地址)。例如:["192.168.31.168", "baidu.com"]
IS_ENABLE_PRINT # 【必填】是否允许打印(true:允许,false:禁止)
IS_ENABLE_DOWNLOAD # 【必填】是否允许下载(true:允许,false:禁止)
IS_USE_PROXY # 【必填】是否使用代理地址访问(默认为:false。如果使用了nginx、代理插件等,必须设置为true)
WATERMARK # 【可选】水印配置(不存在此字段时,则不会添加水印)
WATERMARK.TEXT # 【必填】水印内容(字段值为:"",则不会添加水印)
WATERMARK.X_SPACE # 【必填】水印x轴间隔
WATERMARK.Y_SPACE # 【必填】水印y轴间隔
WATERMARK.FONT_SIZE # 【必填】水印字体大小(单位px)
WATERMARK.FONT_COLOR # 【必填】水印字体颜色(输入16进制颜色,例如:"#000000")
WATERMARK.ALPHA # 【必填】水印透明度,0.005 <= 设置值 < 1(值越小透明度越高)
WATERMARK.WIDTH # 【必填】水印宽度(默认180)
WATERMARK.HEIGHT # 【必填】水印高度(默认80)
WATERMARK.ANGLE # 【必填】水印倾斜度数,0 <= 设置值 < 90(值越小倾斜角度越小)配置文件示例
json
{
"TRUST_HOSTS": ["192.168.31.168"],
"IS_ENABLE_PRINT": true,
"IS_ENABLE_DOWNLOAD": true,
"IS_USE_PROXY": false,
"WATERMARK": {
"TEXT": "测试水印内容",
"X_SPACE": 10,
"Y_SPACE": 10,
"FONT_SIZE": "18px",
"FONT_COLOR": "#446DEC",
"ALPHA": 0.2,
"WIDTH": 180,
"HEIGHT": 80,
"ANGLE": 10
}
}1.1.一键创建
下方参数后,将其复制粘贴至命令行,敲击回车键即可
bash
cat > /etc/hzy/preview.json <<- EOF
{
"TRUST_HOSTS": ["192.168.31.168"],
"IS_ENABLE_PRINT": true,
"IS_ENABLE_DOWNLOAD": true,
"IS_USE_PROXY": false,
"WATERMARK": {
"TEXT": "测试水印内容",
"X_SPACE": 10,
"Y_SPACE": 10,
"FONT_SIZE": "18px",
"FONT_COLOR": "#446DEC",
"ALPHA": 0.2,
"WIDTH": 180,
"HEIGHT": 80,
"ANGLE": 10
}
}
EOF如何验证执行结果?
命令行输入:cat /etc/hzy/preview.json,后敲击回车键即可查看文件内容
1.2.手动创建
bash
cd /etc/hzy && vim -n preview.json注意
将使用vim编辑文件内容,点击查看vim的使用说明
2.运行文档预览插件
启动服务
运行端口
服务默认运行在8012端口,运行服务后请确认端口是否已开放
字体说明
由于字体版权限制,仅内置以下免费商用字体:
- 思源黑体
- 思源宋体
- Google Noto Sans 可变字体
如果以上字体无法满足打印需求,可以上传字体文件到宿主机目录:/usr/share/fonts/own
注意:请确保自定义字体库中的字体,已经获取了商用授权,未经授权使用商业字体可能有法律风险!
注意
使用windows部署时,需要替换相关目录,点击详情查看
bash
docker run --privileged -e TZ=Asia/Shanghai -itd -v /etc/hzy:/root/conf -v /usr/share/fonts/own:/usr/share/fonts/own --restart always -p 8012:8012 --name hzy-preview swr.cn-southwest-2.myhuaweicloud.com/hzy0code/hzy-utils:preview.x86.2.2.0bash
docker run --privileged -e TZ=Asia/Shanghai -itd -v /etc/hzy:/root/conf -v /usr/share/fonts/own:/usr/share/fonts/own --restart always -p 8012:8012 --name hzy-preview swr.cn-southwest-2.myhuaweicloud.com/hzy0code/hzy-utils:preview.arm.2.2.0重启服务
注意
修改了配置文件后,需要使用以下命令重启服务
bash
docker restart hzy-preview3.配置文档预览插件
将预览插件地址配置到管理后台,将自动启用插件预览(刷新页面即可)
假设 IP 为
192.168.31.168,则插件地址为:http://192.168.31.168:8012/onlinePreview

特别说明
如果设置了IS_USE_PROXY为true,则需要替换预览插件地址,替换规则为:
将上面地址中的/onlinePreview替换为/preview/onlinePreview
示例说明如下
假设根域名为:
http://test.123.com
则预览插件地址为:http://test.123.com/preview/onlinePreview
提示
如果不使用域名代理插件,而是需要自建nginx反向代理,则需要增加以下代理配置
bash
#预览插件(这里必须写为 ^~ 并且放在最前面)
location ^~ /preview {
#将请求反向代理到目标服务器上
proxy_pass http://127.0.0.1:8012;
}