如何在C#中將PDF轉換為圖像
在 C# 中將 PDF 轉換為圖像是很常見的做法。 您可能需要縮圖、網頁預覽,甚至是存檔副本。 使用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
如何在 C# 中將 PDF 轉換為映像:圖 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這段程式碼會將PDF檔案的每一頁轉換成一個單獨的PNG檔案。檔案名稱中的星號(*)會自動替換為頁碼。 為了正確管理資源,請將 PdfDocument 以 using 語句包裹起來,以確保資源釋放。
運行程式碼後,我們可以在輸出目錄中看到,儘管我們的 PDF 檔案包含多個頁面,但我們的程式碼沒有指定要轉換哪些頁面,因此每個頁面都儲存為一個單獨的映像檔:
如何在 C# 中將 PDF 轉換為圖像:圖 2 - 將 PDF 轉換為圖像的範例(轉換所有頁面)
若要轉換特定頁面,請指定頁面範圍:
// 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請注意,頁面索引從 0 開始,因此第一頁的 pageIndex = 0。
如何控制影像品質?
影像品質直接影響檔案大小和視覺清晰度。 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預設的 96 DPI 適用於基本預覽,但要獲得列印品質的影像,請將其提高到 150-300 DPI。 更高的DPI值會產生更清晰的影像,但檔案大小也更大。
支援哪些圖像格式?
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對於需要透明度的圖像,請選擇 PNG 格式;對於照片和網頁內容,請選擇 JPEG 格式;對於存檔用途,請選擇 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這種方法能夠完美地捕捉動態網頁內容,保留所有樣式和 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結論
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 相容?
Yes-IronPDF 與 .NET 10 專案完全相容,可支援所有典型功能,例如 PDF 至圖片轉換、HTML 渲染,以及在 .NET 10 應用程式中開箱即用的 RasterizeToImageFiles API,而不需要變通。
IronPDF 支持哪些 .NET 版本和平台的 PDF 至图像转换?
IronPDF 支援 .NET 10、9、8、7、6、5、.NET Core、.NET Standard 及 .NET Framework。它適用於 Windows、macOS 和 Linux - 包括容器化環境。






