通过Java代码可将PDF文件格式转为png格式的图片,但是转换后的图片默认的都是带有白色背景的;如果不想图片带有背景,可在转换前通过调用PdfDocument. getConvertOptions().setPdfToImageOptions(int bgTransparentValue)方法设置图片背景透明度。下面是具体方法和步骤。
一、导入jar包
实现转换的方法需要在Java程序中导入Spire.Pdf.jar 4.11.1。可手动下载jar包,然后解压,找到lib文件夹下的jar文件,然后执行如下步骤导入:



如果是Maven程序,则在pom.xml进行如下配置,然后导入:
com.e-iceblue https://repo.e-iceblue.cn/repository/maven-public/ e-iceblue spire.pdf 4.11.1
二、代码方法
代码步骤解析:
1. 实例化 PdfDocument 类的对象。
2. 调用 PdfDocument. loadFromFile( String filename)方法。
3. 调用 PdfDocument. getConvertOptions().setPdfToImageOptions( int bgTransparentValue)方法设置转换后的图片背景透明度。
4. for循环PDF每一页,使用PdfDocument.saveAsImage( int pageIndex)方法将PDF页面保存为图片。
Java代码完整示例
import com.spire.pdf.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class PDFtoImage {
public static void main(String[] args)throws IOException {
//实例化PdfDocument类的对象,并加载PDF文档
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("input.pdf");
//设置转换后的图片背景透明度为0
pdf.getConvertOptions().setPdfToImageOptions(0);
//遍历PDF每一页,保存为图片
for (int i = 0; i < pdf.getPages().getCount(); i++)
{
BufferedImage image = pdf.saveAsImage(i);
File file = new File( String.format("ToImage%d.png", i));
ImageIO.write(image, "PNG", file);
}
pdf.close();
}
}
转换后的图片效果图:

其他注意事项
代码中的PDF文件路径和保存的图片路径为IDEA程序项目文件夹路径,如本次路径为F:\IDEAProject\Conversion_PDF\input.pdf 和F:\IDEAProject\Conversion_PDF\ToImage0.png 。文件路径可自定义。
—End—