IRONSOFTWAREHOME

Български OCR в C# и .NET

Curtis Chau
Curtis Chau
Updated: 2026년 4월 23일
Други версии на този документ:

IronOCR е софтуерен компонент C#, позволяващ на .NET кодерите да четат текст от изображения и PDF документи на 126 езика, включително български.

Това е усъвършенствана вилка на Tesseract, създадена изключително за разработчиците .NET и редовно превъзхожда останалите двигатели на Tesseract както по скорост, така и по точност.

Съдържание на IronOcr.Languages.Bulgarian

Този пакет съдържа три OCR езика за .NET:

  • български
  • BulgarianBest
  • BulgarianFast

Изтегли

Български езиков пакет [български език]
* Download as Цип
* Install with
https://www.nuget.org/packages/IronOcr.Languages.Bulgarian/' NuGet

Инсталация

Първото нещо, което трябва да направим, е да инсталираме нашия български OCR пакет във вашия .NET проект.

PM> Install-Package IronOcr.Languages.Bulgarian

Пример за код

Този пример за C# код чете български текст от Image или PDF документ.

// Install the Bulgarian OCR language package
// PM> Install-Package IronOcr.Languages.Bulgarian
using IronOcr;

var Ocr = new IronTesseract();
// Specify the language for OCR as Bulgarian
Ocr.Language = OcrLanguage.Bulgarian; 

using (var Input = new OcrInput(@"images\Bulgarian.png"))
{
    // Perform OCR on the input image
    var Result = Ocr.Read(Input);
    // Get the extracted text
    var AllText = Result.Text;
    // Output the text to console or another output function as needed
    Console.WriteLine(AllText);
}

Защо да изберете IronOCR?

IronOCR е лесна за инсталиране, пълна и добре документирана .NET софтуерна библиотека.

Изберете IronOCR, за да постигнете 99,8% + OCR точност, без да използвате никакви външни уеб услуги, текущи такси или изпращане на поверителни документи по интернет.

Защо разработчиците на C# избират IronOCR пред Vanilla Tesseract:

  • Инсталирайте като единична DLL или NuGet
  • Включва Tesseract 5, 4 и 3 двигатели от кутията.
  • Точността 99,8% значително превъзхожда обикновения Tesseract.
  • Скорост и MultiThreading
  • Съвместим с MVC, WebApp, Desktop, конзола и сървърно приложение
  • Няма нужда от Exes или C++ код
  • Пълна поддръжка на OCR за PDF
  • OCR за почти всеки файл с изображения или PDF
  • Пълна поддръжка на .NET Core, Standard и FrameWork
  • Внедряване на Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Четене на баркодове и QR кодове
  • Експортиране на OCR във формат XHTML
  • Експортиране на OCR в PDF документи с възможност за търсене
  • Поддръжка на многопоточност
  • 126 международни езика, управлявани чрез NuGet или OcrData файлове
  • Извличане на изображения, координати, статистика и шрифтове. Не само текст.
  • Може да се използва за разпространение на Tesseract OCR в търговски и патентовани приложения.

OCR с IronOCR блести при работа с изображения от реалния свят и несъвършени документи като снимки или сканиране с ниска разделителна способност, които могат да имат цифров шум или несъвършенства.

Други безплатни OCR библиотеки за платформата .NET, като например други API на .NET Tesseract и уеб услуги, не се представят толкова добре в тези случаи на използване в реалния свят.

OCR с Tesseract 5 - Стартирайте кодирането в C#

Примерът по-долу показва колко лесно е да се чете текст от изображение с помощта на C# или VB .NET.

OneLiner

// Perform OCR on an image in a single line
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Console.WriteLine(Text);

Конфигурируем Hello World

// PM> Install-Package IronOcr.Languages.Bulgarian
using IronOcr;

var Ocr = new IronTesseract();
// Set Bulgarian as the OCR language
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput())
{
     // Add image to the OCR input
     Input.AddImage("images/sample.jpeg");
     // You can add any number of images
     var Result = Ocr.Read(Input);
     // Output the recognized text
     Console.WriteLine(Result.Text);
}

C# PDF OCR

Същият подход може да се използва по подобен начин за извличане на текст от всеки PDF документ.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var input = new OcrInput())
{
    // Add a PDF and provide a password if necessary
    input.AddPdf("example.pdf", "password");
    // You can also select specific PDF page numbers for OCR

    var Result = Ocr.Read(input);

    Console.WriteLine(Result.Text);
    Console.WriteLine($"{Result.Pages.Count()} Pages");
    // Outputs the page count of the PDF file
}

OCR за MultiPage TIFF

OCR четене на TIFF файлов формат, включително многостранични документи. TIFF може също да се преобразува директно в PDF файл с текст, който може да се търси.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput())
{
    // Load a multi-frame TIFF file
    Input.AddMultiFrameTiff("multi-frame.tiff");
    
    // Perform OCR on the input TIFF
    var Result = Ocr.Read(Input);
    
    // Output the recognized text
    Console.WriteLine(Result.Text);
}

Баркодове и QR

Уникална характеристика на IronOCR е, че може да чете баркодове и QR кодове от документи, докато сканира за текст. OcrResult.OcrBarcode класа OcrResult.OcrBarcode дава на разработчика подробна информация за всеки сканиран баркод.

using IronOcr;

var Ocr = new IronTesseract();
// Enable barcode reading
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
    // Add image to OCR input
    input.AddImage("img/Barcode.png");
    
    // Perform OCR on input image
    var Result = Ocr.Read(input);
    
    // Iterate through scanned barcodes
    foreach (var Barcode in Result.Barcodes)
    {
        Console.WriteLine(Barcode.Value);
        // Additional barcode properties like type and location are also available
    }
}

OCR за специфични области на изображения

Всички методи за сканиране и четене на OCR на Iron осигуряват възможността точно да посочим от коя част на страница или страници искаме да четем текст. Това е много полезно, когато разглеждаме стандартизирани формуляри и може да спести ужасно много време и да подобри ефективността.

За да използваме области за изрязване, ще трябва да добавим системна препратка към System.Drawing за да можем да използваме обекта System.Drawing.Rectangle .

using IronOcr;
using System.Drawing; // Reference for Rectangle class

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput())
{
    // Define specific content area to read
    var ContentArea = new Rectangle { X = 215, Y = 1250, Height = 280, Width = 1335 };
    // Dimensions are in pixels

    // Add the document with a specified region to perform OCR
    Input.Add("document.png", ContentArea);

    // Perform OCR on the defined region
    var Result = Ocr.Read(Input);
    
    // Output the text of the defined region
    Console.WriteLine(Result.Text);
}

OCR за нискокачествени сканирания

Класът IronOCR OcrInput може да поправи сканирания, които нормалният Tesseract не може да прочете.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
    // Apply filters to fix the image
    Input.DeNoise(); // Removes digital noise and corrects bad scans
    Input.Deskew();  // Corrects rotation and perspective
    
    // Perform OCR on the enhanced input
    var Result = Ocr.Read(Input);
    
    // Output the corrected text
    Console.WriteLine(Result.Text);
}

Експортирайте резултатите от OCR като PDF с възможност за търсене

Изображение в PDF с копируеми текстови низове. Може да се индексира от търсачките и базите данни.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput())
{
    // Set the title for the PDF
    Input.Title = "Quarterly Report"; 
    
    // Add images to be included in the PDF
    Input.AddImage("image1.jpeg");
    Input.AddImage("image2.png");
    Input.AddImage("image3.gif");
    
    // Perform OCR on the input
    var Result = Ocr.Read(Input);
    
    // Save the OCR result as a searchable PDF
    Result.SaveAsSearchablePdf("searchable.pdf");
}

TIFF към PDF конвертиране с възможност за търсене

Конвертирайте TIFF документ (или произволна група файлове с изображения) директно в PDF с възможност за търсене, който може да бъде индексиран от интранет, уебсайт и google търсачки.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput())
{
    // Add a multi-page TIFF to be converted into a searchable PDF
    Input.AddMultiFrameTiff("example.tiff");
    
    // Perform OCR and save the result as a searchable PDF
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}

Експортирайте резултатите от OCR като HTML

Преобразуване на OCR изображение в XHTML.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput())
{
    // Provide a title for the output HTML
    Input.Title = "Html Title";
    
    // Add images to be scanned
    Input.AddImage("image1.jpeg");
    
    // Perform OCR on the input
    var Result = Ocr.Read(Input);
    
    // Save the result as an XHTML file
    Result.SaveAsHocrFile("results.html");
}

OCR филтри за подобряване на изображението

IronOCR предоставя уникални филтри за OcrInput обекти за подобряване на производителността на OCR.

Пример за код за подобряване на изображението

Прави изображенията с OCR по-високо качество, за да се получат по-добри и по-бързи резултати за OCR.

using IronOcr;

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
    // Apply filters to improve image quality for OCR
    Input.DeNoise(); // Removes digital noise and corrects bad scans
    Input.Deskew();  // Corrects rotation and perspective
    
    // Perform OCR on the enhanced input
    var Result = Ocr.Read(Input);
    
    // Output the recognized text
    Console.WriteLine(Result.Text);
}

Списък с OCR филтри за изображения

Входните филтри за подобряване на производителността на OCR, които са вградени в IronOCR, включват:

  • OcrInput.Rotate(double degrees) - Завърта изображенията с определен брой градуси по часовниковата стрелка. За обратно на часовниковата стрелка използвайте отрицателни числа.
  • OcrInput.Binarize() - Превръща всеки пиксел в черно или бяло, без междинни стойности. Може да подобри OCR при нисък контраст между текст и фон.
  • OcrInput.ToGrayScale() - Превръща всеки пиксел в нюанс на сивата скала. Ускорява OCR, но може да не подобри точността.
  • OcrInput.Contrast() - Автоматично увеличава контраста и често подобрява скоростта и точността на OCR при нисък контраст.
  • OcrInput.DeNoise() - Премахва цифровия шум, използвайте при шумни изображения.
  • OcrInput.Invert() - Инвертира цветовете, полезно при негативни изображения.
  • OcrInput.Dilate() - Добавя пиксели към границите на обекти, противоположно на Erode.
  • OcrInput.Erode() - Премахва пикселите по границите на обекта, противоположно на Разширяване.
  • OcrInput.Deskew() - Завърта и изправя изображения за по-добри OCR резултати до 5-градусова толерантност.
  • OcrInput.DeepCleanBackgroundNoise() - Премахва сериозен фонов шум. Използвайте само при екстремни шумове, тъй като може да намали точността.
  • OcrInput.EnhanceResolution - Подобрява разширително решение за нискокачествени изображения, автоматичното управление е налично чрез MinimumDPI и TargetDPI.

CleanBackgroundNoise: Автоматично почиства дигиталния шум.

EnhanceContrast: Увеличава контраста на текста и фона за по-добра точност и производителност.

EnhanceResolution: Коригира ниска резолюция до 275 dpi за по-добра точност.

Language: Поддръжка на 22 международни езикови пакета за целенасочени OCR операции.

Strategy: Изберете между бърза и точно сложна OCR стратегия с AI модели.

ColorSpace: Избор между сивата скала или пълноцветен OCR за по-добри резултати.

DetectWhiteTextOnDarkBackgrounds: Позволява откриване на бял текст на черен фон.

InputImageType: Водещ OCR за пълен документ или фрагмент.

RotateAndStraighten: Обработка на завъртени и перспективни документи.

ReadBarcodes: Позволява разпознаване на баркодове и QR кодове.

ColorDepth: Определя цветната дълбочина за OCR библиотеката, по-високите консумпират повече време.

126 Езикови пакети

IronOCR поддържа 126 международни езика чрез езикови пакети, които се разпространяват като DLL, които могат да бъдат изтеглени от този уебсайт или също от NuGet Package Manager .

Езиците включват немски, френски, английски, китайски, японски и много други. Съществуват специализирани езикови пакети за паспорт MRZ, MICR чекове, финансови данни, регистрационни табели и много други. Можете също така да използвате всеки файл ".traineddata" на Tesseract - включително тези, които създавате сами.

Пример за език

Използване на други OCR езици.

// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

var Ocr = new IronTesseract();
// Set the OCR language to Arabic
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
    // Add Arabic image to input
    input.AddImage("img/arabic.gif");
    // Optional: Add image filters if necessary
    // Despite the low quality of this input
    // IronTesseract can read it where conventional Tesseract might fail

    var Result = Ocr.Read(input);

    // Windows console may have problems printing Arabic characters.
    // Saving the result to disk instead.
    Result.SaveAsTextFile("arabic.txt");
}

Пример за многоезичен език

Възможно е също така OCR да се използва едновременно на няколко езика. Това наистина може да помогне за получаване на метаданни и URL адреси на английски език в Unicode документи.

// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

var Ocr = new IronTesseract();
// Set primary OCR language to Chinese Simplified
Ocr.Language = OcrLanguage.ChineseSimplified;
// Add Bulgarian as a secondary language for OCR
Ocr.AddSecondaryLanguage(OcrLanguage.Bulgarian);

// You can add any number of languages

using (var input = new OcrInput())
{
    // Add multi-language PDF to input
    input.Add("multi-language.pdf");
    
    var Result = Ocr.Read(input);
    
    // Save the OCR result to a text file
    Result.SaveAsTextFile("results.txt");
}

Подробни обекти с резултати от OCR

IronOCR връща обект с резултат на OCR за всяка операция на OCR. Като цяло разработчиците използват само свойството text на този обект, за да получат сканирания текст от изображението. Въпреки това, резултатите от OCR DOM са много по-напреднали от този.

using IronOcr;
using System.Drawing; // Add reference for assembly

var Ocr = new IronTesseract();
// Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
// Enable barcode reading
Ocr.Configuration.ReadBarCodes = true;

using (var Input = new OcrInput(@"images\sample.tiff"))
{
    // Perform OCR on input TIFF file
    OcrResult Result = Ocr.Read(Input);
    
    var Pages = Result.Pages;
    var Words = Pages[0].Words;
    var Barcodes = Result.Barcodes;
    // Explore properties like:
    // - Pages, Blocks, Paragraphs, Lines, Words, Characters
    // - Export Images, Font Coordinates, Statistics
}

производителност

IronOCR работи извън кутията, без да е необходимо да настройвате производителността или да модифицирате силно входните изображения.

Скоростта е бърза: IronOCR.2020+ е до 10 пъти по-бърз и прави над 250% по-малко грешки от предишните компилации.

Научете повече

За да научите повече за OCR на C#, VB, F# или който и да е друг .NET език, моля, прочетете нашите уроци в общността, които дават реални примери за това как IronOCR може да се използва и могат да покажат нюансите как да извлечете най-доброто от тази библиотека.

Налична е и пълна справка за обекти за разработчици .NET.

Curtis Chau
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

...
더 읽어보기

시작할 준비 되셨나요?

Nuget Downloads 6,236,385버전:2026.9방금 출시

지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.
PDF용 C# NuGet 라이브러리
NuGet을 사용하여 설치하세요

버전: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 선택합니다.
  2. 찾아보기를 선택하고 "IronOCR"을 검색하세요.
  3. 패키지를 선택하고 설치하세요
C# PDF DLL
DLL 다운로드

버전: 2026.9

또는 여기에서 Windows 설치 프로그램을 다운로드하십시오.

  1. IronOCR을 다운로드하고 솔루션 디렉터리 내의 ~/Libs와 같은 위치에 압축을 푸세요.
  2. Visual Studio 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭합니다. 찾아보기를 선택하고 "IronOCR.dll"을 선택합니다.

라이선스 가격은 749달러 부터 시작합니다.

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.