文件在线预览
在浏览器中预览平台中存储的各种类型的文件
功能说明
平台中的文件在线预览是基于开源软件 kkFileView 做了一些定制 要使用文件在线预览功能,需要在租户内部署 fileview 应用。
支持的文件类型
- 支持 office、pdf、cad 等办公文档
- 支持 txt、xml(渲染)、md(渲染)、java、php、py、js、css 等所有纯文本
- 支持 zip、rar、jar、tar、gzip 等压缩包
- 支持 jpg、jpeg、png、gif、tif、tiff 等图片预览(翻转,缩放,镜像)
平台定制内容
- 支持了 K8S 内容域名的访问,解决有些用户不能访问外网的问题
- 支持文件名同名
文件预览在平台中的使用
设计时
平台中提供了一个附件组件,可以用来管理附件,它有文件预览的功能
首先在组件中“高级”分类中找到“附件”组件,将它加入到当前页面中,并将文件预览服务设置为true;如果想在设计时预览效果,需要从门户调试运行。
运行时
点击附件中的文件名或预览按钮
调用文件预览服务中的 onlinePreview 接口,预览附件中的文件
显示水印
在 onlinePreview 请求中增加 watermarkTxt 参数,在预览时会显示水印。
在附件组件的预览事件中,给预览地址增加 watermarkTxt 参数
预览事件的 JS 代码如下
onUpload2Preview = (event) => {
let {detail:{file}} = event;
file._previewUrl += "&watermarkTxt=bbb";
}
运行效果如下
还可以添加下面这些属性控制水印的显示效果:
watermarkXSpace、watermarkYSpace、watermarkFont、watermarkFontsize、watermarkColor、watermarkAlpha、watermarkWidth、watermarkHeight、watermarkAngle
转成 pdf 文件
文件预览默认用图片的方式显示 doc 文件,如需转成 pdf 文件,在 onlinePreview 请求中增加参数:onlyConvert=true&officePreviewType=pdf,注意转换后变成下载 pdf 文件。附件组件预览事件的 JS 代码如下
onUpload2Preview = (event) => {
let {detail:{file}} = event;
file._previewUrl += "&onlyConvert=true&officePreviewType=pdf";
}
不能访问外网域名时
定制文件预览服务,在“代码”中,找到文件预览服务的 production.def.xml 文件,将 useIntranetAddress 属性的值设置为 true,然后发布