<meta http-equiv="content-language" content="uk" />
<h1>Українське OCR у C# та .NET</h1>
<h6> Інші версії цього документа:</h6>
<ul>
<li> <a rel='alternate' hreflang='en' href="/csharp/ocr/languages/ukrainian/">Англійська (This Page in English)</a></li>
<li> <a href="/csharp/ocr/languages/">Більше Languages</a></li>
</ul>
<p> IronOCR - це програмний компонент C #, що дозволяє кодерам .NET читати текст із зображень та PDF-документів 126
мовами, включаючи українську.</p>
<p> Це вдосконалена вилка Tesseract, створена виключно для розробників .NET і регулярно перевершує інші двигуни
Tesseract як за швидкістю, так і за точністю.</p>
<h2> Зміст IronOcr.Languages.Ukrainian</h2>
<p> Цей пакет містить 52 мови OCR для .NET:</p>
<ul>
<li> Український</li>
<li> UkrainianBest</li>
<li> Українськийшвидкий</li>
</ul>
<h2> Завантажити</h2>
<p> Український мовний пакет <span style='white-space:default'>[українська мова]</span> <br/> * Download as <a
class='languages-dll' href='/csharp/ocr/packages/language-packs/Ukrainian.ocrdata.zip'>Zip <i
class='fas fa-download'></i><br/> * Install with </a><a target='_blank' class='languages-nuget'
href="https://www.nuget.org/packages/IronOcr.Languages.Ukrainian/">https://www.nuget.org/packages/IronOcr.Languages.Ukrainian/</a>'
NuGet<i class='nuget-icon'></i></p>
<h2> Встановлення</h2>
<p> Перше, що нам потрібно зробити, це встановити наш <strong>український</strong> пакет OCR у ваш проект .NET.</p>
<p> <code>PM> Install-Package IronOcr.Languages.Ukrainian</code></p>
<h2> Приклад коду</h2>
<p> Цей приклад коду C# читає український текст із документа Image або PDF.</p>
```cs
//PM> Install-Package IronOcr.Languages.Ukrainian
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput(@"images\Ukrainian.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
```
<h2>Чому вибрати IronOCR?</h2>
<p> IronOCR - це проста у встановленні, повна та добре документована бібліотека програмного забезпечення .NET.</p>
<p> Виберіть IronOCR, щоб досягти <strong>точності 99,8% + OCR</strong> без використання будь-яких зовнішніх веб-служб,
постійних платежів або надсилання конфіденційних документів через Інтернет.</p>
<h4> Чому розробники C# вибирають IronOCR замість Vanilla Tesseract:</h4>
<ul>
<li> Встановити як одну DLL або Nuget</li>
<li> Включає для Tesseract 5, 4 та 3 двигуни з коробки.</li>
<li> Точність на <strong>99,8%</strong> значно перевершує звичайний Тессеракт.</li>
<li> Висока швидкість та багатопоточність</li>
<li> Сумісність з MVC, WebApp, робочим столом, консоллю та серверною програмою</li>
<li> Немає Exes або коду на C ++ для роботи</li>
<li> Повна підтримка OCR у форматі PDF</li>
<li> Для виконання OCR майже будь-якого файлу зображень або PDF</li>
<li> Повна підтримка .NET Core, Standard та FrameWork</li>
<li> Розгортання на Windows, Mac, Linux, Azure, Docker, Lambda, AWS</li>
<li> Читайте штрих-коди та QR-коди</li>
<li> Експортуйте OCR у формат XHTML</li>
<li> Експортуйте OCR у PDF-документи, які можна шукати</li>
<li> Підтримка багатопоточності</li>
<li> 126 міжнародних мов, усіма якими управляють за допомогою файлів Nuget або OcrData</li>
<li> Витяг зображень, координат, статистики та шрифтів. Не лише текст.</li>
<li> Може використовуватися для розповсюдження OCR Tesseract у комерційних та власних додатках.</li>
</ul>
<p> <em>Залізо OCR блищить під час роботи з реальними зображеннями та недосконалими документами, такими як фотографії,
або скани з низькою роздільною здатністю, які можуть мати цифрові шуми або недоліки.</em></p>
<p> Інші <a href="/csharp/ocr/use-case/free-ocr-csharp/">безкоштовні</a> бібліотеки <a
href="/csharp/ocr/use-case/free-ocr-csharp/">OCR</a> для платформи .NET, такі як інші API-інтерфейси .NET
Tesseract та веб-служби, не мають такої ефективної роботи у цих реальних випадках використання.</p>
<h2> OCR з Tesseract 5 - Почніть кодування на C #</h2>
<p> Наведений нижче зразок коду показує, наскільки легко читати текст із зображення за допомогою C# або VB .NET.</p>
<h3> OneLiner</h3>
```cs
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
```
<h3>Настроюваний Hello World</h3>
```cs
// PM> Install-Package IronOcr.Languages.Ukrainian
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... Ви можете додати будь-яку кількість зображень
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>C# PDF OCR</h3>
<p> Той самий підхід можна використовувати аналогічно для вилучення тексту з будь-якого документа PDF.</p>
```cs
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
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
}
```
<h3>OCR для багатосторінкових TIFF</h3>
<p> OCR Читання формату файлу TIFF, включаючи багатосторінкові документи. TIFF також можна перетворити безпосередньо у
файл PDF із текстом, який можна шукати.</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>Штрих-коди та QR</h3>
<p> Унікальною особливістю заліза OCR є те, що він може зчитувати штрих-коди та QR-коди з документів під час сканування
тексту. Екземпляри класу <code>OcrResult.OcrBarcode</code> дають розробнику детальну інформацію про кожен
відсканований штрих-код.</p>
```cs
// 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);
// властивості типу та розташування також виявлені
}
}
```
<h3>OCR для певних областей зображень</h3>
<p> Всі методи сканування та зчитування заліза OCR дають можливість точно вказати, з якої частини сторінки чи сторінок
ми хочемо читати текст. Це дуже корисно, коли ми розглядаємо стандартизовані форми та можемо заощадити дуже багато
часу та підвищити ефективність.</p>
<p> Щоб використовувати області обрізання, нам потрібно буде додати системне посилання на <code>System.Drawing</code>
щоб ми могли використовувати об'єкт <code>System.Drawing.Rectangle</code> .</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Розміри вказані в пікселях
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>OCR для сканування низької якості</h3>
<p> Клас IronOCR <code>OcrInput</code> може виправити сканування, які звичайний Tesseract не може прочитати.</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // виправлено цифровий шум та погане сканування
Input.Deskew(); // фіксує обертання та перспективу
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>Експортувати результати OCR у форматі PDF для пошуку</h3>
<p> Зображення в PDF із копіюваними текстовими рядками. Може індексуватися пошуковими системами та базами даних.</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
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")
}
```
<h3>TIFF для перетворення PDF перетворення</h3>
<p> Перетворіть документ TIFF (або будь-яку групу файлів зображень) безпосередньо у PDF-файл, який можна шукати, і який
можна проіндексувати в інтрамережі, на веб-сайті та в пошукових системах Google.</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
```
<h3>Експортувати результати OCR у форматі HTML</h3>
<p> Перетворення OCR-зображень у XHTML.</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
```
<h2>Фільтри покращення OCR-зображень</h2>
<p> IronOCR пропонує унікальні фільтри для об'єктів <code>OcrInput</code> для покращення продуктивності OCR.</p>
<h3> Приклад коду покращення зображення</h3>
<p> Робить вхідні зображення OCR більш якісними, щоб отримати кращі та швидші результати OCR.</p>
```cs
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // виправлено цифровий шум та погане сканування
Input.Deskew(); // фіксує обертання та перспективу
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
<h3>Список фільтрів зображень OCR</h3>
<p> Вхідні фільтри для підвищення продуктивності OCR, які вбудовані в IronOCR, включають:</p>
<ul>
<li> <strong>OcrInput.Rotate (подвійні градуси)</strong> - обертає зображення на певну кількість градусів за
годинниковою стрілкою. Для проти годинникової стрілки використовуйте від’ємні числа.</li>
<li> <strong>OcrInput.Binarize ()</strong> - Цей фільтр зображень робить кожен піксель чорно-білим без жодної
<strong>золотистої</strong> точки. Може покращити ефективність оптичного розпізнавання тексту з дуже низьким
контрастом тексту до фону.</li>
<li> <strong>OcrInput.ToGrayScale ()</strong> - Цей фільтр зображення перетворює кожен піксель у відтінок сірого.
Навряд чи покращить точність розпізнавання, але може покращити швидкість</li>
<li> <strong>OcrInput.Contrast ()</strong> - Автоматично збільшує контраст. Цей фільтр часто покращує швидкість та
точність OCR при скануванні з низькою контрастністю.</li>
<li> <strong>OcrInput.DeNoise ()</strong> - Видаляє цифрові шуми. Цей фільтр слід використовувати лише там, де
очікується шум.</li>
<li> <strong>OcrInput.Invert ()</strong> - Інвертує кожен колір. Наприклад, білий стає чорним: чорний стає білим.</li>
<li> <strong>OcrInput.Dilate ()</strong> - Розширена морфологія. <em>Розширення</em> додає пікселі до меж об’єктів
на зображенні. Навпроти Ероде</li>
<li> <strong>OcrInput.Erode ()</strong> - Розширена морфологія. <em>Ерозія</em> видаляє пікселі на межі об’єкта,
навпроти розширеного</li>
<li> <strong>OcrInput.Deskew ()</strong> - Обертає зображення, щоб воно було правильним вгору та ортогональним. Це
дуже корисно для OCR, оскільки допуск Tesseract для перекошеного сканування може бути до 5 градусів.</li>
<li> <strong>OcrInput.DeepCleanBackgroundNoise ()</strong> - Видалення <strong>сильного</strong> фонового шуму.
Використовуйте цей фільтр лише в тому випадку, якщо відомий екстремальний фоновий шум документа, оскільки цей
фільтр також ризикує знизити точність OCR чистих документів і дуже дорогий для процесора.</li>
<li> <strong>OcrInput.EnhanceResolution</strong> - покращує роздільну здатність зображень низької якості. Цей фільтр
часто не потрібен, оскільки <em>OcrInput.MinimumDPI</em> та <em>OcrInput.TargetDPI</em> автоматично вловлюють і
вирішують входи з низькою роздільною здатністю.</li>
</ul>
<p> <strong>CleanBackgroundNoise.</strong> Це параметр, який забирає багато часу; однак це дозволяє бібліотеці
автоматично очищати цифровий шум, зім'ятий папір та інші недоліки в цифровому зображенні, що в іншому випадку
зробить його неможливим для читання іншими бібліотеками OCR.</p>
<p> <strong>EnhanceContrast</strong> - це параметр, який змушує OCR для заліза автоматично збільшувати контраст тексту
на тлі зображення, підвищуючи точність OCR і, як правило, збільшуючи продуктивність та швидкість OCR.</p>
<p> <strong>EnhanceResolution</strong> - це параметр, який автоматично розпізнає зображення з низькою роздільною
здатністю (менше 275 точок на дюйм), автоматично <strong>збільшує масштаб</strong> зображення, а потім загострює
весь текст, щоб його можна було безперешкодно читати бібліотекою OCR. Хоча ця операція сама по собі трудомістка,
вона, як правило, скорочує загальний час операції OCR на зображенні.</p>
<p> OCR для розпізнавання <strong>мови</strong> Iron підтримує 22 міжнародні мовні пакети, а налаштування мови можна
використовувати для вибору однієї або декількох мов, що застосовуються для операції OCR.</p>
<p> <strong>Стратегія</strong> IronOCR підтримує дві стратегії. Ми можемо вибрати швидке і менш точне сканування
документа або скористатися вдосконаленою стратегією, яка використовує деякі моделі штучного інтелекту для
автоматичного підвищення точності тексту OCR, розглядаючи статистичний зв’язок слів між собою в реченні .</p>
<p> <strong>ColorSpace</strong> - це параметр, за допомогою якого ми можемо вибрати OCR у відтінках сірого або в
кольорі. Як правило, найкращим варіантом є відтінки сірого. Однак іноді, коли є тексти або фони подібного відтінку,
але дуже різного кольору, повнокольоровий кольоровий простір забезпечить кращі результати.</p>
<p> <strong>DetectWhiteTextOnDarkBackgrounds.</strong> Як правило, усі бібліотеки OCR очікують побачити чорний текст на
білому тлі. Цей параметр дозволяє залізному OCR автоматично виявляти негативи або темні сторінки з білим текстом і
читати їх.</p>
<p> <strong>InputImageType.</strong> Цей параметр дозволяє розробнику керувати бібліотекою OCR щодо того, переглядає
вона повний документ або фрагмент, наприклад знімок екрана.</p>
<p> <strong>RotateAndStraighten</strong> - це вдосконалений параметр, який дозволяє IronOCR отримати унікальну
можливість читати документи, які не тільки обертаються, але, можливо, містять перспективу, наприклад, фотографії
текстових документів.</p>
<p> <strong>ReadBarcode</strong> - це корисна функція, яка дозволяє IronOCR автоматично читати штрих-коди та QR-коди на
сторінках, оскільки він також зчитує текст, не додаючи великого додаткового часового навантаження.</p>
<p> <strong>Глибина кольору.</strong> Цей параметр визначає, скільки бітів на піксель буде використовувати бібліотека
OCR для визначення глибини кольору. Більша глибина кольору може підвищити якість OCR, але також збільшить час,
необхідний для завершення операції OCR.</p>
<h2> 126 Мовні пакети</h2>
<p> Залізо OCR підтримує <strong>126 міжнародних мов</strong> за допомогою мовних пакетів, які розповсюджуються у <a
href="/csharp/ocr/languages/">форматі</a> DLL, які можна <a href="/csharp/ocr/languages/">завантажити з цього
веб-сайту</a> або з <a href="https://www.nuget.org/packages?q=IronOcr.Languages">менеджера пакунків NuGet</a> .</p>
<p> Мови включають німецьку, французьку, англійську, китайську, японську та багато інших. Спеціальні мовні пакети
існують для паспортних MRZ, чеків MICR, фінансових даних, номерних знаків та багатьох інших. Ви також можете
використовувати будь-який файл ".traineddata" Tesseract, включаючи ті, які ви створюєте самостійно.</p>
<h3> Мовний приклад</h3>
<p> Використання інших мов OCR.</p>
```cs
// 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");
}
```
<h3>Приклад декількох мов</h3>
<p> Також можливо OCR, використовуючи кілька мов одночасно. Це дійсно може допомогти отримати метадані та URL-адреси
англійської мови в документах Unicode.</p>
```cs
// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Ukrainian);
// Ми можемо додати будь-яку кількість мов
using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
```
<h2>Детальні об'єкти результатів OCR</h2>
<p> Залізо OCR повертає об'єкт результату OCR для кожної операції OCR. Як правило, розробники використовують лише
властивість text цього об’єкта, щоб сканувати текст із зображення. Однак результати OOM DOM набагато вдосконаленіші,
ніж це.</p>
```cs
using IronOcr;
using System.Drawing; //Додайте посилання на збірку
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
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:
// - Сторінки, блоки, парафафи, рядки, слова, символи
// - Експорт зображень, координати шрифтів, статистичні дані
}
```
<h2>Продуктивність</h2>
<p> IronOCR працює нестандартно, не потрібно налаштовувати продуктивність або сильно модифікувати вхідні зображення.</p>
<p> Швидкість блискуча: IronOCR.2020 + до 10 разів швидший і робить на 250% менше помилок, ніж попередні збірки.</p>
<h2> Вивчайте більше</h2>
<p> Щоб дізнатись більше про OCR на C #, VB, F # або будь-якій іншій мові .NET, будь ласка, <a
href="/csharp/ocr/tutorials/how-to-read-text-from-an-image-in-csharp-net/">прочитайте наші навчальні
посібники</a> , які містять реальні приклади того, як можна використовувати OCR із заліза та можуть показати
нюанси, як отримати найкраще від ця бібліотека.</p>
<p> Також доступне повне <a href="/csharp/ocr/object-reference/api/">посилання на об’єкт для розробників .NET</a> .</p>
IronOCR - це програмний компонент C #, що дозволяє кодерам .NET читати текст із зображень та PDF-документів 126
мовами, включаючи українську.
Це вдосконалена вилка Tesseract, створена виключно для розробників .NET і регулярно перевершує інші двигуни
Tesseract як за швидкістю, так і за точністю.
Перше, що нам потрібно зробити, це встановити наш український пакет OCR у ваш проект .NET.
PM> Install-Package IronOcr.Languages.Ukrainian
Приклад коду
Цей приклад коду C# читає український текст із документа Image або PDF.
//PM> Install-Package IronOcr.Languages.Ukrainianusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput(@"images\Ukrainian.png")){varResult = Ocr.Read(Input);VarAllText = Result.Text}
//PM> Install-Package IronOcr.Languages.Ukrainian
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput(@"images\Ukrainian.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
' PM> Install-Package IronOcr.Languages.UkrainianImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInput = New OcrInput("images\Ukrainian.png") DimResult = Ocr.Read(Input) DimAllText = Result.TextEndUsing
' PM> Install-Package IronOcr.Languages.Ukrainian
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input = New OcrInput("images\Ukrainian.png")
Dim Result = Ocr.Read(Input)
Dim AllText = Result.Text
End Using
Чому вибрати IronOCR?
IronOCR - це проста у встановленні, повна та добре документована бібліотека програмного забезпечення .NET.
Виберіть IronOCR, щоб досягти точності 99,8% + OCR без використання будь-яких зовнішніх веб-служб,
постійних платежів або надсилання конфіденційних документів через Інтернет.
Чому розробники C# вибирають IronOCR замість Vanilla Tesseract:
Встановити як одну DLL або Nuget
Включає для Tesseract 5, 4 та 3 двигуни з коробки.
Точність на 99,8% значно перевершує звичайний Тессеракт.
Висока швидкість та багатопоточність
Сумісність з MVC, WebApp, робочим столом, консоллю та серверною програмою
Немає 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
Витяг зображень, координат, статистики та шрифтів. Не лише текст.
Може використовуватися для розповсюдження OCR Tesseract у комерційних та власних додатках.
Залізо OCR блищить під час роботи з реальними зображеннями та недосконалими документами, такими як фотографії,
або скани з низькою роздільною здатністю, які можуть мати цифрові шуми або недоліки.
Інші безкоштовні бібліотеки OCR для платформи .NET, такі як інші API-інтерфейси .NET
Tesseract та веб-служби, не мають такої ефективної роботи у цих реальних випадках використання.
OCR з Tesseract 5 - Почніть кодування на C #
Наведений нижче зразок коду показує, наскільки легко читати текст із зображення за допомогою C# або VB .NET.
OneLiner
stringText = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
DimTextAsString = (New IronTesseract()).Read("img\Screenshot.png").Text
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
Настроюваний Hello World
// PM> Install-Package IronOcr.Languages.Ukrainianusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput()){Input.AddImage("images/sample.jpeg")//... Ви можете додати будь-яку кількість зображеньvarResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// PM> Install-Package IronOcr.Languages.Ukrainian
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... Ви можете додати будь-яку кількість зображень
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcr' PM> Install-Package IronOcr.Languages.UkrainianDimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInputAs New OcrInput()Input.AddImage("images/sample.jpeg") '... Ви можете додати будь-яку кількість зображень DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
' PM> Install-Package IronOcr.Languages.Ukrainian
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input As New OcrInput()
Input.AddImage("images/sample.jpeg")
'... Ви можете додати будь-яку кількість зображень
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
C# PDF OCR
Той самий підхід можна використовувати аналогічно для вилучення тексту з будь-якого документа PDF.
varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (var input = new OcrInput()){input.AddPdf("example.pdf", "password");// Ми також можемо вибрати певні номери сторінок PDF для OCRvarResult = Ocr.Read(input);Console.WriteLine(Result.Text);Console.WriteLine($"{Result.Pages.Count()} Pages");// 1 сторінка для кожної сторінки PDF}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
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
}
DimOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsing input = New OcrInput() input.AddPdf("example.pdf", "password") ' Ми також можемо вибрати певні номери сторінок PDF для OCR DimResult = Ocr.Read(input)Console.WriteLine(Result.Text)Console.WriteLine($"{Result.Pages.Count()} Pages") ' 1 сторінка для кожної сторінки PDFEndUsing
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' Ми також можемо вибрати певні номери сторінок PDF для OCR
Dim Result = Ocr.Read(input)
Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 сторінка для кожної сторінки PDF
End Using
OCR для багатосторінкових TIFF
OCR Читання формату файлу TIFF, включаючи багатосторінкові документи. TIFF також можна перетворити безпосередньо у
файл PDF із текстом, який можна шукати.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput()){input.AddMultiFrameTiff("multi - frame.tiff");varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
input.AddMultiFrameTiff("multi - frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInput = New OcrInput()Input.AddMultiFrameTiff("multi - frame.tiff") DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input = New OcrInput()
Input.AddMultiFrameTiff("multi - frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Штрих-коди та QR
Унікальною особливістю заліза OCR є те, що він може зчитувати штрих-коди та QR-коди з документів під час сканування
тексту. Екземпляри класу OcrResult.OcrBarcode дають розробнику детальну інформацію про кожен
відсканований штрих-код.
// using IronOcr;varOcr = new IronTesseract();Ocr.Configuration.ReadBarCodes = true;using (var input = new OcrInput()){input.AddImage("img/Barcode.png");varResult = Ocr.Read(input);foreach (varBarcodeinResult.Barcodes){Console.WriteLine(Barcode.Value);// властивості типу та розташування також виявлені}}
// 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);
// властивості типу та розташування також виявлені
}
}
' using IronOcr;DimOcr = New IronTesseract()Ocr.Configuration.ReadBarCodes = TrueUsing input = New OcrInput()input.AddImage("img/Barcode.png")DimResult = Ocr.Read(input)For EachBarcodeInResult.BarcodesConsole.WriteLine(Barcode.Value)' властивості типу та розташування також виявленіNextBarcodeEndUsing
' using IronOcr;
Dim Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True
Using input = New OcrInput()
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' властивості типу та розташування також виявлені
Next Barcode
End Using
OCR для певних областей зображень
Всі методи сканування та зчитування заліза OCR дають можливість точно вказати, з якої частини сторінки чи сторінок
ми хочемо читати текст. Це дуже корисно, коли ми розглядаємо стандартизовані форми та можемо заощадити дуже багато
часу та підвищити ефективність.
Щоб використовувати області обрізання, нам потрібно буде додати системне посилання на System.Drawing
щоб ми могли використовувати об'єкт System.Drawing.Rectangle .
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput()){varContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };// Розміри вказані в пікселяхInput.Add("document.png", ContentArea);varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Розміри вказані в пікселях
Input.Add("document.png", ContentArea);
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrDimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInputAs New OcrInput() DimContentAreaAs New System.Drawing.Rectangle() With {.X = 215, .Y = 1250, .Height = 280, .Width = 1335} ' Розміри вказані в пікселяхInput.Add("document.png", ContentArea) DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input As New OcrInput()
Dim ContentArea As New System.Drawing.Rectangle() With {.X = 215, .Y = 1250, .Height = 280, .Width = 1335}
' Розміри вказані в пікселях
Input.Add("document.png", ContentArea)
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
OCR для сканування низької якості
Клас IronOCR OcrInput може виправити сканування, які звичайний Tesseract не може прочитати.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput(@"img\Potter.LowQuality.tiff")){Input.DeNoise(); // виправлено цифровий шум та погане скануванняInput.Deskew(); // фіксує обертання та перспективуvarResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // виправлено цифровий шум та погане сканування
Input.Deskew(); // фіксує обертання та перспективу
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInput = New OcrInput("img\Potter.LowQuality.tiff")Input.DeNoise() ' виправлено цифровий шум та погане скануванняInput.Deskew() ' фіксує обертання та перспективу DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' виправлено цифровий шум та погане сканування
Input.Deskew() ' фіксує обертання та перспективу
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Експортувати результати OCR у форматі PDF для пошуку
Зображення в PDF із копіюваними текстовими рядками. Може індексуватися пошуковими системами та базами даних.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput()){input.Title = "Quarterly Report"input.AddImage("image1.jpeg");input.AddImage("image2.png");input.AddImage("image3.gif");varResult = Ocr.Read(input);Result.SaveAsSearchablePdf("searchable.pdf")}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
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")
}
ImportsIronOcrDimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInputAs New OcrInput()Input.Title = "Quarterly Report"Input.AddImage("image1.jpeg")Input.AddImage("image2.png")Input.AddImage("image3.gif") DimResult = Ocr.Read(Input)Result.SaveAsSearchablePdf("searchable.pdf")EndUsing
Imports IronOcr
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input As New OcrInput()
Input.Title = "Quarterly Report"
Input.AddImage("image1.jpeg")
Input.AddImage("image2.png")
Input.AddImage("image3.gif")
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
TIFF для перетворення PDF перетворення
Перетворіть документ TIFF (або будь-яку групу файлів зображень) безпосередньо у PDF-файл, який можна шукати, і який
можна проіндексувати в інтрамережі, на веб-сайті та в пошукових системах Google.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput()){input.AddMultiFrameTiff("example.tiff")varResult = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
input.AddMultiFrameTiff("example.tiff")
var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInput = New OcrInput()input.AddMultiFrameTiff("example.tiff") var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input = New OcrInput()
input.AddMultiFrameTiff("example.tiff") var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
End Using
Експортувати результати OCR у форматі HTML
Перетворення OCR-зображень у XHTML.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput()){input.Title = "Html Title"input.AddImage("image1.jpeg");varResult = Ocr.Read(input);Result.SaveAsHocrFile("results.html");}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInput = New OcrInput()input.Title = "Html Title" input.AddImage("image1.jpeg")DimResult = Ocr.Read(input)Result.SaveAsHocrFile("results.html")EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input = New OcrInput()
input.Title = "Html Title" input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(input)
Result.SaveAsHocrFile("results.html")
End Using
Фільтри покращення OCR-зображень
IronOCR пропонує унікальні фільтри для об'єктів OcrInput для покращення продуктивності OCR.
Приклад коду покращення зображення
Робить вхідні зображення OCR більш якісними, щоб отримати кращі та швидші результати OCR.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;using (varInput = new OcrInput(@"LowQuality.jpeg")){Input.DeNoise(); // виправлено цифровий шум та погане скануванняInput.Deskew(); // фіксує обертання та перспективуvarResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // виправлено цифровий шум та погане сканування
Input.Deskew(); // фіксує обертання та перспективу
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.UkrainianUsingInput = New OcrInput("LowQuality.jpeg")Input.DeNoise() ' виправлено цифровий шум та погане скануванняInput.Deskew() ' фіксує обертання та перспективуDimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' виправлено цифровий шум та погане сканування
Input.Deskew() ' фіксує обертання та перспективу
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Список фільтрів зображень OCR
Вхідні фільтри для підвищення продуктивності OCR, які вбудовані в IronOCR, включають:
OcrInput.Rotate (подвійні градуси) - обертає зображення на певну кількість градусів за
годинниковою стрілкою. Для проти годинникової стрілки використовуйте від’ємні числа.
OcrInput.Binarize () - Цей фільтр зображень робить кожен піксель чорно-білим без жодної
золотистої точки. Може покращити ефективність оптичного розпізнавання тексту з дуже низьким
контрастом тексту до фону.
OcrInput.ToGrayScale () - Цей фільтр зображення перетворює кожен піксель у відтінок сірого.
Навряд чи покращить точність розпізнавання, але може покращити швидкість
OcrInput.Contrast () - Автоматично збільшує контраст. Цей фільтр часто покращує швидкість та
точність OCR при скануванні з низькою контрастністю.
OcrInput.DeNoise () - Видаляє цифрові шуми. Цей фільтр слід використовувати лише там, де
очікується шум.
OcrInput.Invert () - Інвертує кожен колір. Наприклад, білий стає чорним: чорний стає білим.
OcrInput.Dilate () - Розширена морфологія. Розширення додає пікселі до меж об’єктів
на зображенні. Навпроти Ероде
OcrInput.Erode () - Розширена морфологія. Ерозія видаляє пікселі на межі об’єкта,
навпроти розширеного
OcrInput.Deskew () - Обертає зображення, щоб воно було правильним вгору та ортогональним. Це
дуже корисно для OCR, оскільки допуск Tesseract для перекошеного сканування може бути до 5 градусів.
OcrInput.DeepCleanBackgroundNoise () - Видалення сильного фонового шуму.
Використовуйте цей фільтр лише в тому випадку, якщо відомий екстремальний фоновий шум документа, оскільки цей
фільтр також ризикує знизити точність OCR чистих документів і дуже дорогий для процесора.
OcrInput.EnhanceResolution - покращує роздільну здатність зображень низької якості. Цей фільтр
часто не потрібен, оскільки OcrInput.MinimumDPI та OcrInput.TargetDPI автоматично вловлюють і
вирішують входи з низькою роздільною здатністю.
CleanBackgroundNoise. Це параметр, який забирає багато часу; однак це дозволяє бібліотеці
автоматично очищати цифровий шум, зім'ятий папір та інші недоліки в цифровому зображенні, що в іншому випадку
зробить його неможливим для читання іншими бібліотеками OCR.
EnhanceContrast - це параметр, який змушує OCR для заліза автоматично збільшувати контраст тексту
на тлі зображення, підвищуючи точність OCR і, як правило, збільшуючи продуктивність та швидкість OCR.
EnhanceResolution - це параметр, який автоматично розпізнає зображення з низькою роздільною
здатністю (менше 275 точок на дюйм), автоматично збільшує масштаб зображення, а потім загострює
весь текст, щоб його можна було безперешкодно читати бібліотекою OCR. Хоча ця операція сама по собі трудомістка,
вона, як правило, скорочує загальний час операції OCR на зображенні.
OCR для розпізнавання мови Iron підтримує 22 міжнародні мовні пакети, а налаштування мови можна
використовувати для вибору однієї або декількох мов, що застосовуються для операції OCR.
Стратегія IronOCR підтримує дві стратегії. Ми можемо вибрати швидке і менш точне сканування
документа або скористатися вдосконаленою стратегією, яка використовує деякі моделі штучного інтелекту для
автоматичного підвищення точності тексту OCR, розглядаючи статистичний зв’язок слів між собою в реченні .
ColorSpace - це параметр, за допомогою якого ми можемо вибрати OCR у відтінках сірого або в
кольорі. Як правило, найкращим варіантом є відтінки сірого. Однак іноді, коли є тексти або фони подібного відтінку,
але дуже різного кольору, повнокольоровий кольоровий простір забезпечить кращі результати.
DetectWhiteTextOnDarkBackgrounds. Як правило, усі бібліотеки OCR очікують побачити чорний текст на
білому тлі. Цей параметр дозволяє залізному OCR автоматично виявляти негативи або темні сторінки з білим текстом і
читати їх.
InputImageType. Цей параметр дозволяє розробнику керувати бібліотекою OCR щодо того, переглядає
вона повний документ або фрагмент, наприклад знімок екрана.
RotateAndStraighten - це вдосконалений параметр, який дозволяє IronOCR отримати унікальну
можливість читати документи, які не тільки обертаються, але, можливо, містять перспективу, наприклад, фотографії
текстових документів.
ReadBarcode - це корисна функція, яка дозволяє IronOCR автоматично читати штрих-коди та QR-коди на
сторінках, оскільки він також зчитує текст, не додаючи великого додаткового часового навантаження.
Глибина кольору. Цей параметр визначає, скільки бітів на піксель буде використовувати бібліотека
OCR для визначення глибини кольору. Більша глибина кольору може підвищити якість OCR, але також збільшить час,
необхідний для завершення операції OCR.
Мови включають німецьку, французьку, англійську, китайську, японську та багато інших. Спеціальні мовні пакети
існують для паспортних MRZ, чеків MICR, фінансових даних, номерних знаків та багатьох інших. Ви також можете
використовувати будь-який файл ".traineddata" Tesseract, включаючи ті, які ви створюєте самостійно.
Мовний приклад
Використання інших мов OCR.
// using IronOcr;// PM> Install IronOcr.Languages.ArabicvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Arabic;using (var input = new OcrInput()){input.AddImage("img/arabic.gif");// За потреби додайте фільтри зображення// У цьому випадку навіть введення думок дуже низької якості// IronTesseract може прочитати те, що не може звичайний Tesseract.varResult = Ocr.Read(input);// Консоль не може легко друкувати арабською мовою у Windows.// Давайте збережемо на диск.Result.SaveAsTextFile("arabic.txt");}
// 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");
}
' Imports IronOcr' PM> Install IronOcr.Languages.ArabicDimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.ArabicUsing input As New OcrInput() input.AddImage("img/arabic.gif") ' За потреби додайте фільтри зображення ' У цьому випадку навіть введення думок дуже низької якості ' IronTesseract може прочитати те, що не може звичайний Tesseract. DimResult = Ocr.Read(input) ' Консоль не може легко друкувати арабською мовою у Windows. ' Давайте збережемо на диск.Result.SaveAsTextFile("arabic.txt")EndUsing
' Imports IronOcr
' PM> Install IronOcr.Languages.Arabic
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Arabic
Using input As New OcrInput()
input.AddImage("img/arabic.gif")
' За потреби додайте фільтри зображення
' У цьому випадку навіть введення думок дуже низької якості
' IronTesseract може прочитати те, що не може звичайний Tesseract.
Dim Result = Ocr.Read(input)
' Консоль не може легко друкувати арабською мовою у Windows.
' Давайте збережемо на диск.
Result.SaveAsTextFile("arabic.txt")
End Using
Приклад декількох мов
Також можливо OCR, використовуючи кілька мов одночасно. Це дійсно може допомогти отримати метадані та URL-адреси
англійської мови в документах Unicode.
// using IronOcr;// PM> Install IronOcr.Languages.ChineseSimplifiedvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.ChineseSimplified;Ocr.AddSecondaryLanguage(OcrLanguage.Ukrainian);// Ми можемо додати будь-яку кількість мовusing (var input = new OcrInput()){input.Add("multi - language.pdf");varResult = Ocr.Read(input);Result.SaveAsTextFile("results.txt");}
// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.ChineseSimplified;
Ocr.AddSecondaryLanguage(OcrLanguage.Ukrainian);
// Ми можемо додати будь-яку кількість мов
using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
' Imports IronOcr' PM> Install IronOcr.Languages.ChineseSimplifiedDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.ChineseSimplifiedOcr.AddSecondaryLanguage(OcrLanguage.Ukrainian)' Ми можемо додати будь-яку кількість мовUsing input = New OcrInput() input.Add("multi - language.pdf") DimResult = Ocr.Read(input)Result.SaveAsTextFile("results.txt")EndUsing
' Imports IronOcr
' PM> Install IronOcr.Languages.ChineseSimplified
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified
Ocr.AddSecondaryLanguage(OcrLanguage.Ukrainian)
' Ми можемо додати будь-яку кількість мов
Using input = New OcrInput()
input.Add("multi - language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
Детальні об'єкти результатів OCR
Залізо OCR повертає об'єкт результату OCR для кожної операції OCR. Як правило, розробники використовують лише
властивість text цього об’єкта, щоб сканувати текст із зображення. Однак результати OOM DOM набагато вдосконаленіші,
ніж це.
using IronOcr;using System.Drawing; //Додайте посилання на збіркуvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Ukrainian;Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;Ocr.Configuration.ReadBarCodes = true; //! Важливоusing (varInput = new OcrInput(@"images\sample.tiff")){OcrResultResult = Ocr.Read(Input);varPages = Result.Pages;varWords = Pages[0].Words;varBarcodes = Result.Barcodes;// Дослідіть тут, щоб знайти масивний, детальний API:// - Сторінки, блоки, парафафи, рядки, слова, символи// - Експорт зображень, координати шрифтів, статистичні дані}
using IronOcr;
using System.Drawing; //Додайте посилання на збірку
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Ukrainian;
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:
// - Сторінки, блоки, парафафи, рядки, слова, символи
// - Експорт зображень, координати шрифтів, статистичні дані
}
Imports IronOcr
Imports System.Drawing 'Додайте посилання на збірку
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Ukrainian
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '! Важливо
Using Input As New OcrInput("images\sample.tiff")
Dim Result As OcrResult = Ocr.Read(Input)
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' Дослідіть тут, щоб знайти масивний, детальний API:
' - Сторінки, блоки, парафафи, рядки, слова, символи
' - Експорт зображень, координати шрифтів, статистичні дані
End Using
Продуктивність
IronOCR працює нестандартно, не потрібно налаштовувати продуктивність або сильно модифікувати вхідні зображення.
Швидкість блискуча: IronOCR.2020 + до 10 разів швидший і робить на 250% менше помилок, ніж попередні збірки.
Вивчайте більше
Щоб дізнатись більше про OCR на C #, VB, F # або будь-якій іншій мові .NET, будь ласка, прочитайте наші навчальні
посібники , які містять реальні приклади того, як можна використовувати OCR із заліза та можуть показати
нюанси, як отримати найкраще від ця бібліотека.
Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.