如何通过Java压缩PDF文档

PDF文档在日常工作中应用广泛,经常用于保存公司文件,电子图书或网络资料等大篇幅内容。然而,内容过多往往也会导致PDF文件过大,不便于其保存和发送。在这种情况下,我们可以选择使用Free Spire.PDF for Java压缩PDF文件。这一方法主要通过压缩文件内的图片、不需要的注释行和空格等来压缩文件大小,以此节约储存空间,减少文件传送时间。以下是具体的操作步骤。

安装Spire.PDF.Jar

方法一: 如果您使用的是 maven,可以通过添加以下代码到项目的 pom.xml 文件中,将 JAR 文件导入到应用程序中。

1<repositories> 2 <repository> 3 <id>com.e-iceblue</id> 4 <name>e-iceblue</name> 5 <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url> 6 </repository> 7</repositories> 8<dependencies> 9 <dependency> 10 <groupId>e-iceblue</groupId> 11 <artifactId>spire.pdf.free</artifactId> 12 <version>5.1.0</version> 13 </dependency> 14</dependencies>

方法二: 如果您没有使用 maven,则可以从此链接下载Free Spire.PDF for Java,找到lib文件夹下的Spire.PDF.jar并进行解压;然后在IDEA中创建一个新项目,依次点击File,Project Structure,Module,Dependencies。再点击右方绿色“+”下的第一个选项JARs or Directories,找到解压后的Spire.PDF.jar 文件,点击确认,将其导入到项目中。

!!!注意:Free Spire.PDF for Java支持10页内的PDF文档,如果PDF页数过多,可以选择使用Spire.PDF for Java。(可以免费申请使用一个月,不用白不用)

示例代码:

1import com.spire.pdf.PdfCompressionLevel; 2import com.spire.pdf.PdfDocument; 3import com.spire.pdf.PdfPageBase; 4import com.spire.pdf.exporting.PdfImageInfo; 5import com.spire.pdf.graphics.PdfBitmap; 6 7public class CompressPdfDocument { 8 9 public static void main(String[] args) { 10 11 //创建PdfDocument类的对象 12 PdfDocument doc = new PdfDocument(); 13 14 //加载PDF文档 15 doc.loadFromFile("sample.pdf"); 16 17 //禁用增量更新 18 doc.getFileInfo().setIncrementalUpdate(false); 19 20 //将压缩级别设置为最佳 21 doc.setCompressionLevel(PdfCompressionLevel.Best); 22 23 //遍历文档页面 24 for (int i = 0; i < doc.getPages().getCount(); i++) { 25 26 //获取指定页面 27 PdfPageBase page = doc.getPages().get(i); 28 29 //获取每个页面的图像信息集合 30 PdfImageInfo[] images = page.getImagesInfo(); 31 32 //遍历集合中的所有项目 33 if (images != null && images.length > 0) 34 for (int j = 0; j < images.length; j++) { 35 36 //获取指定图片 37 PdfImageInfo image = images[j]; 38 PdfBitmap bp = new PdfBitmap(image.getImage()); 39 40 //设置压缩质量 41 bp.setQuality(20); 42 43 //将原始图像替换为压缩图像 44 page.replaceImage(j, bp); 45 } 46 47 //将结果文档保存至另一个PDF文档中 48 doc.saveToFile("Compressed.pdf"); 49 doc.close(); 50 } 51 } 52} 53

其他功能可以通过以下链接查看 Spire.PDF for Java Program Guide Content

点赞
收藏

评论区

加载中...

相关推荐

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

通过Java将PPT转换为PDF

PPT和PDF都是非常实用的文档格式。由于PDF文件更为稳定安全且易于传输或储存,所以当需要共享或打印演示文稿时,可以先将PPT转换成PDF格式再进行操作。下面我将介绍如何通过编程的方法实现该转换,所用到的产品是Java组件FreeSpire.PresentationforJava。该方法只需简单几步操作即可实现,同时也能够维持文档内容格式不变。下面是具体方法和示例代码。

PDF文件在电脑上如何进行编辑

PDF文件是比较常见的文件保存格式,因为PDF文件的保存格式受到很多人的欢迎。它的文件真实性很高,但是电脑上很少有软件来打开PDF文件,更何况是打开PDF文件来进行对文件的编辑。PDF编辑软件下载http://bianji.xjpdf.com/(https://www.oschina.net/action/GoToLink?urlhttp%3A%2

简单pdf文档大小压缩软件:PDF Squeezer 中文 for mac

PDFSqueezer是一款易于使用的PDF压缩工具。它通过压缩图像和删除无关信息来减小大型PDF文档的大小。这将有助于您节省带宽成本,数字存储成本和网络传输时间。只需将文件拖放到应用程序窗口即可从预定义的压缩过滤器中进行选择或创建自己批量压缩多个文件压缩

如何通过Python代码旋转PDF页面

日常处理PDF文档时,我们时常会遇到页面颠倒、很难正常阅读或打印的情况。在这种情况下,我们可以通过旋转页面来调整文档的方向。旋转时,也可以根据具体情况,选择顺时针或逆时针旋转特定的角度,以使页面内容更加清晰可读或适应特定的显示需求。这一功能可以通过PDF处理工具或者库来实现。这篇文章将介绍如何使用PDF库在Python平台上旋转文档页面。

移动端提高pdf预览清晰度

背景:移动端预览PDF文件,通用的解决方案是使用vuepdf插件,其内置pdf.js,原理是基于HTML5的标签,通过将PDF文件转换为图片或来实现对PDF文件的预览,插件好使没毛病😆,但是如果我们的需求是要在移动端预览内容很密集的文件时,预览效果就不理