跳至頁尾內容
使用 IRONOCR

如何在 C# 中建立 OCR 軟體演示

光學字元辨識 (OCR) 是一種將各種文件格式(包括掃描的紙本文件、PDF、數位檔案或用數位相機拍攝的列印文字影像)轉換為可編輯和可搜尋的機器編碼文字資料的技術。

IronOCR是優秀的 OCR 引擎庫,為開發者提供強大的 OCR 功能。 本文將探討如何使用 IronOCR 執行 OCR,並透過OCR 軟體演示提供程式碼範例。

什麼是IronOCR?

IronOCR 是一個功能強大的 .NET 程式庫,旨在促進 C# 和 VB.NET 應用程式中的光學字元辨識 (OCR)。 IronOCR 利用先進的演算法和機器學習技術,可以準確地從掃描的 PDF 文件、圖像和 PDF 中提取文字和內容,從而更容易以程式設計方式處理、搜尋和分析此類文件。

憑藉其簡單易用的 API 和豐富的功能,開發人員可以無縫地將 OCR 功能整合到他們的應用程式中,以自動執行資料提取、文件處理、資料輸入和內容管理任務。 無論您是在處理業務、發票、報告、自動資料提取、可搜尋的 PDF 或任何其他富含文字的文檔,IronOCR 都能提供可靠的解決方案,高效地處理 OCR 需求。

IronOCR入門指南

在深入了解程式碼範例之前,您需要透過 NuGet 套件管理器安裝 IronOCR 。 您可以透過在軟體包管理器控制台中執行以下命令來安裝 IronOCR:

Install-Package IronOcr

使用 IronOCR 進行 OCR 識別

基礎文字識別

若要使用 IronOCR 執行基本文字識別,您可以使用以下程式碼片段:

using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();
        using (var ocrInput = new OcrInput("ocr.png"))
        {
            var ocrResult = ocrTesseract.Read(ocrInput);
            string recognizedText = ocrResult.Text;
            Console.WriteLine(recognizedText);
        }
    }
}
using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();
        using (var ocrInput = new OcrInput("ocr.png"))
        {
            var ocrResult = ocrTesseract.Read(ocrInput);
            string recognizedText = ocrResult.Text;
            Console.WriteLine(recognizedText);
        }
    }
}
$vbLabelText   $csharpLabel

這段程式碼使用 IronOCR 對名為"ocr.png"的影像檔案執行光學字元辨識 (OCR)。 它初始化一個IronTesseract對象,並將圖像檔案的文字層讀取到OcrInput物件中。

然後,將 OCR 結果作為recognizedText檢索並列印到控制台。

輸出
- LOGO SHOP
- LOREM IPSUM
- DOLOR SITAMET CONSECTETUR
- ADIPISCING ELIT
- 1 LOREM IPSUM $3.20
- 2 ORNARE MALESUADA $9.50
- 3 PORTA FERMENTUM $5.90
- 4 SODALES ARCU $6.00
- 5 ELEIFEND $9.00
- 6 SEMNISIMASSA $0.50
- 7 DUIS FAMES DIS $7.60
- 8 FACILISIRISUS $810
- TOTAL AMOUNT $49.80
- CASH $50.00

進階 OCR 選項

IronOCR 提供多種選項,讓您可以根據影像檔案和要求自訂 OCR 流程。 例如,您可以指定 OCR 語言、調整影像預處理設定或啟用文字清理。 以下範例示範了其中一些進階選項:

using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocr = new IronTesseract();
        using var ocrInput = new OcrInput();
        ocrInput.LoadImage(@"images\image.png");

        // Set OCR language to English
        ocr.Language = OcrLanguage.English;

        // Enable text cleaning and enhance the resolution
        ocrInput.DeNoise();
        ocrInput.EnhanceResolution(225);

        var result = ocr.Read(ocrInput);
        if (!string.IsNullOrEmpty(result.Text))
        {
            Console.WriteLine($"Recognized Text: {result.Text}");
        }
    }
}
using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocr = new IronTesseract();
        using var ocrInput = new OcrInput();
        ocrInput.LoadImage(@"images\image.png");

        // Set OCR language to English
        ocr.Language = OcrLanguage.English;

        // Enable text cleaning and enhance the resolution
        ocrInput.DeNoise();
        ocrInput.EnhanceResolution(225);

        var result = ocr.Read(ocrInput);
        if (!string.IsNullOrEmpty(result.Text))
        {
            Console.WriteLine($"Recognized Text: {result.Text}");
        }
    }
}
$vbLabelText   $csharpLabel

此程式碼使用 IronOCR 對位於"images"資料夾中的映像檔"image.png"執行 OCR 操作。 它將 OCR 語言設定為英語,清除影像雜訊,並提高影像解析度。 從圖像中辨識出的文字被提取出來,然後列印到控制台。

如何在 C# 中建立 OCR 軟體示範:圖 1

條碼讀取

IronOCR 還支援條碼讀取,讓您可以開發軟體從影像中提取條碼資訊。 以下是一個使用 IronOCR 讀取條碼的程式碼範例:

using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();
        ocrTesseract.Configuration.ReadBarCodes = true;

        using var ocrInput = new OcrInput();
        ocrInput.LoadImage(@"images\imageWithBarcode.png");

        var ocrResult = ocrTesseract.Read(ocrInput);
        foreach (var barcode in ocrResult.Barcodes)
        {
            Console.WriteLine(barcode.Value);
        }
    }
}
using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();
        ocrTesseract.Configuration.ReadBarCodes = true;

        using var ocrInput = new OcrInput();
        ocrInput.LoadImage(@"images\imageWithBarcode.png");

        var ocrResult = ocrTesseract.Read(ocrInput);
        foreach (var barcode in ocrResult.Barcodes)
        {
            Console.WriteLine(barcode.Value);
        }
    }
}
$vbLabelText   $csharpLabel

該程式碼使用 IronOCR 從"images"資料夾中的映像檔"imageWithBarcode.png"中偵測和讀取條碼。 它透過將ReadBarCodes設為 true 來配置 IronOCR 以啟用條碼讀取。 偵測到的條碼值隨後會列印到控制台。

如何在 C# 中建立 OCR 軟體示範:圖 2

PDF文字擷取

IronOCR也可以從PDF和掃描文件中提取文字。 以下是一個程式碼範例,示範如何使用 IronOCR 從 PDF 檔案中擷取文字:

using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();
        using var ocrInput = new OcrInput();

        // OCR entire document
        ocrInput.LoadPdf("Email_Report.pdf");

        // Alternatively OCR selected page numbers
        int[] pages = { 1, 2, 3, 4, 5 };
        ocrInput.LoadPdfPages("example.pdf", pages, Password: "password");

        var ocrResult = ocrTesseract.Read(ocrInput);
        Console.WriteLine(ocrResult.Text);
    }
}
using IronOcr;
using System;

class Program
{
    static void Main()
    {
        var ocrTesseract = new IronTesseract();
        using var ocrInput = new OcrInput();

        // OCR entire document
        ocrInput.LoadPdf("Email_Report.pdf");

        // Alternatively OCR selected page numbers
        int[] pages = { 1, 2, 3, 4, 5 };
        ocrInput.LoadPdfPages("example.pdf", pages, Password: "password");

        var ocrResult = ocrTesseract.Read(ocrInput);
        Console.WriteLine(ocrResult.Text);
    }
}
$vbLabelText   $csharpLabel

程式碼使用 IronOCR 對名為"Email_Report.pdf"的 PDF 文件執行 OCR 處理。 它可以使用LoadPdf對整個文件進行 OCR 識別,或使用LoadPdfPages和密碼對"example.pdf"中的特定頁面進行 OCR 識別。 OCR辨識出的文字會印到控制台上。

如何在 C# 中建立 OCR 軟體示範:圖 3

結論

IronOCR是一個功能強大的 .NET 程式庫,提供進階 OCR 軟體功能,讓開發人員能夠輕鬆地在其應用程式中執行 OCR 任務。 在本文中,我們探討如何使用 IronOCR 進行基本和進階 OCR 軟體演示,並提供了程式碼範例。

如果你正在開發 .NET 專案並且需要整合 OCR 功能,那麼在考慮不同的 OCR 引擎時,IronOCR 絕對值得考慮。 其易用性、速度、靈活性和豐富的文件使其成為開發人員執行 OCR 自動化任務的熱門選擇。

那麼,何不試試 IronOCR,看看它如何簡化您自己的 OCR 專案開發流程呢? 它可能是最適合您專案的OCR引擎。

IronOCR 提供免費試用許可證,然後從$799美元起,讓您在專案中繼續充分利用 IronOCR 的功能。

想了解更多關於IronOCR的信息,請訪問這裡

常見問題解答

如何在C#中實現OCR?

您可以使用 IronOCR 函式庫在 C# 中執行 OCR 操作。首先,透過 NuGet 套件管理器使用指令Install-Package IronOcr安裝該程式庫。然後,使用 IronTesseract 物件從圖像或 PDF 中讀取文本,並將其轉換為可編輯的文本。

使用 C# 從圖像中提取文字涉及哪些步驟?

要在 C# 中從圖像中提取文本,請使用 IronOCR,方法是建立一個 IronTesseract 物件的實例。載入您的圖像,例如“ocr.png”,然後呼叫Read()方法來處理圖像並提取文字。

我可以使用 IronOCR 自訂 OCR 流程嗎?

是的,IronOCR 可讓您透過設定 OCR 語言、啟用影像預處理以降低雜訊以及調整解析度來提高準確性等選項來自訂 OCR 流程。

是否可以使用 IronOCR 進行條碼讀取?

是的,IronOCR 支援條碼讀取。您可以透過在 OCR 設定中啟用條碼讀取功能,將其配置為偵測並擷取影像中的條碼資訊。

如何使用 C# 從 PDF 中提取文字?

使用 IronOCR,您可以在 C# 中從 PDF 文件中提取文字。您可以選擇對整個文件或特定頁面進行 OCR 識別,只需將 PDF 載入到 IronTesseract 中,然後使用其Read()方法提取文字即可。

為什麼IronOCR是開發人員推薦的選擇?

IronOCR 因其全面的 OCR 功能、易用性、快速的處理速度和靈活性而備受開發人員青睞。它能無縫整合到 .NET 專案中,從而高效地自動化 OCR 任務。

IronOCR有哪些授權許可方案?

IronOCR 提供多種許可選項,首先提供免費試用。開發人員可以選擇不同的許可方案,以便在他們的應用程式中繼續使用 IronOCR 的全部功能。

在哪裡可以找到使用 IronOCR 的程式碼範例?

您可以在文章「C# OCR 軟體示範(開發者教學)」中找到使用 IronOCR 的程式碼範例。這些範例演示了基本的文字辨識、進階 OCR 選項和條碼讀取。

坎納奧帕特·烏東潘特
軟體工程師
在成為軟體工程師之前,Kannapat 在日本北海道大學完成了環境資源專業的博士學位。在攻讀博士學位期間,他還加入了生物生產工程系下屬的車輛機器人實驗室。 2022 年,他憑藉 C# 技能加入了 Iron Software 的工程團隊,專注於 IronPDF 的開發。 Kannapat 非常珍惜這份工作,因為他可以直接向 IronPDF 大部分程式碼的編寫者學習。除了與同事學習之外,Kannapat 也享受在 Iron Software 工作的社交氛圍。工作之餘,Kannapat 通常會玩 PS5 遊戲或重溫《最後生還者》。