Java 提取PDF文档中的图片

在之前的文章中写了如何从PDF文档中读取文本内容,这篇文章接着介绍如何从PDF文档中读取图片。

使用组件:

Spire.PDF for JAVA

在使用以下代码前,你需要下载Spire.PDF for JAVA包并解压缩,然后从lib文件夹下,导入Spire.Pdf.jar包和Spire.Common.jar包到你的Java应用程序中:

Java 提取PDF文档中的图片

ExtractImagesFromPDF.java代码如下:

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;

public class ExtractImagesFromPDF {

	public static void main(String[] args) throws IOException {
		//创建PdfDocument实例
		PdfDocument doc = new PdfDocument();
		//加载PDF文件
        doc.loadFromFile("input.pdf");

        int index = 0;
        
        //遍历PDF文件中的页面
        for (PdfPageBase page : (Iterable<PdfPageBase>) doc.getPages()) { 
        	//提取页面中的图片并保存至本地文件夹
            for (BufferedImage image : page.extractImages()) {
            	File output = new File("images/" + String.format("Image_%d.png", index++));
                ImageIO.write(image, "PNG", output);
            }
        }        
	}
}

效果图:

Java 提取PDF文档中的图片