如何向 DOCX C# 添加表格 | IronWord

Java PDF 轉圖像文件

This article was translated from English: Does it need improvement?
Translated
View the article in English

使用 IronPDF 的 toBufferedImages 方法在 Java 中將 PDF 文件轉換為 JPEG、PNG 或 TIFF 等影像格式。 只需載入一個 PDF 文件,呼叫 toBufferedImages 取得 BufferedImage 物件的列表,然後使用 ImageIO 將每個影像寫入磁碟。

快速入門:在 Java 中將 PDF 轉換為圖像

  1. 將IronPDF依賴項新增至您的 Maven 專案: ```xml :title=pom.xml

    com.ironsoftware ironpdf 2022.11.0
  2. 載入您的PDF文件:

    PdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));
    PdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));
    JAVA
  3. 轉換為影像並儲存:
    List<BufferedImage> images = pdf.toBufferedImages();
    for (int i = 0; i < images.size(); i++) {
    ImageIO.write(images.get(i), "PNG", new File("page_" + i + ".png"));
    }
    List<BufferedImage> images = pdf.toBufferedImages();
    for (int i = 0; i < images.size(); i++) {
    ImageIO.write(images.get(i), "PNG", new File("page_" + i + ".png"));
    }
    JAVA

什麼是PDF轉影像轉換?為什麼需要進行這種轉換?

將 PDF 頁面轉換為 JPEG、PNG 或 TIFF 等影像檔案在軟體開發上有許多應用。 您可能需要特定 PDF 頁面的圖像用於其他地方,但您唯一的選擇是截圖。 傳統的Java程式碼使得這種轉換幾乎不可能實現。 IronPDF用直接的方法解決了這個難題。

PDF 轉影像對於許多商業場景至關重要:為文件管理系統建立縮圖、為 Web 應用程式產生預覽影像、擷取簡報的視覺內容,或轉換文件以便在不支援 PDF 渲染的裝置上顯示。 IronPDF透過提供強大的API來簡化這項複雜的任務,該 API 可在內部處理所有渲染複雜性。

什麼是IronPDF for Java?它如何提供幫助?

IronPDF for Java是一個函式庫,可用於建立、準備和管理 PDF 檔案。 開發人員使用它來讀取、產生和修改 PDF 文件,而無需 Adob​​e Acrobat。 IronPDF支援自訂頁首/頁尾、簽名、附件、密碼和安全機制。 它提供完整的多線程和非同步支持,以提高性能。 IronPDF可與基於 Maven 的專案搭配使用。

該程式庫在HTML 轉 PDF 方面表現出色,使開發人員能夠在創建 PDF 時利用他們現有的 HTML/CSS 知識。 除了基本轉換功能外, IronPDF還提供新增背景和前景建立和填寫表單以及套用自訂浮水印等進階功能。 對於 PDF 轉影像轉換, IronPDF提供了一個無縫的 API,在保持品質的同時,也能靈活地選擇輸出格式。

以下我們將討論如何使用 Java 將 PDF 頁面轉換為 JPEG、JPG 或 PNG 等影像格式。

開始之前我需要具備哪些先決條件?

在開始之前,請確保滿足以下先決條件:

  1. Java 已安裝,並在環境變數中設定了路徑。 請參閱這份Java安裝指南
  2. 已安裝 Java IDE(Eclipse 或 IntelliJ)。 下載EclipseIntelliJ
  3. Maven 已整合到您的 IDE 中。請參閱此Maven 安裝教學
  4. 為商業用途配置的許可證密鑰

如何安裝適用於 Java 的IronPDF ?

一旦滿足所有先決條件,安裝IronPDF就很簡單。 有關詳細的設定說明,請參閱入門文件

要使用IronPDF for Java,您需要一個整合開發環境 (IDE)。本文使用 JetBrains IntelliJ IDEA 來安裝相依性並執行範例。

首先,打開 JetBrains IntelliJ IDEA 並建立一個新的 Maven 專案。

IntelliJ IDEA 新專案 dialog with Maven selected and Java 16 SDK configured for IronPDF installation

建立一個新的 Maven 項目

一個新的視窗出現。 輸入項目名稱,然後按一下"完成"。

IDE 新專案 dialog with 'IronPDF' entered as project name and Desktop location specified

新項目名稱

點擊"完成"後,新項目將打開,預設顯示 pom.xml。 我們需要這個檔案來為IronPDF新增 Maven 依賴項。

IntelliJ IDEA showing Maven pom.xml with IronPDF project configuration and Java 10 compiler settings

新專案

將以下依賴項新增至您的 pom.xml 檔案。您也可以從IronPDF的 Maven 倉庫頁面下載 API JAR 檔案。 對於雲端部署,請查看我們關於 AWS、Azure 或 Google Cloud 的指南。

<dependencies>
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>2022.11.0</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.36</version>
    </dependency>
</dependencies>
<dependencies>
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>2022.11.0</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.36</version>
    </dependency>
</dependencies>
XML

將依賴項新增至 pom.xml 後,右上角會出現一個小圖示。

Maven pom.xml file showing IronPDF Java dependencies configuration in IntelliJ IDEA

Maven依賴項

點擊此圖示安裝 Maven 依賴項。 安裝過程需要幾分鐘,具體時間取決於您的網路連線速度。 安裝完成後,請查閱完整的API 文件以了解所有可用功能。

如何使用IronPDF將 PDF 文件轉換為圖像?

使用IronPDF for Java,只需幾行程式碼即可將 PDF 轉換為 JPEG 等影像格式。 它將輸入的 PDF 文件轉換為輸出的圖像流。 toBufferedImages 方法傳回一個按頁碼升序排列的 List<BufferedImage> 物件清單。

IronPDF可以將 PDF 文件轉換為圖像,也可以直接從 URL 和 HTML 建立圖像。 這種靈活性使其成為各種應用場景的理想選擇,從建立文件預覽到為內容管理系統產生縮圖。

如何將現有的PDF文件轉換為影像?

此範例將整個 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 {
        // Load the PDF document from a file
        PdfDocument instance = PdfDocument.fromFile(Paths.get("business_plan.pdf"));

        // Convert the PDF pages into a list of BufferedImage objects
        List<BufferedImage> extractedImages = instance.toBufferedImages();

        // Set image conversion options
        ToImageOptions rasterOptions = new ToImageOptions();
        rasterOptions.setImageMaxHeight(800);
        rasterOptions.setImageMaxWidth(500);

        // Convert the pages using the specified options
        List<BufferedImage> sizedExtractedImages = instance.toBufferedImages(rasterOptions, PageSelection.allPages());

        int pageIndex = 1;
        // Loop through each image and write to the file system
        for (BufferedImage extractedImage : sizedExtractedImages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
        }
    }
}
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 {
        // Load the PDF document from a file
        PdfDocument instance = PdfDocument.fromFile(Paths.get("business_plan.pdf"));

        // Convert the PDF pages into a list of BufferedImage objects
        List<BufferedImage> extractedImages = instance.toBufferedImages();

        // Set image conversion options
        ToImageOptions rasterOptions = new ToImageOptions();
        rasterOptions.setImageMaxHeight(800);
        rasterOptions.setImageMaxWidth(500);

        // Convert the pages using the specified options
        List<BufferedImage> sizedExtractedImages = instance.toBufferedImages(rasterOptions, PageSelection.allPages());

        int pageIndex = 1;
        // Loop through each image and write to the file system
        for (BufferedImage extractedImage : sizedExtractedImages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
        }
    }
}
JAVA

輸出結果將儲存到專案的 assets 資料夾中(執行程式之前建立此資料夾),編號從 1 開始,每頁 PDF 的編號遞增。 應用進階功能,例如壓縮影像或在輸出檔案中添加浮水印

File explorer showing 11 PNG image files generated from PDF conversion in IronPDF assets folder

PDF 轉影像輸出

如何將URL轉換為PDF,然後再轉換為圖片?

IronPDF會直接將 HTML 轉換為 PDF,然後將產生的 PDF 的每一頁轉換為圖片。 此功能可讓您將網頁內容擷取為影像,可用於存檔網頁、建立文件截圖或從基於 Web 的儀表板產生視覺化報告。

本範例使用亞馬遜網站。程式將 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.util.List;

public class Main {
    public static void main(String [] args) throws IOException {
        // Generate a PDF from a URL
        PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");

        // Convert the PDF pages into a list of BufferedImage objects
        List<BufferedImage> extractedImages = pdf.toBufferedImages();

        // Set image conversion options
        ToImageOptions rasterOptions = new ToImageOptions();
        rasterOptions.setImageMaxHeight(800);
        rasterOptions.setImageMaxWidth(500);

        // Convert the pages using the specified options
        List<BufferedImage> sizedExtractedImages = pdf.toBufferedImages(rasterOptions, PageSelection.allPages());

        int pageIndex = 1;
        // Loop through each image and write to the file system
        for (BufferedImage extractedImage : sizedExtractedImages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
        }
    }
}
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.util.List;

public class Main {
    public static void main(String [] args) throws IOException {
        // Generate a PDF from a URL
        PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");

        // Convert the PDF pages into a list of BufferedImage objects
        List<BufferedImage> extractedImages = pdf.toBufferedImages();

        // Set image conversion options
        ToImageOptions rasterOptions = new ToImageOptions();
        rasterOptions.setImageMaxHeight(800);
        rasterOptions.setImageMaxWidth(500);

        // Convert the pages using the specified options
        List<BufferedImage> sizedExtractedImages = pdf.toBufferedImages(rasterOptions, PageSelection.allPages());

        int pageIndex = 1;
        // Loop through each image and write to the file system
        for (BufferedImage extractedImage : sizedExtractedImages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(extractedImage, "PNG", new File(fileName));
        }
    }
}
JAVA
File explorer showing 5 PNG files generated from PDF conversion using IronPDF Java library

PDF 轉影像輸出

透過修改 ToImageOptions 實例上的以下呼叫來調整影像解析度:

rasterOptions.setImageMaxHeight(800);
rasterOptions.setImageMaxWidth(500);
rasterOptions.setImageMaxHeight(800);
rasterOptions.setImageMaxWidth(500);
JAVA

這些代碼用於在調用 toBufferedImage 時調整生成的圖像的寬度和高度。 有關進階渲染選項和設置,請參閱我們的PDF 生成設定指南。

將特定頁面轉換為圖像

有時您只需要特定頁面,而不是整個文件。 IronPDF提供靈活的頁面選擇選項:

// Convert only page 3 to an image
List<BufferedImage> singlePage = instance.toBufferedImages(rasterOptions, PageSelection.singlePage(3));

// Convert pages 2 through 5
List<BufferedImage> pageRange = instance.toBufferedImages(rasterOptions, PageSelection.pageRange(2, 5));

// Convert first and last pages only
PageSelection customPages = new PageSelection();
customPages.add(0); // First page (0-indexed)
customPages.add(instance.getPageCount() - 1); // Last page
List<BufferedImage> selectedPages = instance.toBufferedImages(rasterOptions, customPages);
// Convert only page 3 to an image
List<BufferedImage> singlePage = instance.toBufferedImages(rasterOptions, PageSelection.singlePage(3));

// Convert pages 2 through 5
List<BufferedImage> pageRange = instance.toBufferedImages(rasterOptions, PageSelection.pageRange(2, 5));

// Convert first and last pages only
PageSelection customPages = new PageSelection();
customPages.add(0); // First page (0-indexed)
customPages.add(instance.getPageCount() - 1); // Last page
List<BufferedImage> selectedPages = instance.toBufferedImages(rasterOptions, customPages);
JAVA

本指南的主要內容有哪些?

本指南示範如何使用IronPDF for Java 將 PDF 檔案轉換為影像。 產生的影像保留了原始 PDF 中的頁碼和文件名稱。 IronPDF支援多種影像格式,包括 JPEG、JPG、TIFF 等。

IronPDF讓您可以完全控制輸出影像解析度。 有關使用 Java 進行 PDF 操作的更多信息,請參閱IronPDF Java 文件。 有關 PDF 轉圖像轉換的更多詳細信息,請參閱IronPDF PDF 轉圖像示例

IronPDF for Java 可免費用於開發,但商業用途需要許可證。 請造訪IronPDF Java 許可頁面,以了解更多許可資訊。

常見問題解答

如何在 Java 中將 PDF 檔案轉換為 PNG 影像?

您可以使用 IronPDF 的 toBufferedImages 方法將 PDF 檔案轉換為 PNG 圖檔。首先,使用 PdfDocument.fromFile() 載入 PDF 文件,然後調用 toBufferedImages() 來取得代表每頁的 BufferedImage 物件清單。最後,使用 ImageIO.write() 將每個 BufferedImage 儲存為 PNG 檔案。

PDF 轉換支援哪些影像格式?

IronPDF 支援將 PDF 文件轉換成各種影像格式,包括 JPEG、PNG 和 TIFF。toBufferedImages 方法會返回 BufferedImage 物件,這些物件可以 Java 的 ImageIO 類支援的任何格式儲存。

我可以將 PDF 的特定頁面轉換成影像,而不是整個文件嗎?

是的,IronPDF 允許您透過存取 toBufferedImages() 所返回清單中的個別 BufferedImage 物件來轉換特定頁面。您可以只遍歷您需要的頁面,並將它們儲存為獨立的影像檔案。

PDF 轉換為圖像的常見用例有哪些?

IronPDF 的 PDF 至圖片轉換常用於在文件管理系統中建立縮圖、為 Web 應用程式產生預覽圖片、為簡報擷取視覺內容,以及轉換文件以便在不支援 PDF 渲染的裝置上顯示。

如何將 IronPDF 加入我的 Maven 專案?

若要在您的 Maven 專案中加入 IronPDF,請在您的 pom.xml 檔案中加入下列相依性:com.ironsoftwareironpdf2022.11.0

我可以直接將 URL 轉換成圖片嗎?

是的,您可以使用 IronPDF 將 URL 轉換成圖片,方法是先使用 renderUrlAsPdf 方法將 URL 渲染成 PDF,然後再使用 toBufferedImages 方法將 PDF 轉換成圖片。

PDF 轉換為影像是否能維持品質?

IronPDF 透過內部處理所有複雜的渲染,在 PDF 轉換為影像的過程中維持高品質。該函式庫提供強大的 API,可確保轉換後的影像保留原始 PDF 頁面的視覺保真度。

Darrius Serrant
全棧軟件工程師 (WebOps)

Darrius Serrant 擁有邁阿密大學計算機科學學士學位,目前任職於 Iron Software 的全栈 WebOps 市場營銷工程師。從小就迷上編碼,他認為計算既神秘又可接近,是創意和解決問題的完美媒介。

在 Iron Software,Darrius 喜歡創造新事物,並簡化複雜概念以便於理解。作為我們的駐場開發者之一,他也自願教學生,分享他的專業知識給下一代。

對 Darrius 來說,工作令人滿意因為它被重視且有實際影響。

準備好開始了嗎?
版本: 2026.3 剛剛發布
Still Scrolling Icon

還在捲動嗎?

想要快速證明?
執行範例 觀看您的 HTML 變成 PDF。