java压缩pdf文件大小,Java压缩文件
PDF在日常工作中应用广泛,常用于保存公司文档、电子书或网络资料等大型内容。但是内容太多往往会导致PDF文件过大,不方便保存和发送。在这种情况下,我们可以选择使用Java的FreeSpire.PDF来压缩PDF文件。这种方法主要是通过压缩文件中的图片、不必要的注释行和空格来压缩文件大小,从而节省存储空间,减少文件传输时间。下面是具体的操作步骤。
安装尖顶的方法1。PDF.Jar:
如果您使用的是maven,您可以通过将以下代码添加到项目的pom.xml文件中,将JAR文件导入到应用程序中。
仓库
仓库
id com.e-iceblue /id
URL https://repo.e-iceblue.cn/repository/maven-public//URL
/存储库
/存储库
属国
属国
groupId e-iceblue /groupId
artifact id spire . pdf . free/artifact id
版本5 . 1 . 0/版本
/依赖关系
/依赖关系
方法二:
如果你没有使用maven,你可以从这个链接下载免费的Java Spire.PDF。lib文件夹中的PDF.jar并解压缩它。然后在IDEA新建一个项目,依次点击文件、项目结构、组件、依赖项,然后点击右边绿色“”下的第一个选项“JARs或目录”找到解压后的Spire。PDF.jar
注:免费尖塔。便携文档格式
For Java支持10页以内的PDF文档。如果PDF的页面太多,可以选择使用Java的Spire.PDF。
下面是压缩PDF文档的详细操作步骤和相关代码:
创建PdfDocument类的对象。使用PdfDocument.loadFromFile()方法加载PDF文档。使用pdfdocument.getfileinfo()。setIncrementalUpdate()方法来禁用增量更新。使用pdf document . setcompressionlevel()方法将压缩级别设置为压缩文档内容的最佳级别。您可以从PdfCompressionLevel列表中选择其他级别。遍历文档页面,使用PdfPageBase.getImagesInfo()的方法获取每页的图像信息集合。遍历集合中的所有项目,并使用PdfBitmap.setQuality()方法压缩特定图像的质量。使用PdfPageBase.replaceImage()方法将原始图像替换为压缩图像。使用PdfDocument.saveToFile()方法将文档保存到另一个PDF文档中。导入com . spire . pdf . pdf compressionlevel;
导入com . spire . pdf . pdf document;
导入com . spire . pdf . pdf pagebase;
import com . spire . pdf . exporting . pdfimageinfo;
导入com . spire . pdf . graphics . pdf bitmap;
公共类CompressPdfDocument {
公共静态void main(String[] args) {
//创建PdfDocument类的对象
pdf document doc=new pdf document();
//加载PDF文档
doc . loadfromfile( sample . pdf );
//禁用增量更新
doc.getFileInfo()。setIncrementalUpdate(false);
//将压缩级别设置为最佳
doc . setcompressionlevel(pdfccompressionlevel。最佳);
//遍历文档页面
for(int I=0;i doc.getPages()。getCount();i ) {
//获取指定的页面
PdfPageBase page=doc.getPages()。get(I);
//获取每个页面的图像信息集
PdfImageInfo[]images=page . getimagesinfo();
//循环访问集合中的所有项
如果(图片!=空图像.长度0)
for(int j=0;j图像.长度;j ) {
//获取指定的图片
PdfImageInfo image=images[j];
PdfBitmap BP=new PdfBitmap(image . getimage());
//设置压缩质量
BP . set quality(20);
//用压缩图像替换原始图像
page.replaceImage(j,BP);
}
//将结果文档保存到另一个PDF文档
doc . savetofile( compressed . pdf );
doc . close();
}
}
}
版权归作者所有:原创作品来自博主wx62c7d51fdb3c6,转载请联系作者授权,否则将追究法律责任。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。