使用 IRONPDF

如何在 C# 中從 PDF 中提取數據

介紹

從 PDF 中提取數據對於節省手動輸入時間至關重要。 本文介紹了開發人員如何使用IronPDF庫從PDF文件中提取文字和圖像

IronPDF:C# PDF 庫

IronPDF 是一個 .NET 函式庫,可用於建立、編輯和轉換 PDF 檔案。 它為開發者提供了一個易於使用的 API,用於他們的應用程式。 它是全球最受歡迎的用於建立、編輯和轉換 PDF 檔案的庫之一。 使用IronPDF,您可以快速且簡單地解決PDF相關問題。 您的文本將會針對每個文檔進行自訂您的版面將設置為便於閱讀,並且您的圖形將由隨附的 .NET 程式協助設計。

IronPDF 庫具有從 PDF 文件中提取數據的出色功能。 本文將探討如何使用IronPDF提取數據。 首先,需要創建或打開一個 C# 專案。 讓我們進入下一個部分。

在 Visual Studio 中創建或打開 C# 專案

此教學建議使用最新版本的 Visual Studio。

打開 Visual Studio 後,按照以下步驟創建一個新的 C# 專案。 如果您有現有專案要使用,那麼請跳過以下步驟,直接進入下一節。

  • 打開 Visual Studio
  • 按下「建立新專案」按鈕。

    如何從 PDF 中提取數據(使用 C#),圖 1:Visual Studio 開啟介面

    Visual Studio 開啟用戶介面

  • 從範本中選擇「C# 主控台應用程式」。

    如何從 PDF 中提取數據(C#),圖 2:創建一個新項目

    建立新專案

  • 為專案命名,然後點擊下一步按鈕。
  • 根據專案的需求選擇一個 .NET Framework,然後點擊創建按鈕。

    如何從 PDF 中提取數據,C# 圖 3:.NET Framework 選擇

    .NET Framework 選擇

    Visual Studio 現在將生成一個新的 C# .NET 專案。

安裝 IronPDF 函式庫

IronPDF 庫可以通過多種方式安裝。

使用套件管理器控制台

  • 通過轉到工具 > NuGet 套件管理員 > 套件管理員控制台來打開套件管理員控制台。
  • 運行以下命令:
Install-Package IronPdf

如何從 PDF 擷取資料 C# 中,圖 4:封裝管理器控制台選項卡中的安裝進度

在套件管理器控制台標籤中的安裝進度

安裝後,您將在 Solution Explorer 的 dependencies 區段中看到 IronPDF 依賴項,如下所示。

如何從 PDF 中提取數據(使用 C#),圖 5:在解決方案管理器中引用 IronPdf 包

在方案總管中引用 IronPdf 套件

使用 NuGet 套件管理器

另一種安裝IronPDF庫的方法是使用Visual Studio的整合NuGet套件管理器UI。

  • 從主選單中選擇工具。 從下拉菜單中懸停在「NuGet Package Manager」上,然後選擇「NuGet Package Manager Solution」。

    如何從 PDF 中提取數據在 C#,圖 6:導航至 NuGet Package Manager

    導航至 NuGet 套件管理器

  • 這將開啟 NuGet 套件管理器窗口。 前往「瀏覽」標籤,在搜尋中輸入IronPdf,然後按下 Enter。
  • 從搜尋結果中選擇 IronPDF,然後點擊“安裝”按鈕開始安裝。

    如何從PDF中提取資料在C#中,圖7:從NuGet套件管理器中安裝IronPdf套件

    從 NuGet 套件管理器安裝 IronPdf 套件

從 PDF 文件中提取數據

讓我們看一下以下代碼,了解如何使用 IronPDF 提取數據:

//Rendering PDF documents to Images or Thumbnails
using IronPdf;
using System.Drawing;

//  Extracting Image and Text content from Pdf Documents

// open a 128 bit encrypted PDF
using PdfDocument pdf = PdfDocument.FromFile("encrypted.pdf", "password");

//Get all text to put in a search index
string AllText = pdf.ExtractAllText();

//Get all Images
IEnumerable<System.Drawing.Image> AllImages = pdf.ExtractAllImages();

//Or even find the precise text and images for each page in the document
for (var index = 0; index < pdf.PageCount; index++) {
    int PageNumber = index + 1;
    string Text = pdf.ExtractTextFromPage(index);
    IEnumerable<System.Drawing.Image> Images = pdf.ExtractImagesFromPage(index);
    ///...
}
//Rendering PDF documents to Images or Thumbnails
using IronPdf;
using System.Drawing;

//  Extracting Image and Text content from Pdf Documents

// open a 128 bit encrypted PDF
using PdfDocument pdf = PdfDocument.FromFile("encrypted.pdf", "password");

//Get all text to put in a search index
string AllText = pdf.ExtractAllText();

//Get all Images
IEnumerable<System.Drawing.Image> AllImages = pdf.ExtractAllImages();

//Or even find the precise text and images for each page in the document
for (var index = 0; index < pdf.PageCount; index++) {
    int PageNumber = index + 1;
    string Text = pdf.ExtractTextFromPage(index);
    IEnumerable<System.Drawing.Image> Images = pdf.ExtractImagesFromPage(index);
    ///...
}
'Rendering PDF documents to Images or Thumbnails
Imports IronPdf
Imports System.Drawing

'  Extracting Image and Text content from Pdf Documents

' open a 128 bit encrypted PDF
Private PdfDocument As using

'Get all text to put in a search index
Private AllText As String = pdf.ExtractAllText()

'Get all Images
Private AllImages As IEnumerable(Of System.Drawing.Image) = pdf.ExtractAllImages()

'Or even find the precise text and images for each page in the document
For index = 0 To pdf.PageCount - 1
	Dim PageNumber As Integer = index + 1
	Dim Text As String = pdf.ExtractTextFromPage(index)
	Dim Images As IEnumerable(Of System.Drawing.Image) = pdf.ExtractImagesFromPage(index)
	'''...
Next index
$vbLabelText   $csharpLabel

首先,FromFile 方法用於在程式中載入輸入的 PDF 文件。 提供了一個加密的 PDF 文件,需要密碼才能訪問該文件。之後,使用ExtractAllText方法將所有文本數據提取到一個字串變數中。 從這裡開始,PdfDocument 提供了很多功能:將其輸出為純文本,將其轉儲到 TXT 文件中,存儲在資料庫中,等等。

IronPDF 可以從 PDF 表格提取文字,以便納入一個或多個CSV 檔案中。

第 11 行使用ExtractAllImages方法從 PDF 文件中提取所有內嵌的圖像。

IronPDF 也可以從特定的 PDF 頁面中提取內容。 上面範例中的其餘代碼行演示了如何使用ExtractTextFromPageExtractImagesFromPage方法來從部分頁面提取文本和圖像。 這兩種方法均接受一個整數參數,該參數表示所需頁面的零基索引。

結論

IronPDF允許開發人員僅用一行程式碼即可從PDF文件中提取文字和圖像,使用ExtractAllTextExtractAllImages來即時提取PDF文件的所有內容。 或者,調用ExtractAllImageExtractAllText可以從特定的單個PDF頁面中提取文本和圖像。 先前的範例代碼顯示了如何使用這兩種方法從一系列頁面中讀取文本和圖像。

此外,IronPDF 還能夠在 PDF 中渲染圖表添加條碼通過密碼增強安全性添加浮水印,甚至可以程式化地處理 PDF 表單

IronPDF 完全免費供開發使用。 雖然商業用途需要付款,但您可以在不需支付任何費用的情況下,使用IronPDF免費試用版進行生產。

以兩個IronPDF Lite 授權的價格購買Iron Software 全套文檔庫

立即下載 IronPDF,開始從 PDF 中提取數據!

Chipego
奇佩戈·卡林达
軟體工程師
Chipego 擁有天生的傾聽技能,這幫助他理解客戶問題,並提供智能解決方案。他在獲得信息技術理學學士學位後,于 2023 年加入 Iron Software 團隊。IronPDF 和 IronOCR 是 Chipego 專注的兩個產品,但隨著他每天找到新的方法來支持客戶,他對所有產品的了解也在不斷增長。他喜歡在 Iron Software 的協作生活,公司內的團隊成員從各自不同的經歷中共同努力,創造出有效的創新解決方案。當 Chipego 離開辦公桌時,他常常享受讀好書或踢足球的樂趣。
< 上一頁
C# 從 PDF 中提取文字(代碼範例教程)
下一個 >
如何使用C#在PDF中添加頁碼