如何将 PDF 栅格化为图像

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

查克尼特·宾

对 PDF 文件进行光栅化处理,就是将其转换成 JPEG 或 PNG 等基于像素的图像格式。这一过程将 PDF 的每一页转化为静态图像,其中的内容由像素表示。光栅化具有多种优势,包括能够显示 PDF 内容、生成缩略图、执行图像处理以及促进安全的文档共享。

使用 IronPDF,您可以轻松地以编程方式将 PDF 转换为图像。无论您是需要在应用程序中加入 PDF 渲染功能、生成图像预览、执行基于图像的操作,还是需要增强文档安全性,IronPDF 都能满足您的需求。


适用于PDF的C# NuGet库

安装使用 NuGet

Install-Package IronPdf
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

适用于PDF的C# NuGet库

安装使用 NuGet

Install-Package IronPdf
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

开始在您的项目中使用IronPDF,并立即获取免费试用。

第一步:
green arrow pointer

查看 IronPDFNuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。

适用于PDF的C# NuGet库 nuget.org/packages/IronPdf/
Install-Package IronPdf

考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip

手动安装到你的项目中

下载DLL

将 PDF 栅格化为图像示例

RasterizeToImageFiles "方法用于从 PDF 文档中导出图像。该方法可用于 PdfDocument 对象,无论您是在本地导入 PDF 文档文件还是从 HTML 文件, HTML 字符串,或者 网页地址.

请注意
FileNamePattern 参数需要使用 .png、.jpg 或 .tif 等文件扩展名。

提示
星号 (*) 中包含的字符将被替换为相应的页码。

:path=/static-assets/pdf/content-code-examples/how-to/rasterize-pdf-to-images-rasterize.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png");
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

输出文件夹

输出文件夹

如果希望在输出图像中看到表单字段的值,请在将 PDF 转换为图像之前将其压平,或在该方法的 Flatten 参数中输入 true。使用 "Flatten "方法后,将无法检测到表单。

在以下文章中了解如何以编程方式填写和编辑 PDF 表单:"如何填写和编辑 PDF 表格."


将 PDF 栅格化为图像 高级示例

让我们来了解一下 RasterizeToImageFiles 方法的其他参数。

指定图像类型

该方法提供的另一个参数允许你指定输出图像的文件类型。我们支持 BMP、JPEG、PNG、GIF、TIFF 和 SVG 格式。每种类型都有相应的方法,可以直接从 PdfDocument 对象中调用,输出相应的图像类型。以下是可用的方法:

  • ToBitmap`:光栅化 (渲染) 将 PDF 转换成单独的 IronSoftware.Drawing.AnyBitmap 对象,每页一个 Bitmap。
  • ToJpegImages`:将 PDF 页面渲染为 JPEG 文件并保存到磁盘。
  • ToPngImages:将 PDF 页面渲染为 PNG 文件 (便携式网络图形) 文件并将其保存到磁盘中。
  • TiffImages`:将 PDF 页面渲染为单页 TIFF 文件 (标签 图像文件格式 / Tif) 文件并将其保存到磁盘中。
  • ToMultiPageTiffImage`:将 PDF 页面渲染为单个多页 TIFF 文件并保存到磁盘。
  • SaveAsSvg`:将 PDF 文档转换为 SVG 格式并保存到指定的文件路径。

  • ToSvgString:将 PDF 文档的特定页面转换为 SVG 格式,并以字符串形式返回。
:path=/static-assets/pdf/content-code-examples/how-to/rasterize-pdf-to-images-image-type.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png", IronPdf.Imaging.ImageType.Png);
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

指定 DPI

使用默认的 96 DPI 时,输出图像可能会显得模糊。为了减少这种现象,必须指定更高的 DPI 值。

:path=/static-assets/pdf/content-code-examples/how-to/rasterize-pdf-to-images-dpi.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export images from PDF with DPI 150
pdf.RasterizeToImageFiles("wikipage_*.png", DPI: 150);
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

指定页面索引

还可以指定要光栅化为图像的 PDF 文档页数(s).在下面的示例中,将输出 PDF 文档第 1-3 页的图像。

:path=/static-assets/pdf/content-code-examples/how-to/rasterize-pdf-to-images-page-indexes.cs
using IronPdf;
using System.Linq;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export images from PDF page 1_3
pdf.RasterizeToImageFiles("wikipage_*.png", Enumerable.Range(1, 3));
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

指定图像尺寸

将 PDF 文档转换为图像时,您可以灵活定制输出图像的高度和宽度。所提供的高度和宽度值代表最大尺寸,同时确保保留原始文档的纵横比。例如,如果是纵向 PDF 文档,指定的高度值将是精确的,而宽度值可进行调整以保持正确的纵横比。

:path=/static-assets/pdf/content-code-examples/how-to/rasterize-pdf-to-images-image-dimensions.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png", 500, 500);
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

输出图像的规格

输出图像的尺寸使用宽度乘高度格式指定,表示为宽度 x 高度。

从 PDF 肖像中光栅化图像
从横向 PDF 文件光栅化图像

查克尼特·宾

软件工程师

Chaknith 是开发者中的福尔摩斯。他第一次意识到自己可能在软件工程方面有前途,是在他出于乐趣做代码挑战的时候。他的重点是 IronXL 和 IronBarcode,但他为能帮助客户解决每一款产品的问题而感到自豪。Chaknith 利用他从直接与客户交谈中获得的知识,帮助进一步改进产品。他的轶事反馈不仅仅局限于 Jira 票据,还支持产品开发、文档编写和市场营销,从而提升客户的整体体验。当他不在办公室时,他可能会在学习机器学习、编程或徒步旅行。