PDF檔案和圖片檔案,這是兩種完全不一樣的格式,可是有的時候這兩種格式卻是有相互轉換的需要,大家在作業中遇到PDF檔案轉圖片檔案的問題時是怎么解決的呢?你們使用的方法簡單方便嗎?如果很麻煩的話,不妨來了解一下這篇文章分享的方法哦,本文將介紹如何通過Java應用程式快速高效地將PDF轉為圖片格式,一起來看看吧!
- 將整個 PDF 檔案轉換為多個圖片
- 將指定 PDF 頁面轉換為圖片
代碼編譯環境:
IntelliJ IDEA 2019(jdk 1.8.0)
PDF Jar包:Free Spire.PDF for Java 5.1.0
1.引入jar包
匯入方法1:
手動引入,將Free Spire.PDF for Java下載到本地,解壓,找到lib檔案夾下的Spire.PDF.jar檔案,在IDEA中打開如下界面,將本地路徑中的jar檔案引入Java程式:
匯入方法2:如果您想通過 Maven安裝,則可以在 pom.xml 檔案中添加以下代碼匯入 JAR 檔案,
<repositories>
<repository>
<id>com.e-iceblue</id>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
將整個 PDF 檔案轉換為多個圖片
僅需三步即可將整個 PDF 檔案轉換為多個圖片,詳細步驟如下:
- 創建 PdfDocument 類的物件,并通過 PdfDocument.loadFromFile(String filename) 方法加載 PDF 檔案,
- 回圈遍歷 PDF 每一頁,并通過 PdfDocument.saveAsImage(int pageIndex, PdfImageType type, int dpiX, int dpiY) 方法將 PDF 頁面保存為圖片格式,
- 指定圖片格式為 .png 格式,
完整代碼
Java
import com.spire.pdf.*; import com.spire.pdf.graphics.PdfImageType; 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類的物件 PdfDocument pdf = new PdfDocument(); //加載PDF檔案 pdf.loadFromFile("都江堰.pdf"); //遍歷PDF每一頁,保存為圖片 for (int i = 0; i < pdf.getPages().getCount(); i++) { //將頁面保存為圖片,并設定DPI解析度 BufferedImage image = pdf.saveAsImage(i, PdfImageType.Bitmap,500,500); //將圖片保存為png格式 File file = new File( String.format(("ToImage-img-%d.png"), i)); ImageIO.write(image, "PNG", file); } pdf.close(); } }

將指定 PDF 頁面轉換為圖片
以下是實作格式轉換的主要步驟:
- 創建 PdfDocument 類的實體,
- 通過 PdfDocument.loadFromFile(String filename) 方法加載 PDF 檔案,
- 呼叫 PdfDocument.saveAsImage(int pageIndex, PdfImageType type, int dpiX, int dpiY) 方法將 PDF 指定頁面保存為圖片,
- 設定圖片格式為 .png 格式,
完整代碼
Java
import com.spire.pdf.*; import com.spire.pdf.graphics.PdfImageType; 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類的實體 PdfDocument pdf = new PdfDocument(); //加載PDF檔案 pdf.loadFromFile("都江堰.pdf"); //將PDF第1頁保存為圖片,并設定圖片DPI解析度 BufferedImage image= pdf.saveAsImage(0, PdfImageType.Bitmap,500,500); //保存為png格式 ImageIO.write(image, "PNG", new File("ToPNG.png")); } }
效果圖

—本文完—
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/547874.html
標籤:其他
