06 2023 档案
文档在线预览(五)在服务器部署组件来实现在线预览
摘要:
kkfileview是一个开源的文件文档在线预览项目解决方案。该项目使用流行的spring boot搭建,易上手和部署以及二次开发,并提供Docker镜像发行包,方便在容器环境部署。基本支持主流办公文档的在线预览。支持word excel ppt,pdf等办公文档支持txt,java,php,py,md,js,css等所有纯文本支持zip,rar,jar,tar,gzip等压缩包支持jpg,jpeg,png,gif等图片预览(翻转,缩放,镜像)支持mp3,mp4,flv等多媒体文件预览。
阅读全文

整理spring-web里支持的文件以及对应的Content-Type
摘要:
最近在弄文件上传、下载、在线预览时经常需要设置请求标头或者响应标头的Content-Type 属性。所以研究了一下spring支持哪些Content-Type,通过研究MediaTypeFactory.getMediaType的源码,可以得知spring是将支持的Content-Type 维护在/org/springframework/http/mime.types文件中。通过上面查找文件的路径找到了org.springframework:spring-web包下http目录中的mime.types文件。
阅读全文

设计模式:适配器模式(论如何把鼠头适配加工成鸭脖)
摘要:
适配器模式(Adapter Pattern)有时候也称包装样式或者包装,是一种结构型设计模式,它可以将一个类的接口转换成客户端所期望的另一个接口。适配器模式可以让原本由于接口不兼容而不能一起工作的那些类可以一起工作。适配器模式有三种类型:类适配器模式、对象适配器模式和接口适配器模式。类适配器模式采用多重继承对一个接口与另外一个接口进行匹配,Java 不支持多继承,但可以定义一个适配器类来实现当前系统的业务接口,同时又继承现有组件库中已经存在的组件。优点:1、可以让任何两个没有关联的类一起运行。
阅读全文

java接口返回图片或pdf如何设置在线预览还是下载
摘要:
之前文章说到了如何通过将文件转成图片或者pdf来实现在线预览,一般来说在线预览图片或者pdf都是存储在图片服务器上的,在通过接口调用把文件返回给前端,但是把文件返回给前端效果一般是有两种:在线预览和下载。那这两种效果分别又该怎么实现呢?我们今天就来说这两种效果的实现。下面是之前转成图片、pdf实现线预览,有兴趣的小伙伴可以看看。
阅读全文

文档在线预览(三)将word、txt、ppt、excel、图片转成pdf来实现在线预览
摘要:
,而且图片格式不是光改后缀就行的,必须要用格式转换器转换。之所以这样做的原因是因为在接下来的多图片转换成一个pdf文件时,往往是不能确保每张图片的长宽比例是一样的,为了确保每张图片都能完整的显示,所以只能调整图片的大小。可以看到ppt内容已经展示完整了,到此其实ppt转pdf功能已经基本实现了,但是显示效果依然不算完美毕竟我们其实想要的是在pdf里和在ppt看的是一样的效果,而且每页ppt的长宽其实都是一样的,所以我就在想能不能设置pdf每页的长宽,把pdf每页的长宽设置成和ppt的长宽一样。
阅读全文

文档在线预览(四)使用js前端实现word、excel、pdf、ppt 在线预览
摘要:
本文主要介绍了word、excel、pdf、ppt等文件纯前端实现在线预览的方式,从本文的测试情况来看前端实现预览最好的效果还是PDF(或者是图片),不会出现一些文字错乱和乱码的问题,所以一般好的方案就是后端配合将不同格式的文件转换成pdf,转成统一的文件格式,再由前端实现预览效果,这样能保留文件的一些样式的效果,同时前端也只用支持一种文件格式的预览,工作量也能大大降低。
阅读全文
