跳過到頁腳內容
使用IRONPDF

如何在C#中將PDF轉換為圖像

將PDF轉換為C#中的圖像是非常常見的。 您可能需要縮略圖、網頁預覽甚至檔案副本。 使用IronPDF,這個過程變得簡單易行。 這要歸功於其RasterizeToImageFiles方法,該方法允許您將PDF文件轉換為圖像文件,如PNG圖像、JPEG圖像、TIFF圖像或BMP,只需幾行代碼。

在本文中,我們將逐步介紹將PDF轉換為PNG、JPG、TIFF或BMP所需的所有知識。您將看到如何處理整個文檔、特定頁面範圍,甚至是以PDF形式呈現的網頁。 到最後,您將擁有在.NET項目中從PDF生成高質量圖像的可靠工作流程。

為什麼在C#中將PDF文檔轉換為圖片?

將PDF頁面轉換為圖像在現代.NET Framework或.NET應用程序中具有實用性。文檔管理系統需要縮略圖以實現快速可視導航,而Web應用程序則從圖像格式中受益,以提高瀏覽器的兼容性和更快的加載速度。

此外,將PDF轉換為圖像確保您的PDF在任何平台上看起來都正確,即使是那些PDF庫支持有限的平台。 無論您處理的是多個頁面還是單個頁面,IronPDF都可以在幾行代碼中處理這個過程,而無需擔心錯誤或複雜的渲染。

開始使用IronPDF

首先,在Visual Studio中創建一個新的C#控制台應用程序,並通過NuGet包管理器安裝IronPDF:

Install-Package IronPdf

如何將PDF轉換為圖片在C#中:圖1 - 通過NuGet包管理器控制台安裝IronPDF

IronPDF支持.NET Framework、.NET Core和.NET 5+,確保您的PDF到圖像工作流程與您使用的任何版本的.NET兼容。 安裝完成後,您就可以開始在程序中將PDF頁面轉換為圖像文件。

如何將PDF頁面轉換為圖像文件?

將PDF轉換為圖像的最簡單方法是加載文檔並調用RasterizeToImageFiles方法:

using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        // Load an existing PDF document
        var pdfDocument = PdfDocument.FromFile("report.pdf");
        // Convert all pages to PNG images
        pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.png");
    }
}
using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        // Load an existing PDF document
        var pdfDocument = PdfDocument.FromFile("report.pdf");
        // Convert all pages to PNG images
        pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.png");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

此代碼將PDF的每個頁面轉換為單獨的PNG文件。文件名模式中的星號 (*) 自動替換為頁面號。 為了正確管理資源,請將PdfDocument放在using語句中以確保處置。

運行代碼後,我們可以在輸出目錄中看到,儘管我們的PDF中包含多個頁面,但代碼未指定要轉換哪些頁面,因此每個頁面都被保存為獨立的圖像文件:

如何將PDF轉換為圖片在C#中:圖2 - 將所有頁面轉換為圖片的例子

要轉換特定的頁面,請指定頁面範圍:

// Specify the page indexes for conversion
int[] pageIndexes = new[] { 0, 1, 2 };
// Convert pages 1-3 to JPG images
pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.jpg", pageIndexes);
// Specify the page indexes for conversion
int[] pageIndexes = new[] { 0, 1, 2 };
// Convert pages 1-3 to JPG images
pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.jpg", pageIndexes);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

請注意,頁面索引從0開始,因此第一頁的pageIndex為0。

如何將PDF轉換為圖片在C#中:圖3 - 指定的PDF頁面轉換為圖片

如何控制圖像質量?

圖像質量直接影響文件大小和視覺清晰度。 IronPDF允許您通過DPI(每英寸點數)設置進行控制:

// High-quality conversion at 300 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\high_quality_*.png", DPI: 300);
// Web-optimized at 150 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\web_*.jpg", DPI: 150);
// High-quality conversion at 300 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\high_quality_*.png", DPI: 300);
// Web-optimized at 150 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\web_*.jpg", DPI: 150);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

默認96 DPI適用於基本預覽,但可以將其增加到150-300 DPI以獲得打印質量的圖像。 更高的DPI值會產生更清晰的圖像,但文件大小也會更大。

如何將PDF轉換成圖片在C#中:圖4 - 高質量轉換的PDF與原始文件並排

支持哪些圖像格式?

IronPDF通過ImageType參數支持多種圖像格式:

// Convert to different formats
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.png", IronPdf.Imaging.ImageType.Png);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.jpg", IronPdf.Imaging.ImageType.Jpeg);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.tiff", IronPdf.Imaging.ImageType.Tiff);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.bmp", IronPdf.Imaging.ImageType.Bitmap);
// Convert to different formats
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.png", IronPdf.Imaging.ImageType.Png);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.jpg", IronPdf.Imaging.ImageType.Jpeg);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.tiff", IronPdf.Imaging.ImageType.Tiff);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.bmp", IronPdf.Imaging.ImageType.Bitmap);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

選擇PNG用於需要透明度的圖像,JPEG用於照片和Web內容,TIFF用於檔案存檔,BMP則在需要非壓縮圖像時使用。 IronPDF API參考提供有關所有支持的ImageType選項的詳細信息。

如何處理高級情境?

IronPDF在處理複雜的PDF到圖像轉換場景方面表現出色。 一個特別有用的功能是通過PDF渲染直接將網頁轉換為圖像。 有關更多HTML轉換選項,請查看HTML到PDF轉換指南

// Convert a webpage to images
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument webPdf = renderer.RenderUrlAsPdf("https://apple.com");
webPdf.RasterizeToImageFiles(@"C:\images\webpage_*.png", DPI: 200);
// Convert a webpage to images
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument webPdf = renderer.RenderUrlAsPdf("https://apple.com");
webPdf.RasterizeToImageFiles(@"C:\images\webpage_*.png", DPI: 200);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

這種方法能夠完美捕捉動態網頁內容,保持所有的樣式和JavaScript渲染的元素。

要批處理多個PDF,請實施一個簡單的循環:

string[] pdfFiles = Directory.GetFiles(@"C:\pdfs", "*.pdf");
foreach (string pdfPath in pdfFiles)
{
    using (var pdf = PdfDocument.FromFile(pdfPath))
    {
        string outputPath = Path.Combine(@"C:\images", 
            Path.GetFileNameWithoutExtension(pdfPath) + "_*.png");
        pdf.RasterizeToImageFiles(outputPath);
    }
}
string[] pdfFiles = Directory.GetFiles(@"C:\pdfs", "*.pdf");
foreach (string pdfPath in pdfFiles)
{
    using (var pdf = PdfDocument.FromFile(pdfPath))
    {
        string outputPath = Path.Combine(@"C:\images", 
            Path.GetFileNameWithoutExtension(pdfPath) + "_*.png");
        pdf.RasterizeToImageFiles(outputPath);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

結論

IronPDF使得在C#中將PDF文檔轉換為圖像文件變得輕而易舉。 無論您是創建縮略圖、PNG圖像、JPEG圖像,還是處理多個頁面的TIFF轉換,RasterizeToImageFiles方法都能處理一切。

您可以自定義輸出格式,通過DPI設置來控制圖像質量,甚至可以將作為PDF呈現的網頁轉換成圖片,所有這一切都不需要複雜的設置。欲了解更多高級的PDF功能,請查看IronPDF的詳細文檔,其中包含示例代碼和說明,以便探索IronPDF的全部功能。

準備好在您的C#應用程序中實現PDF到圖片的轉換了嗎? 開始免費試用以獲得無限制的轉換和優先支持。

常見問題解答

如何使用 C# 將 PDF 檔案轉換為圖片?

您可以使用 IronPDF 庫,它提供了一個 RasterizeToImageFiles 方法,只需極少的編碼工作即可將 PDF 文件轉換為各種圖像格式,例如 PNG、JPEG、TIFF 或 BMP。

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

IronPDF 支援將 PDF 檔案轉換為多種影像格式,包括 PNG、JPEG、TIFF 和 BMP。

為什麼需要在 C# 中將 PDF 檔案轉換為圖像?

將 PDF 檔案轉換為圖像可用於建立縮圖、網頁預覽或存檔等用途,在這些情況下,圖像比 PDF 文件更合適。

IronPDF 是否容易使用,能夠將 PDF 檔案轉換為影像?

是的,IronPDF 的設計對開發者非常友好,它允許你使用其 RasterizeToImageFiles 函數,只需幾行程式碼即可將 PDF 檔案轉換為映像。

IronPDF是否支援將多頁PDF轉換為影像?

是的,IronPDF 可以處理多頁 PDF 文檔,讓您可以將每一頁轉換為單獨的映像檔。

IronPDF 可以將 PDF 文件轉換為高解析度影像嗎?

IronPDF 可讓您指定輸出影像的分辨率,因此您可以從 PDF 文件產生高解析度影像。

IronPDF 與 .NET 10 相容嗎?

是的——IronPDF 與 .NET 10 專案完全相容,在 .NET 10 應用程式中開箱即用地支援所有典型功能,例如 PDF 到影像轉換、HTML 渲染和 RasterizeToImageFiles API,無需任何變通方法。

IronPDF 支援哪些 .NET 版本和平台進行 PDF 轉影像轉換?

IronPDF 支援 .NET 10、9、8、7、6、5、.NET Core、.NET Standard 和 .NET Framework。它可在 Windows、macOS 和 Linux 系統上運行,包括容器化環境。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。