跳過到頁腳內容
使用 IRONOCR

OCR C# GitHub:使用 IronOCR 進行文字辨識

IronOCR透過提供具有 99.8% 準確率、內建預處理功能和對 125 多種語言支援的單一 DLL 解決方案,簡化了 C# GitHub專案中的 OCR 集成,消除了原始 Tesseract 實現所需的複雜配置。

立即開始在您的項目中使用 IronOCR 並免費試用。

第一步:
green arrow pointer

如果您是 C# 開發人員,正在GitHub上探索 OCR 選項,那麼您需要的可能不僅僅是程式碼。 你需要的是一個開箱即用、附帶可運行範例且背後有活躍社群支援的函式庫。 可靠的整合和完善的版本控制與準確性同等重要。 本指南將引導您了解如何將IronOCR整合到您的GitHub專案中,以便您可以自信地處理圖像和 PDF 中的文字辨識。

無論您的目標是提取純文字、提取結構化單字和行,還是產生可搜尋的 PDF以進行存檔, IronOCR都能滿足您的需求。 該庫支援從條碼讀取到多語言 OCR 等 125 多種語言的功能。

如何開始使用IronOCR和GitHub?

IronOCR是.NET OCR 解決方案,可以自然地融入基於 GitHub 的開發工作流程。 與需要複雜配置的原始 Tesseract 實作不同, IronOCR提供了一個精細的 API,讓您在幾分鐘內即可開始運作。

對於初次接觸光學字元辨識的人來說,IronOCR 的文檔涵蓋了從基本文字提取到進階影像處理的所有內容。 該庫內建了對影像濾鏡和 OCR 優化技術的支持,否則這些技術需要大量的手動調整。

開發者傾向於在GitHub專案中使用IronOCR 的一個原因是其可預測性。 當貢獻者克隆您的程式碼庫並運行您的專案時,OCR引擎在其機器上的運行結果應與開發者預期完全一致。 IronOCR的獨立架構使得這一點成為可能,而無需在您的程式碼庫中固定特定於平台的原生二進位檔案。

應該採用哪種安裝方法?

首先透過NuGet套件管理器安裝IronOCR :

Install-Package IronOcr

 Visual Studio 中的NuGet套件管理器視窗顯示了IronOCR套件的搜尋結果,其中包含可供安裝的各種語言套件

立即開始在您的項目中使用 IronOCR 並免費試用。

第一步:
green arrow pointer

對於進階安裝場景,請參閱NuGet套件指南。 如果您要部署到特定平台,請查看WindowsLinux 、macOS 或 Docker 容器的指南。

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

IronOCR維護著官方的GitHub程式碼庫,其中包含範例和教學。 IronOCR範例庫提供了真實世界的實現,而圖像轉文字教學庫則展示了您可以複製和修改的實際用例。

這些儲存庫展示了 OCR 條碼讀取、多語言支援和 PDF 處理功能。 由於IronOCR經常在NuGet上發佈軟體包,因此您將始終能夠存取最新的穩定版本。

流程圖展示了OCR處理流程: GitHub OCR倉庫 → IronOCR專案 → OCR處理 → 擷取的文字輸出

如何在GitHub上創建你的第一個OCR專案?

建立一個適合在GitHub共享的 OCR 應用程式需要一個一致的結構,以便貢獻者可以立即上手使用。 在 Visual Studio(或您喜歡的 IDE)中,建立一個遵循既定 OCR 開發約定的新控制台應用程式。

應該採用哪種專案結構?

MyOcrProject/
├── src/
│   └── OcrProcessor.cs
├── images/
│   └── sample-invoice.jpg
├── .gitignore
├── README.md
└── MyOcrProject.csproj

此架構支援多種輸入格式,包括 JPG、PNG、TIFF 和 BMP。對於多頁 TIFF 或 GIF 文件, IronOCR可自動處理。

images/ 資料夾用於整理範例文件,方便貢獻者添加測試圖片,而不會使根目錄變得混亂。 將 src/ 資料夾與設定檔分開,可以使專案更容易一目了然。 新增一個 README.md,解釋該專案的功能、要設定的許可證密鑰變數以及如何運行範例。

如何實作OCR處理程式碼?

以下範例展示了一個完整的 OCR 處理器,展示了 IronOCR 的主要功能,包括影像預處理、文字擷取和條碼偵測:

using IronOcr;

var ocr = new IronTesseract();
ocr.Configuration.ReadBarCodes = true;
ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.Auto;
ocr.Language = OcrLanguage.English;

using var input = new OcrInput();
input.LoadImage("images/sample-invoice.jpg");
input.Deskew();
input.DeNoise();
input.EnhanceResolution(225);

var result = ocr.Read(input);

Console.WriteLine($"Confidence: {result.Confidence}%");
Console.WriteLine($"Text Found:\n{result.Text}");

foreach (var barcode in result.Barcodes)
{
    Console.WriteLine($"Barcode: {barcode.Value} ({barcode.Format})");
}

result.SaveAsSearchablePdf("output.pdf");
using IronOcr;

var ocr = new IronTesseract();
ocr.Configuration.ReadBarCodes = true;
ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.Auto;
ocr.Language = OcrLanguage.English;

using var input = new OcrInput();
input.LoadImage("images/sample-invoice.jpg");
input.Deskew();
input.DeNoise();
input.EnhanceResolution(225);

var result = ocr.Read(input);

Console.WriteLine($"Confidence: {result.Confidence}%");
Console.WriteLine($"Text Found:\n{result.Text}");

foreach (var barcode in result.Barcodes)
{
    Console.WriteLine($"Barcode: {barcode.Value} ({barcode.Format})");
}

result.SaveAsSearchablePdf("output.pdf");
$vbLabelText   $csharpLabel

此範例展示了IronOCR 的幾項功能。 建構函式配置 OCR 引擎,啟用條碼讀取和自動頁面分割功能。 預處理流程示範了去斜(校正旋轉)、去雜訊(去除偽影)和解析度增強。

處理後,引擎提取帶有置信度評分的英文文本,識別條碼,並產生可搜尋的 PDF。 程式碼使用.NET 10 的頂層語句編寫,使範例簡潔易讀。

對於進階場景,您可以使用非同步處理來提高吞吐量,或對長時間運行的操作實現進度追蹤。 OcrResult 類別提供詳細的輸出,包括文字位置、單字座標和段落結構——為您提供的遠不止是純文字字串。

開發者還可以設定IronOCR來讀取其他語言,例如中文、西班牙語或法語,這使其成為多語言GitHub專案的有力選擇。 有關安裝其他語言套件的參考資料,請參閱125 種國際語言指南

分割畫面顯示 OCR 演示:左側顯示白色背景上的傾斜 Lorem Ipsum 文本,右側顯示 Visual Studio 調試控制台,其中包含提取的文本輸出和 87.34% 的置信度得分

你的 .gitignore 檔案中應該包含哪些內容?

在您的 .gitignore 檔案中新增條目,以防止提交運行時工件、測試輸出和秘密配置:

# IronOCR runtime files
runtimes/
# Test images and outputs
*.pdf
test-images/
output/
# License keys
appsettings.*.json

runtimes/ 資料夾排除在原始碼控制系統之外尤為重要,因為IronOCR會在建置時下載特定於平台的二進位檔案。提交這些文件會使程式碼庫膨脹並導致平台衝突。 了解更多關於許可證密鑰管理的知識,以便正確實施。

為什麼你應該選擇IronOCR來管理你的GitHub專案?

IronOCR為在GitHub上維護 OCR 專案的開發者提供了獨特的優勢。 該庫開箱即用,無需手動訓練或複雜的配置文件,即可達到 99.8% 的準確率,而不會使存儲庫變得雜亂。 GitHub專案支援超過 125 種語言,無需修改即可服務國際用戶。

相容性功能確保跨平台部署,支援 Windows、Linux、macOS 以及AzureAWS等雲端平台。 這種跨平台特性對於開源專案和團隊專案至關重要,因為貢獻者可能在不同的作業系統上工作。

IronOCR與其他 OCR 解決方案有何不同?

IronOCR非常靈活,能夠識別單字、行和整個段落,讓您可以精確控制從每次掃描中提取的細節量。 圖書館擅長處理各種特殊文件類型,包括車牌、護照、手寫文字、螢幕截圖和掃描文件。

商業許可為公共儲存庫提供了法律上的明確性。 您被明確允許在商業應用中包含IronOCR 。 內建的影像預處理濾鏡包括進階選項,例如色彩校正、品質增強以及濾鏡精靈,可自動找到複雜影像的最佳設定。

單 DLL 架構為何如此重要?

IronOCR 的單一 DLL 架構意味著貢獻者可以複製您的儲存庫並立即開始開發,而無需像其他 OCR 解決方案那樣處理原生依賴項或平台特定的配置。 正是這種簡潔性使得開發者選擇IronOCR而不是原始的 Tesseract

從安裝體驗上看,原始的 Tesseract 實作通常需要單獨安裝本地二進位檔案、配置 PATH 變數以及手動管理 tessdata 語言檔案。 IronOCR會在內部處理所有這些,這意味著您的專案 README 可以專注於您的應用程式邏輯,而不是環境設定說明。

該庫包含 Tesseract 5,具有多項效能改進和多執行緒支持,使您能夠並行處理多個文件而無需編寫自訂執行緒程式碼。

OCR專案的版本控制最佳實務是什麼?

在GitHub上管理 OCR 專案會帶來一些典型的軟體專案不會遇到的挑戰。 測試鏡像通常是大型二進位文件,許可證金鑰絕不能出現在提交中,預處理配置在不同環境之間可能有顯著差異。

及早解決這些問題意味著在與團隊合作或接受貢獻者的拉取請求時會減少意外情況。 以下做法可讓您的 OCR 專案保持整潔,並使其易於長期維護。

如何在 Git 中處理大檔案?

使用Git LFS來管理大型測試鏡像,以控制倉庫大小:

git lfs track "*.jpg" "*.png" "*.tiff"
git add .gitattributes
git commit -m "Track large image files with Git LFS"
git lfs track "*.jpg" "*.png" "*.tiff"
git add .gitattributes
git commit -m "Track large image files with Git LFS"
SHELL

這一點在處理高解析度影像或多頁 TIFF 檔案時尤其重要。 對於低品質掃描,IronOCR 的預處理功能可以顯著改善結果,而無需您在提交之前手動編輯測試影像。

在將測試文件儲存在儲存庫中時,請考慮它們是否包含敏感資訊。 即使是在私有儲存庫中,也比提交真實的發票或身分證明文件要好,最好是透過程式設計產生合成測試圖像。

如何管理許可證密鑰和文件?

使用環境變數或.NET使用者金鑰儲存IronOCR許可證金鑰。 切勿將它們直接提交給任何分支,即使是私有分支也不行。 請依照許可證密鑰指南進行正確實作。 您也可以在ASP.NET應用程式的 web.config 檔案中設定許可證。

請在 README 檔案中說明支援的影像格式和預期精度等級。 在 test-data/ 資料夾中包含範例影像,以便貢獻者在克隆後可以立即驗證 OCR 功能。 新增一個簡短的章節,解釋如何透過環境變數設定許可證密鑰,以便新貢獻者在首次運行時不會受到阻礙。

對於跨平台開發,請參閱IronOCR Linux 設定指南或 macOS 安裝說明。 行動開發者應查看IronOCR文件中提供的 Android 和 iOS 指南。

常見的故障排除技巧有哪些?

為什麼Windows系統上的OCR功能無法正常運作?

常見的安裝問題包括 Windows 系統缺少 Visual C++ 可再發行元件套件。 IronOCR需要 2019 版本。 有關詳細指導,請參閱Visual C++ Redistributable 故障排除指南。 對於 Linux 部署,請確保已安裝 libgdiplus。

如果文字辨識效果不佳,請使用DPI 設定指南驗證您的影像是否至少為 200 DPI。 Stack Overflow上的 C# OCR 社群也為常見的GitHub專案問題提供了有用的解決方案。

對於特定的配置問題,請使用IronOCR實用工具診斷問題,並參考一般故障排除指南進行逐步診斷。

您可以在哪裡獲得更多支援?

如需詳細故障排除信息,請參閱IronOCR故障排除指南。 IronOCR支援團隊為使用 GitHub 託管的 OCR 應用程式的授權使用者提供快速協助。 請查看產品更新日誌以取得最新更新。

下一步計劃是什麼?

IronOCR透過其直覺的 API、內建的預處理和可靠的準確性,簡化了 C# GitHub專案中的 OCR 實作。 從上面的程式碼範例入手,探索官方儲存庫,建立充分利用 GitHub 協作功能的文件處理應用程式。

無論您是建立 MAUI 應用程式、處理專用文檔,還是用一行程式碼實作 OCR, IronOCR都能為您提供所需的工具。 該庫的跨平台支援和簡便的NuGet安裝意味著無論每個貢獻者的開發環境如何,您的專案都易於設定。

立即下載IronOCR 的免費試用版,在您的GitHub專案中進行評估。 探索各種授權選項,包括擴展和升級,以滿足您團隊的需求。

常見問題解答

OCR C# GitHub 教程的主要目的是什麽?

OCR C# GitHub 教程的主要目的是指导開發人员在 GitHub 項目中使用 IronOCR 實現文本识别。它包括代碼示例和版本控制技巧。

IronOCR 如何增強我在 GitHub 上的 C# 項目?

IronOCR 可以通過提供強大的文本识别功能来增強您在 GitHub 上的 C# 項目,使您能够高精度提取和操作图像中的文本。

使用 IronOCR 進行文本识别有什么好處?

IronOCR 提供多种文本识别的好處,包括易用性、高精度、与 C# 項目的無缝集成,是開發人员處理基于图像的文本數据的理想選择。

OCR C# GitHub 教程中有没有提供代碼示例?

是的,OCR C# GitHub 教程包括代碼示例,演示如何在項目中使用 IronOCR 實現文本识别。

教程中提供了哪些版本控制提示?

該教程提供版本控制提示,以帮助在集成 IronOCR 時有效地管理項目中的更改,确保流畅的協作和項目维护。

我可以将 IronOCR 用于實時文本识别應用程序嗎?

是的,由于其高效的處理能力和對各种图像格式的支持,IronOCR 可用于實時文本识别應用程序。

IronOCR 支持哪些图像格式的文本识别?

IronOCR 支持包括 JPEG、PNG、BMP、GIF 和 TIFF 在內的多种图像格式進行文本识别,确保与大多數图像来源兼容。

是否有 IronOCR 的试用版可供测试?

是的,IronOCR 提供试用版,允許開發人员在項目中测试其功能和性能,然後再做出購買决定。

IronOCR 如何處理文本识别中的不同語言?

IronOCR 支持多种語言的文本识别,使開發人员能够轻松從各种語言的图像中提取文本。

在 C# 項目中使用 IronOCR 的系统要求是什么?

IronOCR 兼容 .NET Framework 和 .NET Core,可以轻松集成到 C# 項目中而不需要大量系统资源。

Kannaopat Udonpant
軟體工程師
在成為軟件工程師之前,Kannapat 從日本北海道大學完成了環境資源博士學位。在追逐學位期间,Kannapat 還成為了生產工程系一部份——汽車机器人實验室的成員。2022 年,他利用他的 C# 技能加入 Iron Software 的工程團隊, 專注於 IronPDF。Kannapat 珍惜他的工作,因為他直接向编写大部分 IronPDF 使用的代碼的開發者学习。除了同行学习,Kannapat 还喜欢在 Iron Software 工作的社交十环。当他不编写代碼或文檔時,Kannapat 通常在他的 PS5 上打游戏或重看《The Last of Us》。

鋼鐵支援團隊

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