使用IRONPDF

如何在C#中裁剪PDF文件

更新 2024年三月3日
分享:

对于 C# 开发人员来说,裁剪和修整 PDF 页面始终是一项具有挑战性的任务。 在 PDF 文档的所需区域周围画一个裁剪框,然后只保存该部分并不简单。 幸运的是,IronPDF Library for .NET in C# 提供了一种解决方案。

IronPDF for .NET 库

IronPDF .NET PDF 库是一个 C# .NET 库,允许开发人员创建、编辑和处理 PDF 文件。 它在 C# 开发人员中非常流行,因为它具有生成 PDF 的功能,可以让开发人员在没有安装 Adobe Acrobat 的情况下处理 PDF 文件。 IronPDF for .NET 还可以在不同格式之间进行转换,如HTML 转换为 PDF, 将 URL 转换为 PDF图像到 PDF 的转换.

它还支持添加自定义页眉和页脚, PDF 中的数字签名、注释和从 PDF 中添加/删除附件翻译的内容还包括:.NET、Java、Python 或 Node js 的用户和所有者密码,以及其他安全选项。 IronPdf 拥有快速的 Chromium 引擎,可提供卓越的渲染体验。 它还提供完整的多线程支持异步功能.

先决条件

在开始之前,Visual Studio 2022(最新版本)需要下载和安装 Visual Studio 是构建 C# 应用程序所必需的。安装将设置 .NET 环境,之后本地系统就可以制作 PDF 到 JPG 转换器了。 您可以从以下网址下载 Visual StudioVisual Studio 下载页面.

IronPDF 安装

安装 IronPDF 有多种方法:

  1. 您可以从使用 Visual Studio 创建的 C# 项目中的 NuGet Package Manager 解决方案中下载 IronPDF。 通过 "工具 "或右键单击 "解决方案资源管理器 "访问 NuGet 包管理器。 浏览 IronPDF 软件包并安装。

  2. 安装 IronPDF 的另一种方法是直接下载来自 IronPDF NuGet 页面.

使用IronPDF在C#中裁剪PDF文件

以下步骤将帮助您裁剪 PDF 页面。 这并不简单,但我们可以利用一些方法来完成这项任务。 让我们开始吧!

步骤 1:加载 PDF 文档

要将 PDF 文件从本地加载到该项目中,IronPDF 提供了一个从文件方法中的PDFDocument类。 下面的代码示例演示了如何打开现有的 PDF 文件:

PdfDocument pdf = PdfDocument.FromFile("Input.pdf");
PdfDocument pdf = PdfDocument.FromFile("Input.pdf");
Dim pdf As PdfDocument = PdfDocument.FromFile("Input.pdf")
VB   C#

加载的文件如下:

如何在 C# 中裁剪 PDF 文件,图 1:PDF 条形码文件示例

PDF 条形码文件示例

步骤 2:从 PDF 文档加载特定页面

现在文件已打开供编辑,请创建一个单独的 PdfDocument 对象,并使用复制页面方法。 只需传递需要裁剪的页面索引即可。 在此,代码示例将裁剪 PDF 文档的第一页。

PdfDocument loadedPage = pdfDocument.CopyPage(0);
PdfDocument loadedPage = pdfDocument.CopyPage(0);
Dim loadedPage As PdfDocument = pdfDocument.CopyPage(0)
VB   C#

第 3 步:将加载的 PDF 页面转换为图像

"(《世界人权宣言》)将 PDF 页面转换为高分辨率图像方法提供了将 PDF 页面保存为高分辨率图像文件的功能。以下代码有助于将所选页面转换为图像,以便进行裁剪。

loadedPage.RasterizeToImageFiles(@"C:\Image\Page_to_be_Cropped.png");
loadedPage.RasterizeToImageFiles(@"C:\Image\Page_to_be_Cropped.png");
loadedPage.RasterizeToImageFiles("C:\Image\Page_to_be_Cropped.png")
VB   C#

现在,页面将被转换为图像文件。输出为高质量的 PNG 图像。

如何在 C# 中裁剪 PDF 文件,图 2:输出高质量 PNG 图像文件

输出高质量的 PNG 图像文件

现在,特定页面已从原始文档中分离出来,可以进行裁剪。

第 4 步:获取加载页面的尺寸

为了裁剪 PDF,有必要创建一个具有一定宽度和高度的裁剪框。 为此,将使用ChromePdfRenderer类。 它提供了根据需要定制 PDF 页面大小的选项,数据在各页之间平均分割。

在创建 "ChromePdfRenderer "之前,首先在步骤 2 中获取加载页面的尺寸。然后,在设置自定义页面尺寸时使用这些尺寸来创建裁剪框。 以下代码示例将帮助您获取页面的宽度和高度:

PdfPagesCollection pages = loadedPage.Pages;
PdfPage pdfPage = pages[0];
// Dimensions retrieved in mm
float width = pdfPage.Width;
float height = pdfPage.Height;
PdfPagesCollection pages = loadedPage.Pages;
PdfPage pdfPage = pages[0];
// Dimensions retrieved in mm
float width = pdfPage.Width;
float height = pdfPage.Height;
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
VB   C#

首先,使用以下命令获取已加载 PDF 文件的总页数PDFPagesCollection. 然后,将该页面传递给PDFPage从页面的 WidthHeight 属性获取页面尺寸值的实例。 全部完成! 现在,让我们进入下一步,创建自定义裁剪框。

第 5 步:设置自定义 PDF 页面大小

以下代码将帮助创建自定义 PDF 纸张大小,该大小将用作裁剪框,以裁剪不同页面段的内容。

ChromePdfRenderer pdfRenderer = new ChromePdfRenderer();
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom;
pdfRenderer.RenderingOptions.SetCustomPaperSizeinMilimeters(width, height/4);

pdfRenderer.RenderingOptions.ForcePaperSize = true;
ChromePdfRenderer pdfRenderer = new ChromePdfRenderer();
pdfRenderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Custom;
pdfRenderer.RenderingOptions.SetCustomPaperSizeinMilimeters(width, height/4);

pdfRenderer.RenderingOptions.ForcePaperSize = true;
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.SetCustomPaperSizeinMilimeters(width, height/4)

pdfRenderer.RenderingOptions.ForcePaperSize = True
VB   C#

在上述代码中,创建了一个 "ChromePdfRenderer",用于创建一个新的 PDF 文档。 然后,纸张大小属性值设置为 "自定义"。 最后,使用步骤 4 中获取的尺寸设置自定义页边距。

将宽度设置为原始页面的宽度,高度减少原始页面长度的 1/4。 这就使页面成为一个矩形的内容媒体框。

注意:您可以使用 ForcePaperSize = true 来确保应用自定义尺寸。 如需设置自定义页边距,请访问此处自定义 PDF 页边距指南.

步骤 6:使用 HTML 创建新文档

现在,最后一步将使用自定义页面大小的 PDF 和从加载页面中保存的图像创建一个新文档。

var croppedPdf = pdfRenderer.RenderHtmlAsPdf("< src='Page_to_be_Cropped.png'/>", @"C:\Image\");
var croppedPdf = pdfRenderer.RenderHtmlAsPdf("< src='Page_to_be_Cropped.png'/>", @"C:\Image\");
Dim croppedPdf = pdfRenderer.RenderHtmlAsPdf("< src='Page_to_be_Cropped.png'/>", "C:\Image\")
VB   C#

现在,让我们使用保存为方法。

croppedPdf.SaveAs("Cropped.pdf");
croppedPdf.SaveAs("Cropped.pdf");
croppedPdf.SaveAs("Cropped.pdf")
VB   C#

输出

如何在 C# 中裁剪 PDF 文件,图 3:裁剪后的 PDF 文件

裁剪过的 PDF 文件

从输出结果中可以看到,通过创建的自定义裁剪框,一张图片现在被分成了五页。 您可以使用以下代码复制您需要的特定页面:

croppedPdf.CopyPage(1).SaveAs("Cropped.pdf");
croppedPdf.CopyPage(1).SaveAs("Cropped.pdf");
croppedPdf.CopyPage(1).SaveAs("Cropped.pdf")
VB   C#

结论

本文演示了如何使用 IronPDF for .NET Framework 在页面方面创建虚拟矩形裁剪框来裁剪 PDF 文档。 "(《世界人权宣言》)光栅化图像文件在翻译过程中,翻译人员可以使用 "图像转换 "方法将页面转换为图像,然后用于创建像素完美的 PDF 文档。

IronPDF 还提供其他 PDF 工具,可以旋转 PDF 页面、更改 PDF 文本、设置页边距、格式化 PDF、转换 PDF 等。 要了解有关 IronPDF for .NET 的更多信息,并获取其他功能,请访问使用 IronPDF 操作 PDF 文件或如何自定义 PDF 纸张大小.

IronPDF .NET 库可免费用于开发,但需要商业使用许可. 从此处下载功能强大的 .NET IronPDF 库IronPDF ZIP 下载试一试!

< 前一页
PDF 转换器 .NET(开发者教程)
下一步 >
如何在ASP .NET中创建PDF

准备开始了吗? 版本: 2024.12 刚刚发布

免费NuGet下载 总下载量: 11,781,565 查看许可证 >