跳至页脚内容
使用 IRONOCR

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 应用程序中具有实际应用。文档管理系统需要缩略图来快速视觉导航,而网络应用程序受益于图像格式,以提高浏览器兼容性和更快的加载时间。

此外,将 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
$vbLabelText   $csharpLabel

该代码将 PDF 的每个页面转换为一个单独的 PNG 文件。文件名模式中的星号 (*) 会自动替换为页码。 为了正确管理资源,请将PdfDocumentusing语句包裹起来,以确保资源释放。

运行代码后,我们可以在输出目录中看到,即使我们的 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
$vbLabelText   $csharpLabel

请注意,页面索引从 0 开始,因此第一页的 pageIndex = 0。

C# 将 PDF 转换为图像:完整开发者指南:图像 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 值会产生更清晰的图像,但文件大小会更大。

C# 将 PDF 转换为图像:完整开发者指南:图像 4 - 高质量转换后的 PDF 与原始 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 适用于照片和网页内容,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 到图像转换了吗? 首先进行免费试用,探索 IronPDF 的全部功能,包括 30 天无水印生产环境测试。 需要大规模转换文档吗? 考虑购买商业许可证,享受无限次转换和优先支持服务。

常见问题解答

如何在C#中将PDF转换为图像?

您可以使用 IronPDF 库在 C# 中将 PDF 文件转换为图像。借助 `RasterizeToImageFiles` 方法,您可以轻松地将 PDF 文件转换为 PNG、JPEG、TIFF 或 BMP 等图像格式。

IronPDF 支持哪些图像格式的 PDF 转换?

IronPDF 在转换 PDF 时支持多种图像格式,包括 PNG、JPEG、TIFF 和 BMP。

是否可以使用 IronPDF 从 PDF 文件创建缩略图?

是的,您可以使用 IronPDF 将 PDF 文档转换为较小尺寸的图像(例如 JPEG 或 PNG),从而创建 PDF 文档的缩略图。

IronPDF能否将整个PDF文档转换为图像?

是的,IronPDF 可以将整个 PDF 文档转换为图像,允许您将每一页保存为单独的图像文件。

IronPDF 中的 `RasterizeToImageFiles` 方法是什么?

IronPDF 中的 `RasterizeToImageFiles` 方法用于将 PDF 文件转换为各种图像格式,例如 PNG、JPEG、TIFF 和 BMP,从而可以轻松创建 PDF 内容的图像表示。

为什么我需要在 C# 中将 PDF 转换为图像?

将 PDF 转换为图像可用于创建缩略图、网页预览或存档,从而更轻松地共享和显示 PDF 内容。

使用 IronPDF 将 PDF 文件转换为图像需要多少行代码?

您可以使用 IronPDF,通过 `RasterizeToImageFiles` 方法,只需几行代码即可将 PDF 转换为图像。

Kannaopat Udonpant
软件工程师
在成为软件工程师之前,Kannapat 在日本北海道大学完成了环境资源博士学位。在攻读学位期间,Kannapat 还成为了车辆机器人实验室的成员,隶属于生物生产工程系。2022 年,他利用自己的 C# 技能加入 Iron Software 的工程团队,专注于 IronPDF。Kannapat 珍视他的工作,因为他可以直接从编写大多数 IronPDF 代码的开发者那里学习。除了同行学习外,Kannapat 还喜欢在 Iron Software 工作的社交方面。不撰写代码或文档时,Kannapat 通常可以在他的 PS5 上玩游戏或重温《最后生还者》。