跳至頁尾內容
USING 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);
        }
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Shared Sub Main()
		Dim ocrTesseract = New IronTesseract()
		Using ocrInput As New OcrInput("ocr.png")
			Dim ocrResult = ocrTesseract.Read(ocrInput)
			Dim recognizedText As String = ocrResult.Text
			Console.WriteLine(recognizedText)
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

此程式碼使用IronOCR對名為 "ocr.png" 的圖像文件進行光學字元識別 (OCR)。 它初始化一個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}");
        }
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Shared Sub Main()
		Dim ocr = New IronTesseract()
		Dim ocrInput As 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)

		Dim result = ocr.Read(ocrInput)
		If Not String.IsNullOrEmpty(result.Text) Then
			Console.WriteLine($"Recognized Text: {result.Text}")
		End If
	End Sub
End Class
$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);
        }
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Shared Sub Main()
		Dim ocrTesseract = New IronTesseract()
		ocrTesseract.Configuration.ReadBarCodes = True

		Dim ocrInput As New OcrInput()
		ocrInput.LoadImage("images\imageWithBarcode.png")

		Dim ocrResult = ocrTesseract.Read(ocrInput)
		For Each barcode In ocrResult.Barcodes
			Console.WriteLine(barcode.Value)
		Next barcode
	End Sub
End Class
$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);
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Shared Sub Main()
		Dim ocrTesseract = New IronTesseract()
		Dim ocrInput As New OcrInput()

		' OCR entire document
		ocrInput.LoadPdf("Email_Report.pdf")

		' Alternatively OCR selected page numbers
		Dim pages() As Integer = { 1, 2, 3, 4, 5 }
		ocrInput.LoadPdfPages("example.pdf", pages, Password:= "password")

		Dim ocrResult = ocrTesseract.Read(ocrInput)
		Console.WriteLine(ocrResult.Text)
	End Sub
End Class
$vbLabelText   $csharpLabel

程式碼使用IronOCR對名為 "Email_Report.pdf" 的PDF文件進行OCR處理。 它可以使用LoadPdfPages加密碼進行 "example.pdf" 文件的特定頁面。 OCR操作識別的文字將列印到控制台。

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

結論

IronOCR 是一個強大的.NET程式庫,提供先進的OCR軟體功能,讓開發者可以輕鬆地在他們的應用程式中進行OCR任務。 在本文中,我們探索了如何使用IronOCR通過程式碼範例進行基本和高級的OCR軟體範例。

如果您正在開發一個.NET專案並需要整合OCR功能,那麼在考慮不同的OCR引擎時,IronOCR絕對值得考慮。 其易用性、速度、靈活性和豐富的文件使其成為開發者在OCR自動化任務中受歡迎的選擇。

那麼為什麼不試試IronOCR,看看它如何簡化您自己的OCR專案開發過程呢? 它可能是您專案中最佳的OCR引擎。

IronOCR提供免費的試用授權,然後從$999美元開始,這讓您可以持續在專案中充分利用IronOCR。

欲了解更多關於IronOCR的資訊,請存取此處

常見問題

如何在C#中執行OCR?

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

從圖像中提取文字的步驟是什麼?

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

我可以使用IronOCR自定義OCR過程嗎?

可以,IronOCR允許您通過設置選項來自定義OCR過程,例如OCR語言,啟用噪音消除圖像預處理以及調整解析度來提高準確性。

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

可以,IronOCR支持條碼讀取。您可以配置它以啟用條碼讀取功能,從圖像中檢測並提取條碼資訊。

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

使用IronOCR,您可以在C#中從PDF文件中提取文字。您可以選擇OCR整個文件或特定頁面,通過將PDF載入到IronTesseract中並使用其Read()方法來提取文字。

IronOCR為什麼是一個推薦的開發者選擇?

IronOCR因其全面的OCR功能、易於使用、快速處理和靈活性而被推薦給開發者。它無縫整合到.NET專案中,允許有效地自動化OCR任務。

IronOCR有授權選項嗎?

IronOCR提供多種授權選項,首先提供免費試用。開發者可以從不同的授權中選擇以繼續在其應用程式中使用IronOCR的全部功能。

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

您可以在名為'OCR Software Demo in C# (Developer Tutorial)'的文章中找到IronOCR的程式碼範例。這些範例展示了基本文字識別、進階OCR選項以及條碼讀取。

Kannaopat Udonpant
軟體工程師
在成為軟體工程師之前,Kannapat在日本北海道大學完成了環境資源博士學位。在攻讀學位期間,Kannapat還成為車輛機器人實驗室的一員,該實驗室隸屬於生產工程系。在2022年,他憑藉C#技能加入了Iron Software的工程團隊,專注於IronPDF。Kannapat珍視他的工作,因為他能直接向撰寫大部分IronPDF程式碼的開發者學習。除了同儕學習,Kannapat還喜歡在Iron Software工作的社交方面。不寫程式碼或文件時,Kannapat通常在他的PS5上玩遊戲或重看The Last of Us。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話