
如何在.NET中使用IronPDF创建PDF文件
Cropping and Trimming PDF Pages using IronPDF Library in C#
裁剪和修剪 PDF 页面对 C# 开发人员来说一直是一个具有挑战性的任务。 在 PDF 文档中围绕您所需的区域绘制裁剪框,然后仅保存该部分并不简单。 使用 NuGet 包管理器在 C# 项目中下载 IronPDF.
IronPDF 适用于 .NET 库
IronPDF 适用于 .NET PDF 库 是一个 C# .NET 库,允许开发人员创建、编辑和操作 PDF 文件。 由于其 PDF 生成能力,C# 开发人员中非常受欢迎,它允许他们在没有安装 Adobe Acrobat 的情况下处理 PDF 文件。 IronPDF for .NET 还允许格式之间的转换,如 HTML 到 PDF 转换、URL 到 PDF 转换 和 图像到 PDF 转换。
它还支持添加 自定义页眉和页脚、PDF 中的数字签名、注释和 添加/删除 PDF 附件、用户和所有者密码,以及其他安全选项。 IronPDF 具有快速的 Chromium 引擎,可提供卓越的渲染体验。 它还提供完整的 多线程支持 和 异步功能。
前提条件
在开始之前,需要下载并安装 Visual Studio 2022(最新版本)。 Visual Studio 是构建 C# 应用程序所必需的。安装将设置 .NET 环境,之后本地系统将准备好创建 PDF 到 JPG 转换器。 您可以在此 Visual Studio 下载页面 下载 Visual Studio。
通过使用节点包管理器在Node.js中安装所需的IronPDF包以启用IronPDF功能。
有多种方式可以安装 IronPDF:
- 您可以从 C# 项目中的 NuGet 包管理器解决方案下载 IronPDF,该项目是使用 Visual Studio 创建的。 通过工具或右键单击解决方案资源管理器访问 NuGet 包管理器。 浏览 IronPDF 包并安装它。
- 另一种安装 IronPDF 的方法是直接从 IronPDF NuGet 页面 下载。
Crop PDF File using IronPDF in C#
以下分步过程将帮助您裁剪 PDF 页面。 这并不简单,但我们可以利用一些方法来完成此任务。 让我们开始吧!
步骤 1:加载 PDF 文档
要将PDF文件从本地位置加载到此项目中,IronPDF提供了一个FromFile方法,位于PdfDocument类中。 以下代码示例演示了如何打开现有的 PDF 文件:
// Load an existing PDF document from a file
PdfDocument pdf = PdfDocument.FromFile("Input.pdf");' Load an existing PDF document from a file
Dim pdf As PdfDocument = PdfDocument.FromFile("Input.pdf")加载的文档如下:
示例 PDF 条码文件
步骤 2:从 PDF 文档加载特定页面
现在文件已打开以进行编辑,创建一个单独的PdfDocument对象,并使用CopyPage方法存储需要裁剪的特定页面。 只需传递需要裁剪的页面索引。 此代码示例将裁剪 PDF 文件的第一页。
// Copy the first page of the loaded PDF document
PdfDocument loadedPage = pdf.CopyPage(0);' Copy the first page of the loaded PDF document
Dim loadedPage As PdfDocument = pdf.CopyPage(0)步骤 3:将加载的 PDF 页面转换为图像
将 PDF 页面转换为高分辨率图像 方法提供了将 PDF 页面保存为高分辨率图像文件的功能。以下代码可帮助将选定页面转换为图像以进行裁剪。
// Convert the PDF page to a high-resolution PNG image
loadedPage.RasterizeToImageFiles(@"C:\Image\Page_to_be_Cropped.png");' Convert the PDF page to a high-resolution PNG image
loadedPage.RasterizeToImageFiles("C:\Image\Page_to_be_Cropped.png")现在,该页面将转换为图像文件。输出为高质量的 PNG 图像。
输出高质量的 PNG 图像文件
现在,特定页面已与原始文档分离,并准备进行裁剪。
步骤 4:检索加载页面的尺寸
为了裁剪 PDF,必须创建一个具有特定宽度和高度的裁剪框。 为此,将使用ChromePdfRenderer类创建一个新文档。 它提供了根据需要自定义 PDF 页面大小的选项,并且数据在各页面之间均匀分布。
在创建ChromePdfRenderer之前,首先获取步骤2中加载页面的尺寸。然后,在设置自定义页面大小以创建裁剪框时使用这些尺寸。 以下代码示例将帮助您获取页面的宽度和高度:
// Retrieve dimensions of the loaded PDF page
PdfPagesCollection pages = loadedPage.Pages;
PdfPage pdfPage = pages[0];
// Dimensions retrieved in mm
float width = pdfPage.Width;
float height = pdfPage.Height;' Retrieve dimensions of the loaded PDF page
Dim pages As PdfPagesCollection = loadedPage.Pages
Dim pdfPage As PdfPage = pages(0)
' Dimensions retrieved in mm
Dim width As Single = pdfPage.Width
Dim height As Single = pdfPage.Height首先,使用PdfPagesCollection检索加载的PDF文件中的总页数。 然后,将该页面传递给Height属性中获取页面尺寸值。 全部完成了! 现在,让我们进行下一步,创建自定义裁剪框。
步骤 5:设置自定义 PDF 页面大小
以下代码将帮助创建一个自定义 PDF 纸张大小,将作为裁剪框,以不同的页面段裁剪内容。
// Create a ChromePdfRenderer to set up a custom paper size
ChromePdfRenderer pdfRenderer = new ChromePdfRenderer();
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom;
pdfRenderer.RenderingOptions.SetCustomPaperSizeInMillimeters(width, height / 4);
pdfRenderer.RenderingOptions.ForcePaperSize = true;' Create a ChromePdfRenderer to set up a custom paper size
Dim pdfRenderer As New ChromePdfRenderer()
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom
'INSTANT VB WARNING: Instant VB cannot determine whether both operands of this division are integer types - if they are then you should use the VB integer division operator:
pdfRenderer.RenderingOptions.SetCustomPaperSizeInMillimeters(width, height / 4)
pdfRenderer.RenderingOptions.ForcePaperSize = True在上述代码中,创建了一个ChromePdfRenderer,用于创建一个新的PDF文档。 然后,设置Custom。 最后,使用步骤 4 中检索到的尺寸设置自定义页面边距。
将宽度设置为原始页面的宽度,并将高度减少原始页面长度的四分之一。 这使得页面可以像矩形形状的媒体框那样工作。
注意:您可以使用ForcePaperSize = true确保应用了自定义尺寸。 有关设置自定义边距的更多信息,请访问此 自定义 PDF 边距指南。
步骤 6:使用 HTML 创建一个新文档
现在,这最后一步将使用自定义页面大小 PDF 和从加载页面保存的图像创建一个新文档。
// Render HTML to a PDF document with a custom paper size using the cropped image
var croppedPdf = pdfRenderer.RenderHtmlAsPdf("<img src='Page_to_be_Cropped.png'/>", @"C:\Image\");' Render HTML to a PDF document with a custom paper size using the cropped image
Dim croppedPdf = pdfRenderer.RenderHtmlAsPdf("<img src='Page_to_be_Cropped.png'/>", "C:\Image\")现在,让我们使用SaveAs方法保存文档。
// Save the newly cropped document
croppedPdf.SaveAs("Cropped.pdf");' Save the newly cropped document
croppedPdf.SaveAs("Cropped.pdf")输出
裁剪后的 PDF 文件
从输出中可以看到,单个图像现在分割为多个具有自定义修剪框的页面。 您可以使用以下代码复制所需的特定页面:
// Copy and save a specific page from the cropped document
croppedPdf.CopyPage(1).SaveAs("Cropped_Page1.pdf");' Copy and save a specific page from the cropped document
croppedPdf.CopyPage(1).SaveAs("Cropped_Page1.pdf")结论
本文演示了如何通过使用 .NET Framework 的 IronPDF 创建页面形式的虚拟矩形裁剪框以裁剪 PDF 文档。 RasterizeToImageFiles方法有助于将页面转换为图像,然后用于创建一个像素完美的PDF文档。
IronPDF 还提供其他 PDF 工具,可以旋转 PDF 页面、更改 PDF 文本、设置边距、格式化 PDF、转换它们等等。 要了解有关 IronPDF for .NET 的更多信息,并访问其他功能 使用 IronPDF 操作 PDF 文件 或如何 自定义 PDF 纸张大小。
IronPDF for .NET 库是免费的开发使用,但商业用途需要 授权。 从此 IronPDF ZIP 下载 获取功能强大的 .NET 的 IronPDF 库并试试看!

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。
相关文章


