IRONSOFTWAREHOME

Беларускае OCR у C# і .NET

Curtis Chau
Curtis Chau
Updated: 2026年6月29日
Іншыя версіі гэтага дакумента:

IronOCR - гэта праграмны кампанент C#, які дазваляе .NET-кодэрам чытаць тэкст з малюнкаў і PDF-дакументаў на 126 мовах, уключаючы беларускую.

Гэта ўдасканалены відэлец Tesseract, распрацаваны выключна для распрацоўшчыкаў .NET і рэгулярна пераўзыходзіць астатнія рухавікі Tesseract як па хуткасці, так і па дакладнасці.

Змест IronOcr.Languages.Belarusian

Гэты пакет утрымлівае 55 моў OCR для .NET:

  • Беларуская
  • БеларускіЛепшы
  • БеларускіХуткі

Спампаваць

Беларускі моўны пакет [беларуская мова]

Ўстаноўка

Першае, што нам трэба зрабіць, гэта ўсталяваць наш беларускі OCR-пакет у ваш .NET-праект.

PM > Install-Package IronOcr.Languages.Belarusian

Прыклад кода

Гэты прыклад кода C# чытае беларускі тэкст з дакумента Image або PDF.

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;
using (var Input = new OcrInput(@"images\Belarusian.png"))
{
    var Result = Ocr.Read(Input);
    string AllText = Result.Text; // Store the recognized text
}

Чаму абраць IronOCR?

IronOCR - простая ва ўсталёўцы, поўная і добра дакументаваная бібліятэка праграмнага забеспячэння .NET. Выберыце IronOCR, каб дасягнуць дакладнасці 99,8% + OCR без выкарыстання якіх-небудзь знешніх вэб-сэрвісаў, пастаянных збораў і адпраўкі канфідэнцыйных дакументаў праз Інтэрнэт.

Чаму распрацоўшчыкі C# выбіраюць IronOCR перад ванільным тэсэрактам:

  • Усталюйце як адну DLL альбо NuGet
  • Уключае ў сябе рухавікі Tesseract 5, 4 і 3 з камплектацыі.
  • Дакладнасць 99,8% значна пераўзыходзіць звычайны тэсэракт.
  • Дзіўная хуткасць і шматпрофільнасць
  • Сумяшчальнасць з MVC, WebApp, працоўным сталом, кансоллю і серверным дадаткам
  • Няма Exes або кода C++, з якім можна працаваць
  • Поўная падтрымка PDF OCR
  • Для выканання OCR практычна любога файла выявы альбо PDF
  • Поўная падтрымка .NET Core, Standard і FrameWork
  • Разгортванне на Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Чытайце штрых-коды і QR-коды
  • Экспарт OCR у XHTML
  • Экспарт OCR ў PDF-дакументы для пошуку
  • Падтрымка шматструменнасці
  • 126 міжнародных моў, якімі кіруюць з дапамогай файлаў NuGet або OcrData
  • Выманне малюнкаў, каардынат, статыстыкі і шрыфтоў. Не толькі тэкст.
  • Можа выкарыстоўвацца для распаўсюджвання OCR Tesseract у камерцыйных і ўласных праграмах.

OCR ззяе з жалеза пры працы з выявамі з рэальнага свету і недасканалымі дакументамі, напрыклад, фотаздымкамі альбо сканаваннямі з нізкім дазволам, якія могуць мець лічбавыя шумы альбо недасканаласці.

Іншыя бясплатныя бібліятэкі OCR для платформы .NET, такія як іншыя API .NET Tesseract і вэб-сэрвісы, не вельмі эфектыўна працуюць у гэтых выпадках выкарыстання ў рэальным свеце.

OCR з Tesseract 5 - Пачніце кадзіраванне на C#

Прыведзены ніжэй ўзор кода паказвае, як лёгка чытаць тэкст з выявы з дапамогай C# альбо VB .NET.

OneLiner

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;

Наладжвальны Hello World

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;
using (var Input = new OcrInput())
{
    Input.AddImage("images/sample.jpeg");
    // Дадайце любую колькасць малюнкаў
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
}

C# PDF OCR

Такім жа падыходам можна аналагічна выкарыстаць выманне тэксту з любога дакумента PDF.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;
using (var input = new OcrInput())
{
    input.AddPdf("example.pdf", "password");
    // Мы таксама можам выбраць пэўныя нумары старонак PDF для OCR

    var Result = Ocr.Read(input);

    Console.WriteLine(Result.Text);
    Console.WriteLine($"{Result.Pages.Count()} Pages");
    // 1 старонка для кожнай старонкі PDF
}

OCR для шматстаронкавых TIFF

Чытанне фармата OCR у фармаце TIFF, уключаючы шматстаронкавыя дакументы. TIFF таксама можна пераўтварыць непасрэдна ў файл PDF з тэкстам для пошуку.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput())
{
    input.AddMultiFrameTiff("multi-frame.tiff");
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
}

Штрых-коды і QR

Унікальнай асаблівасцю IronOCR з'яўляецца тое, што ён можа счытваць штрых-коды і QR-коды з дакументаў падчас сканавання тэксту. Клас OcrResult.OcrBarcode дае распрацоўшчыку падрабязную інфармацыю пра кожны адсканаваны штрых-код.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;

using (var input = new OcrInput())
{
    input.AddImage("img/Barcode.png");
    var Result = Ocr.Read(input);
    foreach (var Barcode in Result.Barcodes)
    {
        Console.WriteLine(Barcode.Value);
        // Тып і ўласцівасці размяшчэння таксама падвяргаюцца
    }
}

OCR па пэўных галінах малюнкаў

Усе метады сканавання і счытвання OCR з дапамогай IronOCR дазваляюць дакладна ўказаць, з якой часткі старонкі ці старонак мы хочам прачытаць тэкст. Гэта вельмі карысна, калі мы разглядаем стандартызаваныя формы і можам зэканоміць вельмі шмат часу і павысіць эфектыўнасць.

Каб выкарыстоўваць рэгіёны ўраджаю, нам трэба будзе дадаць сістэмную спасылку на System.Drawing каб мы маглі выкарыстоўваць аб'ект System.Drawing.Rectangle.

using IronOcr;
using System.Drawing; // Дадайце спасылку на зборку

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput())
{
    var ContentArea = new Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
    // Памеры ў пікселях

    Input.Add("document.png", ContentArea);

    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
}

OCR для сканавання нізкай якасці

Клас IronOCR OcrInput можа выправіць сканаванне, якое звычайны Tesseract не можа прачытаць.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
    Input.DeNoise(); // Выпраўляе лічбавыя шумы і дрэннае сканаванне
    Input.Deskew(); // Фіксуе кручэнне і перспектыву
    var Result = Ocr.Read(Input);
    Console.WriteLine(Result.Text);
}

Экспарт OCR вынікаў у PDF для пошуку

Выява ў PDF з тэкставымі радкамі, якія можна капіраваць. Можа быць праіндэксавана пошукавымі сістэмамі і базамі дадзеных.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput())
{
    input.Title = "Quarterly Report";
    input.AddImage("image1.jpeg");
    input.AddImage("image2.png");
    input.AddImage("image3.gif");

    var Result = Ocr.Read(input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}

TIFF для пераўтварэння PDF з магчымасцю пошуку

Пераўтварыце дакумент TIFF (альбо любую групу файлаў малюнкаў) непасрэдна ў PDF-файл для пошуку, які можна праіндэксаваць у інтрасеці, на вэб-сайтах і ў пошукавых сістэмах Google.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput())
{
    input.AddMultiFrameTiff("example.tiff");
    var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf");
}

Экспарт OCR вынікаў у HTML

Пераўтварэнне выявы ў фармат OCR ў XHTML.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput())
{
    input.Title = "Html Title";
    input.AddImage("image1.jpeg");
    var Result = Ocr.Read(input);
    Result.SaveAsHocrFile("results.html");
}

Фільтры для паляпшэння выявы OCR

IronOCR прадастаўляе ўнікальныя фільтры для аб'ектаў OcrInput для паляпшэння прадукцыйнасці OCR.

Прыклад кода паляпшэння малюнка

Зрабляе ўводныя выявы OCR больш высокай якасцю, каб атрымаць лепшыя і больш хуткія вынікі OCR.

using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
    Input.DeNoise(); // Выпраўляе лічбавыя шумы і дрэннае сканаванне
    Input.Deskew(); // Фіксуе кручэнне і перспектыву
    var Result = Ocr.Read(Input);
    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, таму што дапушчальнае дапушчэнне Tesseract да скасаваных сканаванняў можа складаць да 5 градусаў.
  • OcrInput.DeepCleanBackgroundNoise() - Выдаленне моцнага фонавага шуму. Выкарыстоўвайце гэты фільтр толькі ў тым выпадку, калі вядомы экстрэмальны фонавы шум дакумента, бо гэты фільтр таксама рызыкуе знізіць дакладнасць OCR чыстых дакументаў і вельмі дарагі для працэсара.
  • OcrInput.EnhanceResolution - Павышае дазвол малюнкаў нізкай якасці. Гэты фільтр часта не патрэбны, таму што OcrInput.MinimumDPI і OcrInput.TargetDPI аўтаматычна ўлоўлівае і вырашае ўвод з нізкім дазволам.

CleanBackgroundNoise. Гэта ўстаноўка займае некалькі часу; аднак гэта дазваляе бібліятэцы аўтаматычна чысціць лічбавыя шумы, скамячэнне паперы і іншыя недахопы ў лічбавым малюнку, якія ў адваротным выпадку робяць яго немагчымым для чытання іншымі бібліятэкамі OCR.

EnhanceContrast - гэта налада, якая прымушае OCR для жалеза аўтаматычна павялічваць кантраст тэксту на фоне выявы, павялічваючы дакладнасць OCR і, як правіла, павялічваючы прадукцыйнасць і хуткасць OCR.

EnhanceResolution - гэта налада, якая аўтаматычна выяўляе выявы з нізкім дазволам (памерам менш 275 dpi) і аўтаматычна павялічвае малюнак, а затым завострывае ўвесь тэкст, каб яго можна было выдатна прачытаць у бібліятэцы OCR. Нягледзячы на тое, што гэтая аперацыя сама па сабе працаёмкая, яна звычайна скарачае агульны час аперацыі OCR для выявы.

OCR для мовы Iron падтрымлівае 22 міжнародныя моўныя пакеты, і налада мовы можа быць выкарыстана для выбару адной або некалькіх моў, якія будуць прымяняцца для аперацыі OCR.

Стратэгія IronOCR падтрымлівае дзве стратэгіі. Мы можам выбраць альбо хуткае і менш дакладнае сканаванне дакумента, альбо выкарыстоўваць прасунутую стратэгію, якая выкарыстоўвае некаторыя мадэлі штучнага інтэлекту для аўтаматычнага павышэння дакладнасці тэксту OCR, разглядаючы статыстычную сувязь слоў паміж сабой у сказе.

ColorSpace - гэта параметр, пры якім мы можам выбраць OCR у адценнях шэрага ці ў колеры. Наогул, адценні шэрага - гэта лепшы варыянт. Аднак часам, калі ёсць тэксты альбо фоны падобнага адцення, але вельмі рознага колеру, поўнакаляровая каляровая прастора дасць лепшыя вынікі.

DetectWhiteTextOnDarkBackgrounds. Як правіла, усе бібліятэкі OCR чакаюць чорнага тэксту на белым фоне. Гэты параметр дазваляе IronOCR аўтаматычна выяўляць мінусы альбо цёмныя старонкі з белым тэкстам і счытваць іх.

InputImageType. Гэты параметр дазваляе распрацоўшчыку накіроўваць бібліятэку OCR на тое, ці праглядае яна поўны дакумент альбо фрагмент, напрыклад скрыншот.

RotateAndStraighten - гэта ўдасканалены параметр, які дазваляе IronOCR унікальную магчымасць чытаць дакументы, якія не толькі паварочваюцца, але, магчыма, і ўтрымліваюць перспектыву, напрыклад, фатаграфіі тэкставых дакументаў.

ReadBarcode - карысная функцыя, якая дазваляе IronOCR аўтаматычна счытваць штрых-коды і QR-коды на старонках, бо ён таксама счытвае тэкст, не дадаючы вялікай дадатковай часовай нагрузкі.

Глыбіня колеру. Гэты параметр вызначае, колькі біт на піксель будзе выкарыстоўваць бібліятэка OCR для вызначэння глыбіні колеру. Большая глыбіня колеру можа павялічыць якасць OCR, але таксама павялічыць час, неабходны для завяршэння аперацыі OCR.

126 Моўныя пакеты

IronOCR падтрымлівае 126 міжнародных моў праз моўныя пакеты, якія распаўсюджваюцца ў выглядзе DLL-файлаў, якія можна загрузіць з гэтага вэб-сайта альбо з дыспетчара пакетаў NuGet.

Мовы ўключаюць нямецкую, французскую, англійскую, кітайскую, японскую і шмат іншых. Спецыялізаваныя моўныя пакеты існуюць для пашпартных MRZ, чэкаў MICR, фінансавых дадзеных, нумароў і многіх іншых. Вы таксама можаце выкарыстоўваць любы файл ".traineddata" Tesseract - уключаючы тыя, якія ствараеце самі.

Моўны прыклад

Выкарыстанне іншых моў OCR.

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;

using (var input = new OcrInput())
{
    input.AddImage("img/arabic.gif");
    // Пры неабходнасці дадайце фільтры малюнкаў
    // У гэтым выпадку нават уклад думкі вельмі нізкі
    // IronTesseract можа прачытаць тое, што не можа звычайны Tesseract.

    var Result = Ocr.Read(input);

    // Кансоль не можа лёгка друкаваць арабскую мову на Windows.
    // Давайце захаваем на дыск
    Result.SaveAsTextFile("arabic.txt");
}

Прыклад некалькіх моў

Таксама магчыма OCR, выкарыстоўваючы некалькі моў адначасова. Гэта сапраўды можа дапамагчы атрымаць метаданыя і URL-адрасы на англійскай мове ў дакументах Unicode.

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Belarusian);

// Мы можам дадаць любую колькасць моў

using (var input = new OcrInput())
{
    input.Add("multi-language.pdf");
    var Result = Ocr.Read(input);
    Result.SaveAsTextFile("results.txt");
}

Падрабязныя аб'екты вынікаў OCR

IronOCR вяртае аб'ект выніка OCR для кожнай аперацыі OCR. Як правіла, распрацоўшчыкі выкарыстоўваюць толькі ўласцівасць тэксту гэтага аб'екта, каб сканаваць тэкст з выявы. Аднак вынікі OCR DOM значна больш прасунутыя, чым гэта.

using IronOcr;
using System.Drawing; // Дадайце спасылку на зборку

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Belarusian;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Важна

using (var Input = new OcrInput(@"images\sample.tiff"))
{
    OcrResult Result = Ocr.Read(Input);
    var Pages = Result.Pages;
    var Words = Pages[0].Words;
    var Barcodes = Result.Barcodes;
    // Даведайцеся тут, каб знайсці масіўны падрабязны API:
    // - Старонкі, блокі, парафагі, радкі, словы, сімвалы
    // - Экспарт малюнкаў, каардынаты шрыфтоў, статыстычныя дадзеныя
}

Прадукцыйнасць

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

Хуткасць дзіўная: IronOCR.2020 + да 10 разоў хутчэй і дапускае на 250% менш памылак, чым у папярэдніх зборках.

Даведайся больш

Каб даведацца больш пра OCR на C#, VB, F# альбо любой іншай мове .NET, прачытайце нашы падручнікі па супольнасці, якія прыводзяць рэальныя прыклады таго, як можна выкарыстоўваць OCR Iron, і могуць паказаць нюансы, як атрымаць лепшае з гэтая бібліятэка.

Поўная спасылка на аб'ект для распрацоўшчыкаў .NET таксама даступная.

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

...
阅读更多

准备开始了吗?

Nuget Downloads 6,236,385版本:2026.9刚刚发布

立即获取您的免费30 天试用密钥
无需信用卡或创建账户
C# 用于 PDF 的 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”

许可证售价$999

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 天试用密钥
无需信用卡或创建账户