文件转换及在线预览
因为项目是做OA这一块,有很多附件需要实现在线预览附件,在网上也看了很多相关的资料。主要实现方式就是 (openoffice+swftools+flexpaper)和(aspose+pdfjs预览)。
主要步骤:
1.需要先将文档转换为PDF文件。
2.用pdfjs预览PDF文件
转换步骤:使用OpenOffice/Aspose 将ppt、word、excel、txt类型的文件转换为pdf
预览步骤:高版本浏览器上,使用pdf.js直接预览PDF文件
低版本浏览器上,使用swftools将PDF文件转换为swf文件,再使用flexpaper预览swf(没有做这个步骤)
组件安装:
Aspose
由于OpenOffice的转换效果并不太佳,这里选择了Aspose
在Aspose官网下载Aspose的Java版本,主要选择
Aspose.words
Aspose.cells(Excel)
Aspose.slides(PPT)
Aspose.pdf
下载完成后,在工程中引用jar包即可。
功能实现:
这里采用的所有组件版本为:
名称 版本
Aspose.words 16.8.0
Aspose.cells 9.0.0
Aspose.slides 116.7.0
Aspose.pdf 11.8.0
文档转换为PDF
使用Aspose进行文档转换很简单,直接引入相应的jar包,调用save方法,转换为PDF即可。
注意:使用Aspose时,每一个模块(words,cells)都可能有相同的类,如License类,SaveOptions类,SaveFormat类。而在各自模块使用时,一定要用对应模块的类,这个坑我已爬过。
使用Aspose时,需要每次进行转换操作前调用设置License方法。
水印功能
编辑卡片描述
部署Aspose附件转换服务,该服务主要功能是将系统中所有附件(格式为word、EXCEL、PPT、PDF)转换为H5页面,类似百度文库查看word附件的效果,转换的文件后,在系统打开附件时,呈现的效果就是在线阅览并且带有水印的模式
水印功能
Aspose.words之插入水印
1. 前言
继几个月前的word模板打印美化之后,最近又接到的一个需求是需要给由word转换为的pdf打上水印。经过几个小时的折腾发现直接在pdf打上的水印将下面的字体覆盖效果过于明显,试图插入背景图片又发现会被pdf自身的背景色给遮挡。无奈只能从源头的word入手。
2. 详解
以下就是核心代码了
1
2
3
4
5