本文介绍如何使用spire.pdf for java压缩pdf文档中的高质量图片,文档中像素较低的图片将不会被压缩。
import com.spire.pdf.pdfdocument;
import com.spire.pdf.pdfpagebase;
import com.spire.pdf.exporting.pdfimageinfo;
public class compressimage {
public static void main(string[] args) {
//加载包含图片的pdf文档
pdfdocument doc = new pdfdocument("c:\\users\\administrator\\desktop\\images.pdf");
//设置incrementalupdate为false
doc.getfileinfo().setincrementalupdate(false);
//申明pdfpagebase变量
pdfpagebase page;
//遍历文档中的页
for (int i = 0; i < doc.getpages().getcount(); i ) {
//获取指定页
page = doc.getpages().get(i);
if (page != null) {
if(page.getimagesinfo() != null){
//遍历页中的图片
for (pdfimageinfo info: page.getimagesinfo()) {
//使用trycompressimage方法压缩高质量图片
page.trycompressimage(info.getindex());
}
}
}
}
//保存文档
doc.savetofile("output/compressed.pdf");
}
}