OCR català a C#i .Net

Altres versions d'aquest document:

IronOCR és un component de programari C#que permet als codificadors .NET llegir text d’imatges i documents PDF en 126 idiomes, inclòs el català.

És una forquilla avançada de Tesseract, construïda exclusivament per als desenvolupadors de .NET i que supera regularment altres motors Tesseract tant per velocitat com per precisió.

Contingut d’IronOcr.Languages.Catalan

Aquest paquet conté 46 idiomes OCR per a .NET:

  • Català
  • CatalàMillor
  • CatalanFast

descarregar

Paquet de llengua catalana [català]
* Download as Cremallera
* Install with as
https://www.nuget.org/packages/IronOcr.Languages.Catalan/'> NuGet

Instal·lació

El primer que hem de fer és instal·lar el nostre paquet OCR en català al vostre projecte .NET.

PM> Install-Package IronOCR.Languages.Catalan

Exemple de codi

Aquest exemple de codi C#llegeix el text català d'un document Image o PDF.

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput(@"images\Catalan.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
//PM> Install-Package IronOcr.Languages.Catalan
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput(@"images\Catalan.png"))
{
var Result = Ocr.Read(Input);
Var AllText = Result.Text
}
'PM> Install-Package IronOcr.Languages.Catalan
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput("images\Catalan.png")
Dim Result = Ocr.Read(Input)
Dim AllText As Var = Result.Text
End Using
VB   C#

Per què triar IronOCR?

Iron OCR és una biblioteca de programari .NET fàcil d’instal·lar, completa i ben documentada.

Trieu IronOCR per aconseguir una precisió del 99,8% + OCR sense utilitzar cap servei web extern, tarifes en curs ni enviar documents confidencials per Internet.

Per què els desenvolupadors de C#trien IronOCR sobre Vanilla Tesseract:

  • Instal·leu-la com a única DLL o Nuget
  • Inclou els motors Tesseract 5, 4 i 3 fora de la caixa.
  • La precisió del 99,8% supera significativament el Tesseract normal.
  • Velocitat increïble i MultiThreading
  • Compatible amb aplicacions MVC, WebApp, escriptori, consola i servidor
  • No hi ha codi Exes ni C ++ per treballar
  • Suport complet d’OCR en PDF
  • Per realitzar OCR gairebé qualsevol fitxer d'imatge o PDF
  • Suport complet .Net Core, Standard i FrameWork
  • Implementació a Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Llegiu codis de barres i codis QR
  • Exporteu OCR com a XHTML
  • Exporteu OCR a documents PDF que es poden cercar
  • Suport multithreading
  • 126 idiomes internacionals gestionats tots mitjançant fitxers Nuget o OcrData
  • Extreu imatges, coordenades, estadístiques i tipus de lletra. No només text.
  • Es pot utilitzar per redistribuir Tesseract OCR dins d'aplicacions comercials i propietàries.

L'OCR de ferro brilla quan es treballa amb imatges del món real i documents imperfectes com ara fotografies o escaneigs de baixa resolució que poden tenir sorolls o imperfeccions digitals.

Altres biblioteques OCR gratuïtes per a la plataforma .NET, com ara altres API i serveis web de tesseract .net, no funcionen tan bé en aquests casos d’ús del món real.

OCR amb Tesseract 5: inicia la codificació en C #

L'exemple de codi següent mostra la facilitat de llegir text d'una imatge amb C#o 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
VB   C#

Configurable Hello World

// PM> Install-Package IronOCR.Languages.Catalan
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... podeu afegir qualsevol nombre d'imatges
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
// PM> Install-Package IronOCR.Languages.Catalan
using IronOcr;

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... podeu afegir qualsevol nombre d'imatges
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
' PM> Install-Package IronOCR.Languages.Catalan
Imports IronOcr

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput()
Input.AddImage("images/sample.jpeg") var Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

C#PDF OCR

El mateix enfocament es pot utilitzar de manera similar per extreure text de qualsevol document PDF.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// També podem seleccionar números de pàgines PDF específics per a OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 pàgina per a cada pàgina del PDF
}
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// També podem seleccionar números de pàgines PDF específics per a OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 pàgina per a cada pàgina del PDF
}
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using input = New OcrInput()
input.AddPdf("example.pdf", "password")
' També podem seleccionar números de pàgines PDF específics per a OCR

Dim Result = Ocr.Read(input)

Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 pàgina per a cada pàgina del PDF
End Using
VB   C#

OCR per a TIFF MultiPage

Lectura OCR en format de fitxer TIFF que inclou documents de diverses pàgines. TIFF també es pot convertir directament en un fitxer PDF amb text de cerca.

using IronOcr;

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

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

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

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

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

Using Input = New OcrInput()
input.AddMultiFrameTiff("multi - frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Codis de barres i QR

Una característica única de Iron OCR és que pot llegir codis de barres i codis QR de documents mentre s’està cercant text. Les instàncies de la classe OcrResult.OcrBarcode proporcionen al desenvolupador informació detallada sobre cada codi de barres escanejat.

// 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);
// també s’exposen propietats de tipus i ubicació
}
}
// 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);
// també s’exposen propietats de tipus i ubicació
}
}
' 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)
' també s'exposen propietats de tipus i ubicació
Next Barcode
End Using
VB   C#

OCR sobre àrees específiques d’imatges

Tots els mètodes de lectura i escaneig de Iron OCR proporcionen la possibilitat d'especificar exactament de quina part d'una o més pàgines volem llegir text. Això és molt útil quan estem buscant formularis estandarditzats i pot estalviar molt de temps i millorar l’eficiència.

Per utilitzar les regions de cultiu, haurem d’afegir una referència del sistema a System.Drawing per poder utilitzar l’objecte System.Drawing.Rectangle .

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Les dimensions són en px

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

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

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// Les dimensions són en px

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

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

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

Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {
	.X = 215,
	.Y = 1250,
	.Height = 280,
	.Width = 1335
}
' Les dimensions són en px

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

Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

OCR per a escaneigs de baixa qualitat

La classe OcrInput Iron OCR pot corregir les exploracions que Tesseract no sap llegir.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // corregeix el soroll digital i el mal escaneig
Input.Deskew(); // fixa la rotació i la perspectiva
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // corregeix el soroll digital i el mal escaneig
Input.Deskew(); // fixa la rotació i la perspectiva
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan

Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' corregeix el soroll digital i el mal escaneig
Input.Deskew() ' fixa la rotació i la perspectiva
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Exporteu els resultats de l'OCR com a PDF de cerca

Imatge en PDF amb cadenes de text copiables. Pot ser indexat pels motors de cerca i les bases de dades.

using IronOcr;

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

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")
}
using IronOcr;

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

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")
}
Imports IronOcr

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

Using Input = 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
VB   C#

Conversió de PDF TIFF a la cerca

Converteix un document TIFF (o qualsevol grup de fitxers d’imatges) directament a un PDF que es pot cercar i que pot ser indexat per la intranet, el lloc web i els motors de cerca de Google.

using IronOcr;

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

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

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

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

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

Using Input = New OcrInput()
input.AddMultiFrameTiff("example.tiff") var Result = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

Exporta els resultats de l'OCR com a HTML

Conversió de la imatge OCR a XHTML.

using IronOcr;

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

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

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput()
input.Title = "Html Title" input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(input)
Result.SaveAsHocrFile("results.html")
End Using
VB   C#

Filtres de millora de la imatge OCR

IronOCR proporciona filtres únics per a objectes OcrInput per millorar el rendiment de l'OCR.

Exemple de codi de millora de la imatge

Augmenta la qualitat de les imatges d’entrada d’OCR per obtenir resultats OCR millors i més ràpids.

using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // corregeix el soroll digital i el mal escaneig
Input.Deskew(); // fixa la rotació i la perspectiva
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // corregeix el soroll digital i el mal escaneig
Input.Deskew(); // fixa la rotació i la perspectiva
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan

Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' corregeix el soroll digital i el mal escaneig
Input.Deskew() ' fixa la rotació i la perspectiva
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
VB   C#

Llista de filtres d’imatges OCR

Els filtres d'entrada per millorar el rendiment de l'OCR integrats a IronOCR inclouen:

  • OcrInput.Rotate (doble grau) : gira les imatges un nombre de graus en sentit horari. Per a les agulles del rellotge, utilitzeu números negatius.
  • OcrInput.Binarize () : aquest filtre d’imatges converteix cada píxel en blanc o negre sense un punt mig. Pot millorar els casos de rendiment de l'OCR amb un contrast molt baix del text amb el fons.
  • OcrInput.ToGrayScale () : aquest filtre d’imatges converteix cada píxel en un to d’escala de grisos. És poc probable que millori la precisió de l’OCR, però pot millorar la velocitat
  • OcrInput.Contrast () : augmenta el contrast automàticament. Aquest filtre sovint millora la velocitat i la precisió de l’OCR en els escaneigs de baix contrast.
  • OcrInput.DeNoise () : elimina el soroll digital. Aquest filtre només s’ha d’utilitzar allà on s’espera un soroll.
  • OcrInput.Invert () : inverteix tots els colors. Per exemple, el blanc es torna negre: el negre es torna blanc.
  • OcrInput.Dilate () - Morfologia avançada. La dilatació afegeix píxels als límits dels objectes d’una imatge. Contrari a Erode
  • OcrInput.Erode () - Morfologia avançada. L’erosió elimina els píxels als límits de l’objecte Oposite of Dilate
  • OcrInput.Deskew () : fa girar una imatge perquè sigui correcta cap amunt i ortogonal. Això és molt útil per a OCR perquè la tolerància de Tesseract per a exploracions esbiaixades pot arribar a ser de fins a 5 graus.
  • OcrInput.DeepCleanBackgroundNoise () - Eliminació de soroll de fons intens. Utilitzeu aquest filtre només en cas que es conegui un soroll extrem de fons del document, ja que aquest filtre també arriscarà a reduir la precisió OCR dels documents nets i és molt car per a la CPU.
  • OcrInput.EnhanceResolution : millora la resolució d’imatges de baixa qualitat. Aquest filtre no és necessari sovint perquè OcrInput.MinimumDPI i OcrInput.TargetDPI capturaran i resoldran automàticament les entrades de baixa resolució.

CleanBackgroundNoise. Aquest és un paràmetre que requereix una mica de temps; tanmateix, permet a la biblioteca netejar automàticament sorolls digitals, arrugats de paper i altres imperfeccions dins d'una imatge digital que, en cas contrari, la impossibilitarien de ser llegida per altres biblioteques OCR.

EnhanceContrast és un paràmetre que fa que Iron OCR augmenti automàticament el contrast del text sobre el fons d’una imatge, augmentant la precisió de l’OCR i generalment augmentant el rendiment i la velocitat de l’OCR.

EnhanceResolution és un paràmetre que detecta automàticament les imatges de baixa resolució (que són inferiors a 275 dpi) i augmenta automàticament la imatge i, a continuació, afina tot el text perquè una biblioteca OCR pugui llegir-la perfectament. Tot i que aquesta operació consumeix molt de temps, en general redueix el temps global per a una operació OCR en una imatge.

Language Iron OCR admet 22 paquets d'idiomes internacionals i la configuració d'idioma es pot utilitzar per seleccionar un o més idiomes múltiples que s'aplicaran per a una operació OCR.

Strategy Iron OCR admet dues estratègies. Podem optar per escanejar un document de forma ràpida i menys precisa o utilitzar una estratègia avançada que utilitzi alguns models d’intel·ligència artificial per millorar automàticament la precisió del text d’OCR mirant la relació estadística de les paraules entre si en una frase. .

ColorSpace és un paràmetre mitjançant el qual podem optar per OCR en escala de grisos o color. En general, l’escala de grisos és la millor opció. No obstant això, de vegades, quan hi ha textos o fons de tonalitat similar però de color molt diferent, un espai de color a tot color proporcionarà millors resultats.

DetectWhiteTextOnDarkBackgrounds. En general, totes les biblioteques OCR esperen veure text negre sobre fons blancs. Aquest paràmetre permet a Iron OCR detectar automàticament negatius o pàgines fosques amb text en blanc i llegir-los.

InputImageType. Aquest paràmetre permet al desenvolupador guiar la biblioteca OCR sobre si busca un document complet o un fragment, com ara una captura de pantalla.

RotateAndStraighten és un paràmetre avançat que permet a Iron OCR la capacitat única de llegir documents que no només es giren, sinó que potser contenen perspectiva, com ara fotografies de documents de text.

ReadBarcodes és una característica útil que permet a Iron OCR llegir automàticament codis de barres i codis QR a les pàgines, ja que també llegeix text, sense afegir una càrrega de temps addicional.

ColorDepth. Aquest paràmetre determina quants bits per píxel utilitzarà la biblioteca OCR per determinar la profunditat d'un color. Una profunditat de color més alta pot augmentar la qualitat de l'OCR, però també augmentarà el temps necessari per completar l'operació de l'OCR.

126 paquets d'idiomes

Iron OCR admet 126 idiomes internacionals mitjançant paquets d’idiomes que es distribueixen en format DLL, que es poden descarregar des d’aquest lloc web o també des del gestor de paquets NuGet .

Els idiomes inclouen alemany, francès, anglès, xinès, japonès i molts més. Hi ha paquets d'idiomes especialitzats per a passaports MRZ, xecs MICR, dades financeres, matrícules i molts altres. També podeu utilitzar qualsevol fitxer tesseract ".traineddata", inclosos els que creeu vosaltres mateixos.

Exemple d’idioma

Utilització d'altres idiomes OCR.

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

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

using (var input = new OcrInput())
{
input.AddImage("img/arabic.gif");
// Afegiu filtres d’imatges si cal
// En aquest cas, fins i tot l’entrada pensada és de molt baixa qualitat
// IronTesseract pot llegir allò que no pot fer el Tesseract convencional.

var Result = Ocr.Read(input);

// La consola no pot imprimir àrabment a Windows fàcilment.
// Guardem al disc.
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");
// Afegiu filtres d’imatges si cal
// En aquest cas, fins i tot l’entrada pensada és de molt baixa qualitat
// IronTesseract pot llegir allò que no pot fer el Tesseract convencional.

var Result = Ocr.Read(input);

// La consola no pot imprimir àrabment a Windows fàcilment.
// Guardem al disc.
Result.SaveAsTextFile("arabic.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.Arabic

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

Using input = New OcrInput()
input.AddImage("img/arabic.gif")
' Afegiu filtres d'imatges si cal
' En aquest cas, fins i tot l'entrada pensada és de molt baixa qualitat
' IronTesseract pot llegir allò que no pot fer el Tesseract convencional.

Dim Result = Ocr.Read(input)

' La consola no pot imprimir àrabment a Windows fàcilment.
' Guardem al disc.
Result.SaveAsTextFile("arabic.txt")
End Using
VB   C#

Exemple de diversos idiomes

També és possible fer OCR utilitzant diversos idiomes alhora. Això pot ajudar a obtenir metadades i URL en anglès als documents Unicode.

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

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

// Podem afegir qualsevol nombre d’idiomes

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = 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.Catalan);

// Podem afegir qualsevol nombre d’idiomes

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}
' using IronOcr;
' PM> Install IronOcr.Languages.ChineseSimplified

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

' Podem afegir qualsevol nombre d'idiomes

Using input = New OcrInput()
input.Add("multi - language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
VB   C#

Objectes de resultats OCR detallats

Iron OCR retorna un objecte de resultat OCR per a cada operació OCR. Generalment, els desenvolupadors només utilitzen la propietat de text d’aquest objecte per obtenir el text escanejat de la imatge. Tanmateix, els resultats OCR DOM són molt més avançats que aquest.

using IronOcr;
using System.Drawing; //Afegiu referència de muntatge

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //Important

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;
// Exploreu aquí per trobar una API massiva i detallada:
// - Pàgines, blocs, parafàfics, línies, paraules, caràcters
// - Exportació d'imatges, coordenades de tipus de lletra, dades estadístiques
}
using IronOcr;
using System.Drawing; //Afegiu referència de muntatge

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //Important

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;
// Exploreu aquí per trobar una API massiva i detallada:
// - Pàgines, blocs, parafàfics, línies, paraules, caràcters
// - Exportació d'imatges, coordenades de tipus de lletra, dades estadístiques
}
Imports IronOcr
Imports System.Drawing 'Afegiu referència de muntatge

Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True 'Important

Using Input = 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
' Exploreu aquí per trobar una API massiva i detallada:
' - Pàgines, blocs, parafàfics, línies, paraules, caràcters
' - Exportació d'imatges, coordenades de tipus de lletra, dades estadístiques
End Using
VB   C#

Rendiment

IronOCR funciona fora de la caixa sense necessitat de sintonitzar o modificar les imatges d’entrada.

Speed is Blazing: IronOcr.2020 + és fins a 10 vegades més ràpida i comet un 250% menys d'errors que les versions anteriors.

Aprèn més

Per obtenir més informació sobre OCR en C #, VB, F # o qualsevol altre idioma .NET, llegiu els nostres tutorials de la comunitat , que ofereixen exemples reals de com es pot utilitzar Iron OCR i poden mostrar els matisos de com treure el màxim partit aquesta biblioteca.

També hi ha disponible una referència d'objecte completa per a desenvolupadors de .NET .