使用 IRONPDF

如何在C#中裁剪PDF文件

已更新 2024年3月3日
分享:

在 C# 中,裁剪和修整 PDF 頁面對開發人員來說總是充滿挑戰。在 PDF 文件中繪製一個裁剪框以圈出您所需的區域,然後只保存該部分並不容易。幸運的是,IronPDF Library for .NET in C# 中存在解決方案。

The IronPDF .NET Library

IronPDF .NET 庫

IronPDF 是一個 C# .NET 函式庫,允許開發人員創建、編輯和操作 PDF 文件。由於其 PDF 生成功能,這在 C# 開發人員中非常受歡迎,使他們無需安裝 Adobe Acrobat 即可處理 PDF 文件。IronPDF for .NET 還允許在不同格式之間進行轉換,例如 HTML轉PDF, URL轉PDF,和 圖像轉為PDF它還支持添加 自訂頁首和頁尾, 數位簽章, 註釋 和 附件, 使用者和擁有者密碼,以及其他安全選項。IronPDF 具有快速的 Chromium 引擎,提供一流的渲染體驗。它還提供完整的 多執行緒非同步支援.

先決條件

開始之前,請安裝 Visual Studio 2022 (最新版本) 需要下載並安裝。Visual Studio 是建置 C# 應用程式必需的工具。安裝將會設定 .NET 環境,之後本地系統將準備好製作 PDF 到 JPG 的轉換器。你可以在這裡下載 Visual Studio 連結.

IronPDF 安裝

有多種方式可以安裝 IronPDF:

  1. 您可以從使用 Visual Studio 創建的 C# 專案中的 NuGet 套件管理器解決方案下載 IronPDF。通過工具訪問 NuGet 套件管理器或右鍵單擊解决方案資源管理器。在瀏覽中搜尋 IronPDF 套件,然後安裝它。

  2. 另一種安裝 IronPDF 的方法是直接下載。 來自 NuGet 網站.

使用 IronPDF 在 C&num 中裁剪 PDF 文件

以下逐步過程將幫助您裁剪 PDF 頁面。這不是一個簡單的過程,但我們可以利用一些方法來完成這個任務。我們開始吧!

第一步:載入 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 對象,並使用該對象存儲需要裁剪的特定頁面。 CopyPage 方法。只需傳入需要裁剪的頁面的索引即可。這裡,代碼示例將裁剪 PDF 文件的第一頁。

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

步驟 3:將已載入的 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 圖像文件

現在,特定頁面已從原始文件中分離出來,可以進行裁剪。

第四步:檢索載入頁面的尺寸

要裁剪 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 屬性獲取頁面尺寸值的實例。完成。! 現在讓我們進入下一步,創建一個自訂裁剪框。

第五步:設置自定義 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文件。然後, PdfPaperSize 屬性值設置為 Custom。最後,使用在第4步中獲取的尺寸設置自定義頁邊距。

設置寬度為原始頁面的寬度,並減少高度為原始頁面長度的1/4。這樣頁面就可以作為矩形形狀的媒體框來使用內容。

注意:您可以使用 ForcePaperSize = true 以確保自定義尺寸被應用。要設置自定義邊距,請訪問此 程式碼範例.

步驟 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#

現在讓我們使用 IronWord for .NET 儲存文件 保存為 方法。

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、進行轉換等。要了解更多有關IronPDF for .NET的信息並訪問更多功能 操作 PDF 檔案 或如何 設定自訂PDF頁面大小.

IronPDF .NET 庫是免費供開發使用,但需要 授權 供商業使用。從這裡下載強大的 IronPDF library for .NET。 目前專案的ZIP檔案連結 並試一試!

< 上一頁
PDF 轉換器 .NET(開發者教程)
下一個 >
如何在 ASP .NET 中創建 PDF

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >