Java PDF 轉換為圖像檔案
1. 介紹
將 PDF 頁面/文件轉換為圖像文件,例如 JPEG 圖像、PNG 或 TIFF,在軟件行業有很多應用。有時候,你需要 PDF 文件的特定頁面的圖像以便在其他地方使用,但唯一的選擇就是截取頁面的圖像。想像你正在開發具有加載和轉換 PDF 頁面為圖像文件功能的 Java 專案,並將它們用於其他用途。使用傳統的 Java 代碼,轉換幾乎是不可能的。為此,我們將使用 IronPDF for Java.
如何在 Java 中將 PDF 轉換為圖像
- 安裝 Java 庫以將 PDF 轉換為各種圖像格式
- 利用 轉換為緩衝圖像 將 PDF 轉換成圖像的方法
- 先取得 PDF 以將 URL 轉換為圖像 將 renderUrlAsPdf 轉換為 PDF 方法
- 使用步驟 2 將 PDF 轉換為所需的圖像格式
- 使用
編寫
方法 to export each image
2. IronPDF for Java
IronPDF for Java 是一個可以讓您創建、準備以及管理 PDF 文件的套件。由於其 PDF 文件生成組件,可以讓開發人員在不需要 Adobe Acrobat 的情況下讀取 PDF、生成/創建和修改 PDF 文件,因此非常受開發人員的歡迎。IronPDF for Java 支援自定義頁眉/頁腳、簽名、附件、密碼和安全機制。改進的性能特徵之一是全面的多線程和異步支援。IronPDF for Java 適用於基於 Maven 的專案。
下方將討論如何使用 Java 將 PDF 頁面轉換為圖像格式,例如 JPEG 圖像、JPG 或 PNG 圖像。
3. 先決條件
在我們開始之前,有幾點必須具備才可進行此轉換。
系統中應已安裝 Java,並且 Java 的路徑應設置在環境變數中。請參考此 連結 要安裝Java(如果您之前沒有)。
- 應安裝良好的Java IDE,如Eclipse或IntelliJ。要下載Eclipse,請訪問此處 連結 若要下載 IntelliJ,請點擊此處 連結3. 在進行轉換之前,應將 Maven 與 IDE 整合。關於安裝 Maven 並將其整合到環境中的教程,請訪問以下網站。 連結[連結].
4. IronPDF for Java 安裝
當所有的先決條件都滿足後,安裝 IronPDF for Java 對於新手 Java 開發者來說也相當簡單且容易。
要使用 IronPDF for Java,首先你需要一個 IDE。本文將使用 JetBrains IntelliJ IDEA 來安裝所需的依賴並運行範例。
首先,打開 JetBrains IntelliJ IDEA 並創建一個新的 Maven 項目。
將出現一個新窗口。輸入專案名稱並點擊完成。
點擊完成後,將會開啟一個新專案,且預設情況下會開啟該專案中的pom.xml,這很好,因為我們需要添加IronPDF for Java的Maven依賴。
在pom.xml文件中添加以下依赖,或者您可以從以下位置下載API的JAR文件 連結.
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>com.ironsoftware</artifactId>
<version>2024.9.1</version>
</dependency>
一旦將依賴項置於pom.xml文件中,視窗右上角會出現一個小圖標。
點擊此圖標來安裝 Maven 依賴項。根據您的網絡連接情況,這只需要幾分鐘。
5. 使用 IronPDF for Java 將 PDF 檔案轉換為圖片
使用 IronPDF for Java,將 PDF 轉換成 JPEG 等圖片只需幾行代碼。它會將輸入的 PDF 文件轉換為圖片的輸出流。使用 toBufferedImages
方法,它會返回一個包含 BufferedImage
對象集合的列表,並按照頁碼的升序排列。
使用 IronPDF for Java,您不僅可以從 PDF 文檔生成圖片,還可以直接從 URL 和 HTML 創建圖片。
5.1. 將 PDF 文件轉換為圖像
在以下示例中,我們將整個 PDF 文件轉換為圖像。要開始,請編寫以下代碼並運行程序。
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;
public class main {
public static void main(String [] args) throws IOException {
PdfDocument instance = PdfDocument.fromFile(Paths.get("business plan.pdf"));
List<BufferedImage> extractedImages = instance.toBufferedImages();
ToImageOptions rasterOptions = new ToImageOptions();
rasterOptions.setImageMaxHeight(800);
rasterOptions.setImageMaxWidth(500);
List<BufferedImage> sizedExtractedImages = instance.toBufferedImages(rasterOptions, PageSelection.allPages());
int pageIndex = 1;
for (BufferedImage extractedImage : sizedExtractedImages) {
String fileName = "assets/images/" + pageIndex++ + ".png";
ImageIO.write(extractedImage, "PNG", new File(fileName));
}
}
}
以下範例的輸出將會儲存在您的專案的資產資料夾中 (在运行程序之前创建此文件夹) 從第1頁開始編號,並將對所有PDF頁面進行遞增。
5.2. 將URL轉換為PDF及PDF轉換為圖片
使用IronPDF for Java,您可以直接將HTML轉換為PDF,然後將生成的PDF的每一頁轉換為圖片。
在接下來的示例中,我們將使用亞馬遜網站。以下程式將把Amazon.com上的一個頁面渲染成PDF,然後將PDF的每一頁作為圖片存儲在assets資料夾中。
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;
public class main {
public static void main(String [] args) throws IOException {
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
List<BufferedImage> extractedImages = pdf.toBufferedImages();
ToImageOptions rasterOptions = new ToImageOptions();
rasterOptions.setImageMaxHeight(800);
rasterOptions.setImageMaxWidth(500);
List<BufferedImage> sizedExtractedImages = pdf.toBufferedImages(rasterOptions, PageSelection.allPages());
int i = 1;
for (BufferedImage extractedImage : sizedExtractedImages) {
String fileName = "assets/images/" + i++ + ".png";
ImageIO.write(extractedImage, "PNG", new File(fileName));
}
}
}
通過將對 ToImageOptions
實例的調用替換為以下內容,調整從上述示例創建的圖像分辨率:
rasterOptions.setImageMaxHeight(800);
rasterOptions.setImageMaxWidth(500);
上面的兩行程式碼調整了每個產生圖像的寬度和高度,當呼叫 toBufferedImage
時會生效。
6. 結論
這份操作指南展示了如何使用IronPDF for Java將PDF轉換成圖片。IronPDF生成的PDF頁面圖片包含頁碼和文件名稱,如前面例子中所示。IronPDF可以生成各種格式的圖片:JPEG、JPG、TIFF等等。
IronPDF也給予用戶對輸出圖片解析度的完全控制。欲了解更多關於IronPDF for Java的信息,以及獲取更多關於如何使用Java操作PDF的操作指南,請參閱以下內容 連結. 想要了解更多有關如何將 PDF 轉換為圖像的資訊,請前往此 連結IronPDF for Java 可免費用於開發目的,但商業用途需取得許可。獲取更多有關許可的資訊 這裡.