Lietuvos OCR C# ir .NET

Kitos šio dokumento versijos:

„IronOCR“ yra C# programinės įrangos komponentas, leidžiantis .NET programuotojams skaityti tekstą iš vaizdų ir PDF dokumentų 126 kalbomis, įskaitant lietuvių kalbą.

Tai pažangi „Tesseract“ šakutė, sukurta išskirtinai .NET kūrėjams ir reguliariai pralenkianti kitus „Tesseract“ variklius tiek greičio, tiek tikslumo atžvilgiu.

„IronOcr“ turinys. Kalbos. Lietuvių

Šiame pakete yra 55 OCR kalbos, skirtos .NET:

  • Lietuvis
  • LietuviškasGeriausias
  • LietuviškasFast

Parsisiųsti

Lietuvių kalbos paketas [lietuvių kalba]

Montavimas

Pirmas dalykas, kurį turime padaryti, yra įdiegti lietuvišką OCR paketą į jūsų .NET projektą.

Install-Package IronOCR.Languages.Lithuanian

Kodo pavyzdys

Šis C# kodo pavyzdys nuskaito lietuvišką tekstą iš paveikslėlio ar PDF dokumento.

// Import IronOcr library
using IronOcr;

// Create a new instance of IronTesseract
var Ocr = new IronTesseract
{
    // Set the OCR language to Lithuanian
    Language = OcrLanguage.Lithuanian
};

// Using the OcrInput class to specify the image source
using (var Input = new OcrInput(@"images\Lithuanian.png"))
{
    // Read the image and store the result
    var Result = Ocr.Read(Input);

    // Extract the text from the OCR result
    var AllText = Result.Text;
}
// Import IronOcr library
using IronOcr;

// Create a new instance of IronTesseract
var Ocr = new IronTesseract
{
    // Set the OCR language to Lithuanian
    Language = OcrLanguage.Lithuanian
};

// Using the OcrInput class to specify the image source
using (var Input = new OcrInput(@"images\Lithuanian.png"))
{
    // Read the image and store the result
    var Result = Ocr.Read(Input);

    // Extract the text from the OCR result
    var AllText = Result.Text;
}
' Import IronOcr library
Imports IronOcr

' Create a new instance of IronTesseract
Private Ocr = New IronTesseract With {.Language = OcrLanguage.Lithuanian}

' Using the OcrInput class to specify the image source
Using Input = New OcrInput("images\Lithuanian.png")
	' Read the image and store the result
	Dim Result = Ocr.Read(Input)

	' Extract the text from the OCR result
	Dim AllText = Result.Text
End Using
$vbLabelText   $csharpLabel

Kodėl verta rinktis „IronOCR“?

„IronOCR“ yra lengvai įdiegiama, išsami ir gerai dokumentuota .NET programinės įrangos biblioteka.

Pasirinkite „IronOCR“, kad pasiektumėte 99,8% + OCR tikslumą nenaudodami jokių išorinių interneto paslaugų, nuolatinių mokesčių ar nesiųsdami konfidencialių dokumentų internetu.

Kodėl C# kūrėjai renkasi IronOCR, o ne Vanilla Tesseract:

  • Įdiekite kaip vieną DLL arba per NuGet
  • Į komplektaciją įeina „Tesseract 5“, „4“ ir „3“ varikliai iš dėžutės.
  • Tikslumas 99,8%, gerokai lenkia įprastą „Tesseract“.
  • Šviečiantis greitis ir „MultiThreading“
  • Suderinamos su „MVC“, „WebApp“, darbalaukio, konsolės ir serverio programomis
  • Nėra „Exes“ ar „C ++“ kodo, su kuriuo galėtumėte dirbti
  • Visas PDF OCR palaikymas
  • Norėdami atlikti OCR beveik bet kokį vaizdo failą ar PDF
  • Visas .NET. Core“, „Standard“ ir „FrameWork“ palaikymas
  • Įdiekite „Windows“, „Mac“, „Linux“, „Azure“, „Docker“, „Lambda“, AWS
  • Perskaitykite brūkšninius kodus ir QR kodus
  • Eksportuoti OCR į XHTML
  • Eksportuokite OCR į ieškomus PDF dokumentus
  • Daugialypis palaikymas
  • 126 tarptautinės kalbos, valdomos naudojant „NuGet“ arba „OcrData“ failus
  • Ištraukite vaizdus, koordinates, statistiką ir šriftus. Ne tik tekstas.
  • Galima naudoti perskirstant „Tesseract“ OCR komercinėse ir patentuotose programose.

Geležinis OCR šviečia dirbant su realaus pasaulio vaizdais ir netobulais dokumentais, tokiais kaip nuotraukos ar žemos skiriamosios gebos nuskaitymai, kuriuose gali būti skaitmeninio triukšmo ar trūkumų.

Kitos nemokamos .NET platformos OCR bibliotekos, tokios kaip kitos .net tesseract API ir žiniatinklio paslaugos, ne taip gerai veikia šiais realaus pasaulio naudojimo atvejais.

OCR su „Tesseract 5“ - pradėkite koduoti C

Žemiau pateiktas kodo pavyzdys parodo, kaip lengva skaityti tekstą iš paveikslėlio naudojant C# arba VB .NET.

„OneLiner“

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
$vbLabelText   $csharpLabel

Konfigūruojamas „Hello World“

// Import IronOcr library
using IronOcr;

// Create a new instance of IronTesseract
var Ocr = new IronTesseract();

// Set the OCR language to Lithuanian
Ocr.Language = OcrLanguage.Lithuanian;

// Using OcrInput to specify images
using (var Input = new OcrInput())
{
    // Add multiple images
    Input.AddImage("images/sample.jpeg");
    // ... you can add as many images as required

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
// Import IronOcr library
using IronOcr;

// Create a new instance of IronTesseract
var Ocr = new IronTesseract();

// Set the OCR language to Lithuanian
Ocr.Language = OcrLanguage.Lithuanian;

// Using OcrInput to specify images
using (var Input = new OcrInput())
{
    // Add multiple images
    Input.AddImage("images/sample.jpeg");
    // ... you can add as many images as required

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
' Import IronOcr library
Imports IronOcr

' Create a new instance of IronTesseract
Private Ocr = New IronTesseract()

' Set the OCR language to Lithuanian
Ocr.Language = OcrLanguage.Lithuanian

' Using OcrInput to specify images
Using Input = New OcrInput()
	' Add multiple images
	Input.AddImage("images/sample.jpeg")
	' ... you can add as many images as required

	' Perform OCR
	Dim Result = Ocr.Read(Input)

	' Output the result text
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

C# PDF OCR

Tą patį metodą galima panašiai naudoti norint išgauti tekstą iš bet kurio PDF dokumento.

using IronOcr;

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

using (var input = new OcrInput())
{
    // Add a PDF source, including password if necessary
    input.AddPdf("example.pdf", "password");
    // We can also choose specific page numbers of the PDF to perform OCR

    var Result = Ocr.Read(input);

    // Output the result
    Console.WriteLine(Result.Text);
    Console.WriteLine($"{Result.Pages.Count()} Pages");
    // 1 page corresponds to each PDF page
}
using IronOcr;

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

using (var input = new OcrInput())
{
    // Add a PDF source, including password if necessary
    input.AddPdf("example.pdf", "password");
    // We can also choose specific page numbers of the PDF to perform OCR

    var Result = Ocr.Read(input);

    // Output the result
    Console.WriteLine(Result.Text);
    Console.WriteLine($"{Result.Pages.Count()} Pages");
    // 1 page corresponds to each PDF page
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

Using input = New OcrInput()
	' Add a PDF source, including password if necessary
	input.AddPdf("example.pdf", "password")
	' We can also choose specific page numbers of the PDF to perform OCR

	Dim Result = Ocr.Read(input)

	' Output the result
	Console.WriteLine(Result.Text)
	Console.WriteLine($"{Result.Pages.Count()} Pages")
	' 1 page corresponds to each PDF page
End Using
$vbLabelText   $csharpLabel

Daugialypių TIFF OCR

OCR TIFF failo formato, įskaitant kelių puslapių dokumentus, skaitymas. TIFF taip pat gali būti tiesiogiai konvertuojamas į PDF failą su ieškomu tekstu.

using IronOcr;

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

using (var Input = new OcrInput())
{
    // Add a multi-frame TIFF input
    Input.AddMultiFrameTiff("multi-frame.tiff");
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
using IronOcr;

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

using (var Input = new OcrInput())
{
    // Add a multi-frame TIFF input
    Input.AddMultiFrameTiff("multi-frame.tiff");
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

Using Input = New OcrInput()
	' Add a multi-frame TIFF input
	Input.AddMultiFrameTiff("multi-frame.tiff")
	Dim Result = Ocr.Read(Input)

	' Output the result text
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

Brūkšniniai kodai ir QR

Unikali „IronOCR“ ypatybė yra tai, kad ji gali nuskaityti brūkšninius kodus ir QR kodus iš dokumentų, kol skenuoja tekstą.

// Import IronOcr
using IronOcr;

var Ocr = new IronTesseract
{
    Configuration = { ReadBarCodes = true }
};

using (var input = new OcrInput())
{
    // Add image input
    input.AddImage("img/Barcode.png");
    var Result = Ocr.Read(input);

    // Iterate through each barcode found
    foreach (var Barcode in Result.Barcodes)
    {
        // Output the barcode value
        Console.WriteLine(Barcode.Value);
        // Additional properties such as type and location are available
    }
}
// Import IronOcr
using IronOcr;

var Ocr = new IronTesseract
{
    Configuration = { ReadBarCodes = true }
};

using (var input = new OcrInput())
{
    // Add image input
    input.AddImage("img/Barcode.png");
    var Result = Ocr.Read(input);

    // Iterate through each barcode found
    foreach (var Barcode in Result.Barcodes)
    {
        // Output the barcode value
        Console.WriteLine(Barcode.Value);
        // Additional properties such as type and location are available
    }
}
' Import IronOcr
Imports IronOcr

Private Ocr = New IronTesseract With {
	.Configuration = { ReadBarCodes = True }
}

Using input = New OcrInput()
	' Add image input
	input.AddImage("img/Barcode.png")
	Dim Result = Ocr.Read(input)

	' Iterate through each barcode found
	For Each Barcode In Result.Barcodes
		' Output the barcode value
		Console.WriteLine(Barcode.Value)
		' Additional properties such as type and location are available
	Next Barcode
End Using
$vbLabelText   $csharpLabel

OCR konkrečiose vaizdų srityse

Visi „IronOCR“ nuskaitymo ir skaitymo metodai suteikia galimybę tiksliai nurodyti, iš kurios puslapio dalies ar puslapių norime skaityti tekstą. Tai labai naudinga, kai žiūrime į standartizuotas formas, ir tai gali sutaupyti labai daug laiko ir pagerinti efektyvumą.

Norėdami naudoti apkarpymo regionus, turėsime pridėti sistemos nuorodą į System.Drawing, kad galėtume naudoti objektą System.Drawing.Rectangle.

using IronOcr;

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

using (var Input = new OcrInput())
{
    // Define the specific area of interest using System.Drawing.Rectangle
    var ContentArea = new System.Drawing.Rectangle
    {
        X = 215,
        Y = 1250,
        Height = 280,
        Width = 1335
    };
    // Dimensions are in pixels

    // Add image with specified content area
    Input.Add("document.png", ContentArea);

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
using IronOcr;

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

using (var Input = new OcrInput())
{
    // Define the specific area of interest using System.Drawing.Rectangle
    var ContentArea = new System.Drawing.Rectangle
    {
        X = 215,
        Y = 1250,
        Height = 280,
        Width = 1335
    };
    // Dimensions are in pixels

    // Add image with specified content area
    Input.Add("document.png", ContentArea);

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

Using Input = New OcrInput()
	' Define the specific area of interest using System.Drawing.Rectangle
	Dim ContentArea = New System.Drawing.Rectangle With {
		.X = 215,
		.Y = 1250,
		.Height = 280,
		.Width = 1335
	}
	' Dimensions are in pixels

	' Add image with specified content area
	Input.Add("document.png", ContentArea)

	' Perform OCR
	Dim Result = Ocr.Read(Input)

	' Output the result text
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

OCR žemos kokybės nuskaitymams

„IronOCR“ OcrInput klasė gali pataisyti nuskaitymus, kurių įprastas „Tesseract“ negali perskaityti.

using IronOcr;

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

// Using OcrInput with low quality image
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
    // Fix digital noise and skew
    Input.DeNoise();
    Input.Deskew();

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
using IronOcr;

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

// Using OcrInput with low quality image
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
    // Fix digital noise and skew
    Input.DeNoise();
    Input.Deskew();

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

' Using OcrInput with low quality image
Using Input = New OcrInput("img\Potter.LowQuality.tiff")
	' Fix digital noise and skew
	Input.DeNoise()
	Input.Deskew()

	' Perform OCR
	Dim Result = Ocr.Read(Input)

	' Output the result text
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

Eksportuoti OCR rezultatus kaip ieškomą PDF

Vaizdas į PDF su kopijuojamomis teksto eilutėmis. Galima indeksuoti paieškos sistemose ir duomenų bazėse.

using IronOcr;

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

// Create an OcrInput and add images
using (var Input = new OcrInput())
{
    Input.Title = "Quarterly Report";
    Input.AddImage("image1.jpeg");
    Input.AddImage("image2.png");
    Input.AddImage("image3.gif");

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Save the result as a searchable PDF
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;

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

// Create an OcrInput and add images
using (var Input = new OcrInput())
{
    Input.Title = "Quarterly Report";
    Input.AddImage("image1.jpeg");
    Input.AddImage("image2.png");
    Input.AddImage("image3.gif");

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Save the result as a searchable PDF
    Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

' Create an OcrInput and add images
Using Input = New OcrInput()
	Input.Title = "Quarterly Report"
	Input.AddImage("image1.jpeg")
	Input.AddImage("image2.png")
	Input.AddImage("image3.gif")

	' Perform OCR
	Dim Result = Ocr.Read(Input)

	' Save the result as a searchable PDF
	Result.SaveAsSearchablePdf("searchable.pdf")
End Using
$vbLabelText   $csharpLabel

TIFF į ieškomą PDF konversiją

T konvertuokite TIFF dokumentą (ar bet kurią vaizdo failų grupę) tiesiai į ieškomą PDF failą, kurį gali indeksuoti intranetas, svetainė ir „Google“ paieškos sistemos.

using IronOcr;

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

// Using OcrInput with multi-frame TIFF
using (var Input = new OcrInput())
{
    Input.AddMultiFrameTiff("example.tiff");

    // Perform OCR and save result as a searchable PDF
    var Result = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;

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

// Using OcrInput with multi-frame TIFF
using (var Input = new OcrInput())
{
    Input.AddMultiFrameTiff("example.tiff");

    // Perform OCR and save result as a searchable PDF
    var Result = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

' Using OcrInput with multi-frame TIFF
Using Input = New OcrInput()
	Input.AddMultiFrameTiff("example.tiff")

	' Perform OCR and save result as a searchable PDF
	Dim Result = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf")
End Using
$vbLabelText   $csharpLabel

Eksportuoti OCR rezultatus kaip HTML

OCR vaizdo konversija į XHTML.

using IronOcr;

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

// Create an OCR input
using (var Input = new OcrInput())
{
    Input.Title = "Html Title";
    Input.AddImage("image1.jpeg");

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Save the result as an HTML file
    Result.SaveAsHocrFile("results.html");
}
using IronOcr;

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

// Create an OCR input
using (var Input = new OcrInput())
{
    Input.Title = "Html Title";
    Input.AddImage("image1.jpeg");

    // Perform OCR
    var Result = Ocr.Read(Input);

    // Save the result as an HTML file
    Result.SaveAsHocrFile("results.html");
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

' Create an OCR input
Using Input = New OcrInput()
	Input.Title = "Html Title"
	Input.AddImage("image1.jpeg")

	' Perform OCR
	Dim Result = Ocr.Read(Input)

	' Save the result as an HTML file
	Result.SaveAsHocrFile("results.html")
End Using
$vbLabelText   $csharpLabel

OCR vaizdo gerinimo filtrai

„IronOCR“ suteikia unikalius „ OcrInput objektų filtrus, kad pagerintų OCR našumą.

Vaizdo tobulinimo kodo pavyzdys

Padaro OCR įvesties vaizdų kokybę geresne ir greitesne OCR rezultatais.

using IronOcr;

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

// Using OcrInput with low quality image
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
    // Apply filters to improve quality
    Input.DeNoise(); // Fix digital noise
    Input.Deskew(); // Fix skew

    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
using IronOcr;

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

// Using OcrInput with low quality image
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
    // Apply filters to improve quality
    Input.DeNoise(); // Fix digital noise
    Input.Deskew(); // Fix skew

    var Result = Ocr.Read(Input);

    // Output the result text
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

' Using OcrInput with low quality image
Using Input = New OcrInput("LowQuality.jpeg")
	' Apply filters to improve quality
	Input.DeNoise() ' Fix digital noise
	Input.Deskew() ' Fix skew

	Dim Result = Ocr.Read(Input)

	' Output the result text
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

OCR vaizdo filtrų sąrašas

„IronOCR“ įmontuoti įvesties filtrai, skirti pagerinti OCR veikimą, yra šie:

  • OcrInput.Rotate (double degrees) - Rotates images by a certain degree clockwise. For anti-clockwise, use negative numbers.
  • OcrInput.Binarize - Converts each pixel into black or white without mid-tones. Improves OCR in low contrast scenarios.
  • OcrInput.ToGrayScale() - Converts each pixel to a grayscale shade. Improves OCR speed but rarely accuracy.
  • OcrInput.Contrast() - Automatically increases contrast. Enhances OCR speed and accuracy on low contrast scans.
  • OcrInput.DeNoise() - Removes digital noise, should be used only when noise is expected.
  • OcrInput.Invert() - Inverts colors: black becomes white and white becomes black.
  • OcrInput.Dilate() - Advanced morphology adding dots to object boundaries.
  • OcrInput.Erode() - Removes dots from object boundaries.
  • OcrInput.Deskew() - Corrects image rotation to be upright, helpful as Tesseract has limited skew tolerance.
  • OcrInput.DeepCleanBackgroundNoise() - Intensive background noise removal, can reduce accuracy on clean documents.
  • OcrInput.EnhanceResolution - Boosts resolution of low-quality images, not usually needed due to auto handling.

CleanBackgroundNoise process is intensive but essential for cleaning digital imperfections. EnhanceContrast improves text contrast. EnhanceResolution auto-detects and improves low-res images ensuring better OCR success with slightly more processing time.

Language parameter supports a variety of languages allowing you to choose multiple ones as needed. DetectWhiteTextOnDarkBackgrounds auto-detects dark pages with white text.

126 kalbų paketai

„IronOCR“ palaiko 126 tarptautines kalbas per kalbų paketus, kurie platinami kaip DLL, kuriuos galima atsisiųsti iš šios svetainės arba „ NuGet Package Manager“ .

Kalbos apima vokiečių, prancūzų, anglų, kinų, japonų ir daugelį kitų. Specializuotų kalbų paketai yra skirti pasų MRZ, MICR patikrinimams, finansiniams duomenims, valstybiniams numeriams ir daugeliui kitų. Taip pat galite naudoti bet kokį „tesseract“ .traineddata failą, įskaitant tuos, kuriuos sukūrėte patys.

Kalbos pavyzdys

Naudojant kitas OCR kalbas.

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

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

// Create a new OcrInput
using (var input = new OcrInput())
{
    // Add Arabic-image input
    input.AddImage("img/arabic.gif");
    // Apply input filters if required to improve quality

    var Result = Ocr.Read(input);

    // Due to limitations with Arabic printing in console on Windows, save the result to disk
    Result.SaveAsTextFile("arabic.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.Arabic

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

// Create a new OcrInput
using (var input = new OcrInput())
{
    // Add Arabic-image input
    input.AddImage("img/arabic.gif");
    // Apply input filters if required to improve quality

    var Result = Ocr.Read(input);

    // Due to limitations with Arabic printing in console on Windows, save the result to disk
    Result.SaveAsTextFile("arabic.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.Arabic

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic

' Create a new OcrInput
Using input = New OcrInput()
	' Add Arabic-image input
	input.AddImage("img/arabic.gif")
	' Apply input filters if required to improve quality

	Dim Result = Ocr.Read(input)

	' Due to limitations with Arabic printing in console on Windows, save the result to disk
	Result.SaveAsTextFile("arabic.txt")
End Using
$vbLabelText   $csharpLabel

Kelių kalbų pavyzdys

Taip pat galima OCR naudoti kelias kalbas tuo pačiu metu. Tai tikrai gali padėti gauti anglų kalbos metaduomenis ir URL „Unicode“ dokumentuose.

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

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

// Add secondary language Lithuanian
Ocr.AddSecondaryLanguage(OcrLanguage.Lithuanian);

// You can add as many languages as needed

using (var input = new OcrInput())
{
    // Add multi-language PDF
    input.Add("multi-language.pdf");
    var Result = Ocr.Read(input);

    // Save the OCR result
    Result.SaveAsTextFile("results.txt");
}
// using IronOcr;
// PM> Install IronOcr.Languages.ChineseSimplified

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

// Add secondary language Lithuanian
Ocr.AddSecondaryLanguage(OcrLanguage.Lithuanian);

// You can add as many languages as needed

using (var input = new OcrInput())
{
    // Add multi-language PDF
    input.Add("multi-language.pdf");
    var Result = Ocr.Read(input);

    // Save the OCR result
    Result.SaveAsTextFile("results.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.ChineseSimplified

Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified

' Add secondary language Lithuanian
Ocr.AddSecondaryLanguage(OcrLanguage.Lithuanian)

' You can add as many languages as needed

Using input = New OcrInput()
	' Add multi-language PDF
	input.Add("multi-language.pdf")
	Dim Result = Ocr.Read(input)

	' Save the OCR result
	Result.SaveAsTextFile("results.txt")
End Using
$vbLabelText   $csharpLabel

Išsamūs OCR rezultatų objektai

„IronOCR“ pateikia OCR rezultatų objektą kiekvienai OCR operacijai. Paprastai kūrėjai naudoja tik šio objekto teksto ypatybę norėdami nuskaityti tekstą iš paveikslėlio. Tačiau OCR rezultatai DOM yra daug pažangesni nei šis.

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

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

// Configure Tesseract engine for OCR and barcode reading
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Important

// Perform OCR on input image
using (var Input = new OcrInput(@"images\sample.tiff"))
{
    OcrResult Result = Ocr.Read(Input);

    // Access pages, words, and barcodes from the result
    var Pages = Result.Pages;
    var Words = Pages[0].Words;
    var Barcodes = Result.Barcodes;

    // Explore to find a rich API for pages, blocks, paragraphs, lines, words, characters
    // Image exports, font coordinates, statistics are also available
}
using IronOcr;
using System.Drawing; // Add assembly reference

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

// Configure Tesseract engine for OCR and barcode reading
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //! Important

// Perform OCR on input image
using (var Input = new OcrInput(@"images\sample.tiff"))
{
    OcrResult Result = Ocr.Read(Input);

    // Access pages, words, and barcodes from the result
    var Pages = Result.Pages;
    var Words = Pages[0].Words;
    var Barcodes = Result.Barcodes;

    // Explore to find a rich API for pages, blocks, paragraphs, lines, words, characters
    // Image exports, font coordinates, statistics are also available
}
Imports IronOcr
Imports System.Drawing ' Add assembly reference

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Lithuanian

' Configure Tesseract engine for OCR and barcode reading
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '! Important

' Perform OCR on input image
Using Input = New OcrInput("images\sample.tiff")
	Dim Result As OcrResult = Ocr.Read(Input)

	' Access pages, words, and barcodes from the result
	Dim Pages = Result.Pages
	Dim Words = Pages(0).Words
	Dim Barcodes = Result.Barcodes

	' Explore to find a rich API for pages, blocks, paragraphs, lines, words, characters
	' Image exports, font coordinates, statistics are also available
End Using
$vbLabelText   $csharpLabel

Spektaklis

„IronOCR“ veikia iš dėžutės, nereikia derinti ar stipriai modifikuoti įvesties vaizdų.

Greitis žaibiškas: „IronOcr.2020 +“ yra iki 10 kartų greitesnis ir padaro daugiau nei 250% mažiau klaidų nei ankstesnių versijų.

Sužinokite daugiau

Norėdami sužinoti daugiau apie OCR C#, VB, F# ar bet kuria kita .NET kalba, perskaitykite mūsų bendruomenės pamokas, kuriose pateikiami pavyzdžiai, kaip galima naudoti geležies OCR, ir gali parodyti niuansus, kaip kuo geriau pasinaudoti šią biblioteką.

Taip pat yra visa .NET kūrėjų objekto nuoroda.