Български OCR в C# и .NET
Други версии на този документ:
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);
}
// 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);
}
' Install the Bulgarian OCR language package
' PM> Install-Package IronOcr.Languages.Bulgarian
Imports IronOcr
Private Ocr = New IronTesseract()
' Specify the language for OCR as Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using Input = New OcrInput("images\Bulgarian.png")
' Perform OCR on the input image
Dim Result = Ocr.Read(Input)
' Get the extracted text
Dim AllText = Result.Text
' Output the text to console or another output function as needed
Console.WriteLine(AllText)
End Using
Защо да изберете 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);
// Perform OCR on an image in a single line
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Console.WriteLine(Text);
' Perform OCR on an image in a single line
Dim Text As String = (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);
}
// 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);
}
' PM> Install-Package IronOCR.Languages.Bulgarian
Imports IronOcr
Private Ocr = New IronTesseract()
' Set Bulgarian as the OCR language
Ocr.Language = OcrLanguage.Bulgarian
Using Input = New OcrInput()
' Add image to the OCR input
Input.AddImage("images/sample.jpeg")
' You can add any number of images
Dim Result = Ocr.Read(Input)
' Output the recognized text
Console.WriteLine(Result.Text)
End Using
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
}
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
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using 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
Dim Result = Ocr.Read(input)
Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' Outputs the page count of the PDF file
End Using
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);
}
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);
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using Input = New OcrInput()
' Load a multi-frame TIFF file
Input.AddMultiFrameTiff("multi-frame.tiff")
' Perform OCR on the input TIFF
Dim Result = Ocr.Read(Input)
' Output the recognized text
Console.WriteLine(Result.Text)
End Using
Баркодове и 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
}
}
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
}
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Enable barcode reading
Ocr.Configuration.ReadBarCodes = True
Using input = New OcrInput()
' Add image to OCR input
input.AddImage("img/Barcode.png")
' Perform OCR on input image
Dim Result = Ocr.Read(input)
' Iterate through scanned barcodes
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' Additional barcode properties like type and location are also available
Next Barcode
End Using
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);
}
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);
}
Imports IronOcr
Imports System.Drawing ' Reference for Rectangle class
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using Input = New OcrInput()
' Define specific content area to read
Dim ContentArea = New Rectangle With {
.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
Dim Result = Ocr.Read(Input)
' Output the text of the defined region
Console.WriteLine(Result.Text)
End Using
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);
}
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);
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using 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
Dim Result = Ocr.Read(Input)
' Output the corrected text
Console.WriteLine(Result.Text)
End Using
Експортирайте резултатите от 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");
}
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");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using 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
Dim Result = Ocr.Read(Input)
' Save the OCR result as a searchable PDF
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
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");
}
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");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using 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
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
Експортирайте резултатите от 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");
}
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");
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using 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
Dim Result = Ocr.Read(Input)
' Save the result as an XHTML file
Result.SaveAsHocrFile("results.html")
End Using
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);
}
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);
}
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Bulgarian
Ocr.Language = OcrLanguage.Bulgarian
Using 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
Dim Result = Ocr.Read(Input)
' Output the recognized text
Console.WriteLine(Result.Text)
End Using
Списък с 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");
}
// 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");
}
' using IronOcr;
' PM> Install IronOcr.Languages.Arabic
Dim Ocr = New IronTesseract()
' Set the OCR language to Arabic
Ocr.Language = OcrLanguage.Arabic
Using 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
Dim Result = Ocr.Read(input)
' Windows console may have problems printing Arabic characters.
' Saving the result to disk instead.
Result.SaveAsTextFile("arabic.txt")
End Using
Пример за многоезичен език
Възможно е също така 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");
}
// 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");
}
' using IronOcr;
' PM> Install IronOcr.Languages.ChineseSimplified
Dim 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 input = New OcrInput()
' Add multi-language PDF to input
input.Add("multi-language.pdf")
Dim Result = Ocr.Read(input)
' Save the OCR result to a text file
Result.SaveAsTextFile("results.txt")
End Using
Подробни обекти с резултати от 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
}
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
}
Imports IronOcr
Imports System.Drawing ' Add reference for assembly
Private 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 Input = New OcrInput("images\sample.tiff")
' Perform OCR on input TIFF file
Dim Result As OcrResult = Ocr.Read(Input)
Dim Pages = Result.Pages
Dim Words = Pages(0).Words
Dim Barcodes = Result.Barcodes
' Explore properties like:
' - Pages, Blocks, Paragraphs, Lines, Words, Characters
' - Export Images, Font Coordinates, Statistics
End Using
производителност
IronOCR работи извън кутията, без да е необходимо да настройвате производителността или да модифицирате силно входните изображения.
Скоростта е бърза: IronOcr.2020+ е до 10 пъти по-бърз и прави над 250% по-малко грешки от предишните компилации.
Научете повече
За да научите повече за OCR на C#, VB, F# или който и да е друг .NET език, моля, прочетете нашите уроци в общността, които дават реални примери за това как IronOCR може да се използва и могат да покажат нюансите как да извлечете най-доброто от тази библиотека.
Налична е и пълна справка за обекти за разработчици .NET.