使用IRONPDF 在C#中使用IronPDF將PDF轉換為JPG Curtis Chau 更新:2026年3月1日 下載 IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 LLM副本 LLM副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 使用 IronPDF 的 RasterizeToImageFiles 方法,只需 3 行程式碼即可在 C# 中將 PDF 檔案轉換為 JPG 影像。 本教學將向您展示如何提取單一頁面、批次處理整個文件以及調整品質設定以獲得專業的影像輸出。 借助IronPDF 的渲染引擎,在 C# 中將 PDF 檔案轉換為 JPG 影像變得非常簡單。 無論您是產生縮圖、建立圖像預覽,還是將整個頁面轉換為網頁顯示格式,本教學都將示範如何使用簡潔的程式碼產生高品質的 JPEG 圖像。 無論你是建立桌面應用程式還是現代.NET項目,該過程都適用。 VB .NET開發人員可以使用幾乎相同的模式應用相同的IronPDF API-本指南中的所有範例都使用 C# 和.NET 10 頂級語句,但底層方法呼叫也可以直接轉換為 VB .NET語法。 如何只用 3 行程式碼將 PDF 檔案轉換為 JPG 圖片? 在 C# 中,將 PDF 轉換為 JPG 的最直接方法是使用 IronPDF 的RasterizeToImageFiles 方法。 此方法可處理整個轉換過程,將 PDF 的每一頁轉換為單獨的影像文件,並可自訂品質設定。 除了 JPG 格式外,格式選項還包括 PNG、BMP 和 TIFF,以滿足不同的使用情境。 該庫的Chrome 渲染引擎可確保準確的視覺再現。 using IronPdf; // Load the PDF document PdfDocument pdf = PdfDocument.FromFile("input.pdf"); // Convert PDF to JPG images with default settings pdf.RasterizeToImageFiles("output_page_*.jpg"); // The * wildcard creates numbered files for each page Console.WriteLine("PDF pages converted to JPG successfully!"); using IronPdf; // Load the PDF document PdfDocument pdf = PdfDocument.FromFile("input.pdf"); // Convert PDF to JPG images with default settings pdf.RasterizeToImageFiles("output_page_*.jpg"); // The * wildcard creates numbered files for each page Console.WriteLine("PDF pages converted to JPG successfully!"); Imports IronPdf ' Load the PDF document Dim pdf As PdfDocument = PdfDocument.FromFile("input.pdf") ' Convert PDF to JPG images with default settings pdf.RasterizeToImageFiles("output_page_*.jpg") ' The * wildcard creates numbered files for each page Console.WriteLine("PDF pages converted to JPG successfully!") $vbLabelText $csharpLabel 這段程式碼示範了基本的轉換模式。 FromFile 方法將您的 PDF 載入到記憶體中,而 RasterizeToImageFiles 執行轉換。 輸出檔案名稱中的星號 (*) 用作佔位符,自動為每一頁產生順序編號的 JPG 檔案。 系統內部處理複雜的渲染,使用 IronPDF 基於 Chromium 的引擎,以確保像素級完美的渲染效果。 該引擎保留了來源文件中的 CSS 樣式和JavaScript渲染。 對於需要非同步操作的應用, IronPDF也支援多執行緒產生模式。 輸入的PDF檔案是什麼樣的? 輸出的JPG檔案是如何命名和組織的? 安裝該庫需要哪些步驟? 在.NET專案中實作 PDF 到 JPG 轉換之前,您需要透過NuGet安裝IronPDF 。 該程式庫可與.NET Framework和現代.NET版本整合。 它支援 Windows、 Linux和 macOS 環境,也適用於Docker 容器。 執行以下命令之一,將IronPDF新增到您的專案中: Install-Package IronPdf Install-Package IronPdf SHELL dotnet add package IronPdf dotnet add package IronPdf SHELL 或者,使用 Visual Studio 的套件管理器 UI 搜尋"IronPDF"並直接安裝。 安裝完成後,新增 using IronPdf; 語句即可存取所有轉換功能。 該庫會自動處理依賴項,包括影像生成所需的渲染引擎元件。 此設定適用於ASP.NET應用程式、桌面程式和Azure 雲端部署。 如何轉換特定的PDF頁面以節省時間和儲存空間? 通常情況下,您需要選擇性地轉換 PDF 頁面,而不是處理整個文件。 當您的應用程式需要特定的頁面圖像進行上傳或預覽時,這將非常有用。 IronPDF提供靈活的方法來處理單一頁面或自訂範圍。 頁面操作功能不僅限於簡單的轉換,還支援複雜的文件工作流程: using IronPdf; PdfDocument pdf = PdfDocument.FromFile("input.pdf"); // Convert only the first page to JPEG int[] pageIndexes = { 0 }; // Page indexes start at 0 pdf.RasterizeToImageFiles("first_page_*.jpg", pageIndexes, IronPdf.Imaging.ImageType.Jpeg); // Convert specific page range (pages 2-5) int[] rangeIndexes = { 1, 2, 3, 4 }; pdf.RasterizeToImageFiles("selected_*.jpg", rangeIndexes); using IronPdf; PdfDocument pdf = PdfDocument.FromFile("input.pdf"); // Convert only the first page to JPEG int[] pageIndexes = { 0 }; // Page indexes start at 0 pdf.RasterizeToImageFiles("first_page_*.jpg", pageIndexes, IronPdf.Imaging.ImageType.Jpeg); // Convert specific page range (pages 2-5) int[] rangeIndexes = { 1, 2, 3, 4 }; pdf.RasterizeToImageFiles("selected_*.jpg", rangeIndexes); Imports IronPdf Dim pdf As PdfDocument = PdfDocument.FromFile("input.pdf") ' Convert only the first page to JPEG Dim pageIndexes As Integer() = {0} ' Page indexes start at 0 pdf.RasterizeToImageFiles("first_page_*.jpg", pageIndexes, IronPdf.Imaging.ImageType.Jpeg) ' Convert specific page range (pages 2-5) Dim rangeIndexes As Integer() = {1, 2, 3, 4} pdf.RasterizeToImageFiles("selected_*.jpg", rangeIndexes) $vbLabelText $csharpLabel 此範例展示如何將第一頁提取為 JPEG 文件,然後示範如何轉換特定範圍。 頁面索引從零開始,因此可以輕鬆選擇要處理的特定內容。 當處理只需要轉換特定部分的大型 PDF 文件時,這種方法非常有效。 該庫還支援轉換前的頁面旋轉和變換。 哪些影像品質選項能達到專業效果? 控制輸出品質會直接影響檔案大小和視覺清晰度。 IronPDF透過配置選項提供對 JPEG 品質和解析度的精確控制。 該庫支援多種圖像格式,並提供壓縮設定以獲得最佳效果。 了解 DPI 設定有助於在檔案大小和視覺保真度之間取得適當的平衡: using IronPdf; using IronSoftware.Drawing; PdfDocument pdf = PdfDocument.FromFile("document.pdf"); // 1. Creating high-quality images for print at 300 DPI AnyBitmap[] images = pdf.ToBitmapHighQuality(300, false); int pageCount = 1; foreach (AnyBitmap image in images) { string outputPath = $"high_quality_{pageCount}.jpg"; image.SaveAs(outputPath); pageCount++; } // 2. For web thumbnails, use lower DPI settings pdf.RasterizeToImageFiles("thumbnail_*.jpg", IronPdf.Imaging.ImageType.Jpeg, 150, true); using IronPdf; using IronSoftware.Drawing; PdfDocument pdf = PdfDocument.FromFile("document.pdf"); // 1. Creating high-quality images for print at 300 DPI AnyBitmap[] images = pdf.ToBitmapHighQuality(300, false); int pageCount = 1; foreach (AnyBitmap image in images) { string outputPath = $"high_quality_{pageCount}.jpg"; image.SaveAs(outputPath); pageCount++; } // 2. For web thumbnails, use lower DPI settings pdf.RasterizeToImageFiles("thumbnail_*.jpg", IronPdf.Imaging.ImageType.Jpeg, 150, true); Imports IronPdf Imports IronSoftware.Drawing Dim pdf As PdfDocument = PdfDocument.FromFile("document.pdf") ' 1. Creating high-quality images for print at 300 DPI Dim images As AnyBitmap() = pdf.ToBitmapHighQuality(300, False) Dim pageCount As Integer = 1 For Each image As AnyBitmap In images Dim outputPath As String = $"high_quality_{pageCount}.jpg" image.SaveAs(outputPath) pageCount += 1 Next ' 2. For web thumbnails, use lower DPI settings pdf.RasterizeToImageFiles("thumbnail_*.jpg", IronPdf.Imaging.ImageType.Jpeg, 150, True) $vbLabelText $csharpLabel 此程式碼範例展示如何使用兩種品質設定將 PDF 頁面轉換為圖像。 第一種方法透過呼叫 pdf.ToBitmapHighQuality(300, false) 來產生用於列印的高品質影像。 這樣可以以 300 DPI 渲染頁面,並返回內存中的 AnyBitmap 對象,因此需要循環來保存每個圖像。 點陣圖渲染能夠保持精確的細節,滿足專業印刷的需求。 相較之下,第二種方法使用 pdf.RasterizeToImageFiles() 快速產生 150 DPI 的網頁縮圖。 較低的DPI和較高的畫質可以帶來更好的照片內容壓縮效果。 對於灰階轉換,還有其他最佳化選項可用。 如何有效率地處理整個PDF文件? 當您需要轉換整個 PDF 檔案時, IronPDF會自動處理多頁文件。 以下範例處理所有頁面,同時建立一個有條理的輸出目錄。 對於大型文檔,批次處理可以保持系統響應速度: using IronPdf; PdfDocument pdf = PdfDocument.FromFile("manual.pdf"); // Create output directory if needed string outputDir = "converted_images"; if (!Directory.Exists(outputDir)) { Directory.CreateDirectory(outputDir); } // Convert all pages with custom naming string outputPath = Path.Combine(outputDir, "page_*.jpg"); pdf.RasterizeToImageFiles(outputPath); Console.WriteLine($"Converted {pdf.PageCount} pages to JPG format"); using IronPdf; PdfDocument pdf = PdfDocument.FromFile("manual.pdf"); // Create output directory if needed string outputDir = "converted_images"; if (!Directory.Exists(outputDir)) { Directory.CreateDirectory(outputDir); } // Convert all pages with custom naming string outputPath = Path.Combine(outputDir, "page_*.jpg"); pdf.RasterizeToImageFiles(outputPath); Console.WriteLine($"Converted {pdf.PageCount} pages to JPG format"); Imports IronPdf Dim pdf As PdfDocument = PdfDocument.FromFile("manual.pdf") ' Create output directory if needed Dim outputDir As String = "converted_images" If Not Directory.Exists(outputDir) Then Directory.CreateDirectory(outputDir) End If ' Convert all pages with custom naming Dim outputPath As String = Path.Combine(outputDir, "page_*.jpg") pdf.RasterizeToImageFiles(outputPath) Console.WriteLine($"Converted {pdf.PageCount} pages to JPG format") $vbLabelText $csharpLabel 這段程式碼可以自動處理文件轉換,並為產生的 JPEG 影像建立一個有序的輸出目錄。 無論是轉換兩頁備忘錄或一百頁報告,流程都適用。 透過 IronPDF 的渲染,每一頁都會變成單獨的 JPG 文件,保持原始佈局。 視窗設定可確保在不同頁面尺寸下正確縮放。 對於包含多種字體、特殊字元或國際語言的文檔,渲染引擎能夠準確地保留格式。 該庫在轉換過程中處理嵌入式影像和向量圖形。 處理受密碼保護的 PDF 檔案時,正確的身份驗證可以實現轉換存取權限。 記憶體和效能優化方面有哪些需要改進的地方? 為了在處理大型 PDF 文件時獲得更好的效能,請考慮以下記憶體管理方法。 IronPDF大部分最佳化工作都在內部完成,但適當的資源處置可確保穩定運作。 該庫支援非同步操作,以提高 UI 應用程式的響應速度: using IronPdf; // Use using statement for automatic disposal using (PdfDocument pdf = PdfDocument.FromFile("large_file.pdf")) { int batchSize = 10; int pageCount = pdf.PageCount; for (int i = 0; i < pageCount; i += batchSize) { int endIndex = Math.Min(i + batchSize - 1, pageCount - 1); var batchPages = new List<int>(); for (int j = i; j <= endIndex; j++) { batchPages.Add(j); } pdf.RasterizeToImageFiles($"batch_{i}_*.jpg", batchPages.ToArray()); } } // Automatically disposes resources using IronPdf; // Use using statement for automatic disposal using (PdfDocument pdf = PdfDocument.FromFile("large_file.pdf")) { int batchSize = 10; int pageCount = pdf.PageCount; for (int i = 0; i < pageCount; i += batchSize) { int endIndex = Math.Min(i + batchSize - 1, pageCount - 1); var batchPages = new List<int>(); for (int j = i; j <= endIndex; j++) { batchPages.Add(j); } pdf.RasterizeToImageFiles($"batch_{i}_*.jpg", batchPages.ToArray()); } } // Automatically disposes resources Imports IronPdf ' Use Using block for automatic disposal Using pdf As PdfDocument = PdfDocument.FromFile("large_file.pdf") Dim batchSize As Integer = 10 Dim pageCount As Integer = pdf.PageCount For i As Integer = 0 To pageCount - 1 Step batchSize Dim endIndex As Integer = Math.Min(i + batchSize - 1, pageCount - 1) Dim batchPages As New List(Of Integer)() For j As Integer = i To endIndex batchPages.Add(j) Next pdf.RasterizeToImageFiles($"batch_{i}_*.jpg", batchPages.ToArray()) Next End Using ' Automatically disposes resources $vbLabelText $csharpLabel 這種方法將大型轉換任務分解成可管理的小塊,防止記憶體使用過多。 using 語句確保正確清理資源,同時批次處理可維持處理大量文件的效能。 對於數百頁的 PDF 文件,這種方法可以顯著提高系統穩定性。 IronPDF性能指南涵蓋了應對高負載的其他技巧。 使用Azure Functions或AWS Lambda時,特定的配置可以提高雲端效能。 對於 Linux 部署而言,記憶體管理尤其重要。 自訂日誌記錄選項有助於監控轉換進度並識別高容量管道中的瓶頸。 高品質的PDF轉影像是什麼樣的? @ 哪些高階轉換技術最適合生產系統? 對於需要可靠錯誤處理和監控的生產環境,應實施完整的轉換管道。 企業應用需要可靠性和詳細的日誌。 以下模式針對每頁錯誤恢復中常見的生產挑戰: using IronPdf; using System.Drawing.Imaging; bool ConvertWithErrorHandling(string pdfPath, string outputDir) { try { if (!File.Exists(pdfPath)) throw new FileNotFoundException("PDF file not found", pdfPath); var options = new ChromePdfRenderOptions { RenderDelay = 500 // Wait for JavaScript }; using (PdfDocument pdf = PdfDocument.FromFile(pdfPath)) { Console.WriteLine($"Processing {pdf.PageCount} pages from {Path.GetFileName(pdfPath)}"); for (int i = 0; i < pdf.PageCount; i++) { try { string pageOutput = Path.Combine(outputDir, $"page_{i + 1}.jpg"); pdf.RasterizeToImageFiles(pageOutput, new[] { i }); } catch (Exception ex) { Console.WriteLine($"Error converting page {i + 1}: {ex.Message}"); // Continue with other pages } } return true; } } catch (Exception ex) { Console.WriteLine($"Conversion failed: {ex.Message}"); return false; } } ConvertWithErrorHandling("input.pdf", "output_pages"); using IronPdf; using System.Drawing.Imaging; bool ConvertWithErrorHandling(string pdfPath, string outputDir) { try { if (!File.Exists(pdfPath)) throw new FileNotFoundException("PDF file not found", pdfPath); var options = new ChromePdfRenderOptions { RenderDelay = 500 // Wait for JavaScript }; using (PdfDocument pdf = PdfDocument.FromFile(pdfPath)) { Console.WriteLine($"Processing {pdf.PageCount} pages from {Path.GetFileName(pdfPath)}"); for (int i = 0; i < pdf.PageCount; i++) { try { string pageOutput = Path.Combine(outputDir, $"page_{i + 1}.jpg"); pdf.RasterizeToImageFiles(pageOutput, new[] { i }); } catch (Exception ex) { Console.WriteLine($"Error converting page {i + 1}: {ex.Message}"); // Continue with other pages } } return true; } } catch (Exception ex) { Console.WriteLine($"Conversion failed: {ex.Message}"); return false; } } ConvertWithErrorHandling("input.pdf", "output_pages"); Imports IronPdf Imports System.Drawing.Imaging Imports System.IO Function ConvertWithErrorHandling(pdfPath As String, outputDir As String) As Boolean Try If Not File.Exists(pdfPath) Then Throw New FileNotFoundException("PDF file not found", pdfPath) End If Dim options As New ChromePdfRenderOptions With { .RenderDelay = 500 ' Wait for JavaScript } Using pdf As PdfDocument = PdfDocument.FromFile(pdfPath) Console.WriteLine($"Processing {pdf.PageCount} pages from {Path.GetFileName(pdfPath)}") For i As Integer = 0 To pdf.PageCount - 1 Try Dim pageOutput As String = Path.Combine(outputDir, $"page_{i + 1}.jpg") pdf.RasterizeToImageFiles(pageOutput, {i}) Catch ex As Exception Console.WriteLine($"Error converting page {i + 1}: {ex.Message}") ' Continue with other pages End Try Next Return True End Using Catch ex As Exception Console.WriteLine($"Conversion failed: {ex.Message}") Return False End Try End Function ConvertWithErrorHandling("input.pdf", "output_pages") $vbLabelText $csharpLabel 這段可用於生產環境的程式碼包含了錯誤處理、日誌記錄功能和自訂渲染設定。 此實作支援對大量 JavaScript 內容進行渲染延遲,並在處理過程中提供詳細的回饋。 對於企業部署而言,這種可靠的錯誤處理機制至關重要。 這些安全功能可確保在生產環境中安全地處理文件。 如何比較PDF轉影像的各種方法? 不同的轉換方法適用於不同的需求。 下表比較了 IronPDF C# API 中可用的主要方法: 方法 用例 輸出類型 DPI 控制 最適合 RasterizeToImageFiles 基於文件的批次轉換 JPG、PNG、BMP、TIFF 是的 批量處理,磁碟輸出 ToBitmapHighQuality 記憶體中的高解析度影像 AnyBitmap 數組 是的(300+ DPI) 列印品質輸出 頁面索引過載 選擇性頁面轉換 JPG、PNG 是的 單頁或範圍提取 使用 using 進行批次循環 大型文件處理 JPG 是的 記憶體受限環境 下一步您將如何進行 PDF 轉 JPG 轉換? IronPDF簡化了 C# 中的 PDF 到 JPG 轉換,將其從複雜的挑戰變成了一項簡單的任務。 它具備全尺寸渲染功能、可自訂的壓縮選項,並能高效處理單頁和整個文檔,為專業 PDF 影像擷取提供了所有必要的工具。 該庫保留了白色背景元素和準確的文字渲染,確保轉換後的圖像保持其原始外觀。 如需了解更多 PDF 操作功能,請查閱完整的 API 參考和功能概述。 此庫功能豐富,包括PDF 建立、編輯功能、文件組織和安全選項。 無論您需要數位簽章、表單處理、浮水印或元資料管理, IronPDF都能提供完整的解決方案。 渲染引擎支援包括 CSS3 和JavaScript框架在內的現代 Web 標準。 為了符合無障礙標準,請探索PDF/A 轉換和 PDF/UA 支援。 您可以先免費試用IronPDF 的全部功能,或購買授權進行商業部署。 該程式庫支援 PNG、TIFF 和 BMP 等其他影像格式,使其成為滿足您所有 PDF 轉影像需求的通用解決方案。 尋求社群支援的開發者可以在Stack Overflow 、 .NET GitHub儲存庫和NuGet套件頁面上找到有價值的見解。 專業的支援選項可確保成功實施,而完整的文件和程式碼範例可加快開發速度。 該程式庫的跨平台相容性和雲端就緒架構使其適用於現代部署場景。 透過定期更新和安全性補丁, IronPDF仍然是企業級 PDF 處理需求的可靠選擇。 常見問題解答 如何使用 IronPDF 在 VB.NET 中將 PDF 轉換為 JPG? IronPDF 提供了一種在 VB.NET 中將 PDF 文件轉換為 JPG 影像的簡單方法。借助 IronPDF 強大的引擎,您可以使用簡潔的程式碼產生高品質的 JPEG 影像。 是否可以使用 IronPDF 一次將多個 PDF 頁面轉換為 JPG 格式? 是的,IronPDF支援批次將PDF頁面轉換為JPG影像。您可以有效率地將整個PDF檔案轉換為一系列JPG影像,非常適合需要同時處理多個頁面的專案。 在VB.NET中將PDF轉換為JPG影像時,我能否控制JPG影像的品質? IronPDF 讓您在轉換過程中控制 JPG 影像的品質。您可以設定所需的圖像質量,以確保輸出滿足您的特定需求,無論是用於高解析度顯示器還是優化的網頁應用。 在VB.NET使用IronPDF進行PDF轉JPG轉換有哪些好處? IronPDF憑藉其用戶友好的API,簡化了PDF到JPG的轉換過程。它確保高品質的影像輸出,支援批量處理,並能無縫整合到VB.NET專案中,是開發人員的可靠選擇。 IronPDF 是否可以同時用於桌面和網頁應用程式的 PDF 轉 JPG 轉換? 當然,IronPDF 功能全面,可以整合到桌面應用程式和現代 .NET Web 專案中,方便在不同平台上進行 PDF 到 JPG 的轉換。 我是否需要編寫複雜的程式碼才能使用 IronPDF 將 PDF 轉換為 JPG? 不,IronPDF 提供了一個直覺的 API,只需編寫少量簡潔的程式碼即可將 PDF 轉換為 JPG。這使得各種技能水平的開發人員都能輕鬆上手。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新2026年3月1日 如何在.NET中使用IronPDF創建PDF檔案(C#教程) 發現用於創建C# PDF文件的有效方法,提升您的編碼技能並簡化您的項目。立即閱讀文章! 閱讀更多 更新2026年2月27日 如何在C#中合併PDF文件 使用 IronPDF 合併 PDF 文件。學習如何使用簡單的 VB.NET 程式碼將多個 PDF 文件合併成一個文檔。包含逐步範例。 閱讀更多 更新2026年3月1日 C# PDFWriter教程,適用於.NET 10開發者 通過這個面向開發人員的逐步指南,學習如何使用C# PDFWriter高效創建PDF。閱讀本文以提高您的技能! 閱讀更多 使用 IronPDF 在 .NET Core 中建立 PDF 生成器如何使用IronPDF構建ASP.NET Co...