<meta http-equiv="content-language" content="ca" />
# OCR català a C# i .NET
###### Altres versions d'aquest document:
- [Anglès (This Page in English)](/csharp/ocr/languages/catalan/)
- [Més Languages](/csharp/ocr/languages/)
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](https://ironsoftware.com/csharp/ocr/packages/language-packs/Catalan.ocrdata.zip)
- Install with [NuGet](https://www.nuget.org/packages/IronOcr.Languages.Catalan/)
## Instal·lació
El primer que hem de fer és instal·lar el nostre paquet OCR en **català** al vostre projecte .NET.
```shell
:InstallCmd Install-Package IronOcr.Languages.Catalan
```
## Exemple de codi
Aquest exemple de codi C# llegeix el text català d'un document Image o PDF.
```csharp
// Install the IronOcr Catalan language package using NuGet
// PM> Install-Package IronOcr.Languages.Catalan
using IronOcr;
var Ocr = new IronTesseract();
// Set the OCR language to Catalan
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput(@"images\Catalan.png"))
{
// Read text from the input image
var Result = Ocr.Read(Input);
// Store the recognized text
var AllText = Result.Text;
Console.WriteLine(AllText);
}
```
## Per què triar IronOCR?
IronOCR é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](https://ironsoftware.com/csharp/ocr/use-case/free-ocr-csharp/) 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
```csharp
// Perform a quick OCR on an image using IronTesseract
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Console.WriteLine(Text);
```
### Configurable Hello World
```csharp
// PM> Install-Package IronOcr.Languages.Catalan
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput())
{
// Add an image for OCR
Input.AddImage("images/sample.jpeg");
// ... podeu afegir qualsevol nombre d'imatges
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
### C# PDF OCR
El mateix enfocament es pot utilitzar de manera similar per extreure text de qualsevol document PDF.
```csharp
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var input = new OcrInput())
{
// Add a PDF file, optionally encrypted with a password
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
}
```
### 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.
```csharp
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput())
{
// Add a multi-frame TIFF for OCR
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
### Codis de barres i QR
Una característica única de IronOCR é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.
```csharp
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Configuration.ReadBarCodes = true;
using (var input = new OcrInput())
{
// Add an image that contains barcodes or QR codes
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ó
}
}
```
### OCR sobre àrees específiques d’imatges
Tots els mètodes de lectura i escaneig de IronOCR 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`.
```csharp
using IronOcr;
using System.Drawing; // Add reference to System.Drawing
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput())
{
// Define the area from which to read the text
var ContentArea = new 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);
}
```
### OCR per a escaneigs de baixa qualitat
La classe `OcrInput` IronOCR pot corregir les exploracions que Tesseract no sap llegir.
```csharp
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // Corrects digital noise and poor scans
Input.Deskew(); // Fixes skewing and perspective issues
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
### 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.
```csharp
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");
}
```
### 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.
```csharp
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput())
{
Input.AddMultiFrameTiff("example.tiff");
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
```
### Exporta els resultats de l'OCR com a HTML
Conversió de la imatge OCR a XHTML.
```csharp
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");
}
```
## 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.
```csharp
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // Corrects digital noise and poor scans
Input.Deskew(); // Fixes skewing and perspective issues
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
```
### Llista de filtres d’imatges OCR
Els filtres d'entrada per millorar el rendiment de l'OCR integrats a IronOCR inclouen:
- **`OcrInput.Rotate(double degrees)`**: Gira les imatges un nombre de graus en sentit horari. Per a les agulles del rellotge, utilitzeu números negatius.
- **`OcrInput.Binarize()`**: 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()`**: 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 i el negre es torna blanc.
- **`OcrInput.Dilate()`**: Morfologia avançada. Afegeix píxels als límits dels objectes d’una imatge. Contrari a Erode.
- **`OcrInput.Erode()`**: Morfologia avançada. Elimina els píxels als límits de l'objecte. Opposite 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**: Augmenta automàticament el contrast del text sobre el fons d’una imatge, millorant l’eficiència del OCR i generalment augmentant el rendiment i la velocitat de l’OCR.
**EnhanceResolution**: Detecta automàticament les imatges de baixa resolució (que són inferiors a 275 dpi) i augmenta automàticament la imatge, 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**: IronOCR 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**: IronOCR 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**: 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 IronOCR 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**: Un paràmetre avançat que permet a IronOCR 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**: Permet a IronOCR llegir automàticament codis de barres i codis QR a les pàgines, mentre que també llegeix text, sense afegir una càrrega de temps addicional.
**ColorDepth**: 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
IronOCR admet **126 idiomes internacionals** mitjançant paquets d’idiomes que es distribueixen en format DLL, que es poden [descarregar des d’aquest lloc web](https://ironsoftware.com/csharp/ocr/languages/) o també des del [gestor de paquets NuGet](https://www.nuget.org/packages?q=IronOcr.Languages).
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.
```csharp
// Install the IronOcr Arabic language package using NuGet
// PM> Install-Package IronOcr.Languages.Arabic
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;
using (var input = new OcrInput())
{
// Add an image for OCR that contains Arabic text
input.AddImage("img/arabic.gif");
// Apply image filters if needed
// In this case, even though input is of very low quality
// IronTesseract can read what the conventional Tesseract cannot.
var Result = Ocr.Read(input);
// Console cannot easily print Arabic on Windows.
// Save it to disk.
Result.SaveAsTextFile("arabic.txt");
}
```
### 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.
```csharp
// Install the IronOcr Chinese Simplified language package using NuGet
// PM> Install-Package IronOcr.Languages.ChineseSimplified
using IronOcr;
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");
}
```
## Objectes de resultats OCR detallats
IronOCR 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.
```csharp
using IronOcr;
using System.Drawing; // Add reference for System.Drawing assembly
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Important for barcode reading
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;
// Explore here to find a massive and detailed API:
// - Pages, blocks, paragraphs, lines, words, characters
// - Image exports, font coordinates, statistical data
}
```
## 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](https://ironsoftware.com/csharp/ocr/tutorials/how-to-read-text-from-an-image-in-csharp-net/), que ofereixen exemples reals de com es pot utilitzar IronOCR i poden mostrar els matisos de com treure el màxim partit aquesta biblioteca.
També hi ha disponible una [referència d'objecte completa](https://ironsoftware.com/csharp/ocr/object-reference/api/) per als desenvolupadors de .NET.
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ó.
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
Install-Package IronOcr.Languages.Catalan
Exemple de codi
Aquest exemple de codi C# llegeix el text català d'un document Image o PDF.
// Install the IronOcr Catalan language package using NuGet// PM> Install-Package IronOcr.Languages.Catalanusing IronOcr;varOcr = new IronTesseract();// Set the OCR language to CatalanOcr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput(@"images\Catalan.png")){ // Read text from the input image varResult = Ocr.Read(Input); // Store the recognized text varAllText = Result.Text;Console.WriteLine(AllText);}
// Install the IronOcr Catalan language package using NuGet
// PM> Install-Package IronOcr.Languages.Catalan
using IronOcr;
var Ocr = new IronTesseract();
// Set the OCR language to Catalan
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput(@"images\Catalan.png"))
{
// Read text from the input image
var Result = Ocr.Read(Input);
// Store the recognized text
var AllText = Result.Text;
Console.WriteLine(AllText);
}
' Install the IronOcr Catalan language package using NuGet' PM> Install-Package IronOcr.Languages.CatalanImportsIronOcrPrivateOcr = New IronTesseract()' Set the OCR language to CatalanOcr.Language = OcrLanguage.CatalanUsingInput = New OcrInput("images\Catalan.png") ' Read text from the input image DimResult = Ocr.Read(Input) ' Store the recognized text DimAllText = Result.TextConsole.WriteLine(AllText)EndUsing
' Install the IronOcr Catalan language package using NuGet
' PM> Install-Package IronOcr.Languages.Catalan
Imports IronOcr
Private Ocr = New IronTesseract()
' Set the OCR language to Catalan
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput("images\Catalan.png")
' Read text from the input image
Dim Result = Ocr.Read(Input)
' Store the recognized text
Dim AllText = Result.Text
Console.WriteLine(AllText)
End Using
Per què triar IronOCR?
IronOCR é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
// Perform a quick OCR on an image using IronTesseractstringText = new IronTesseract().Read(@"img\Screenshot.png").Text;Console.WriteLine(Text);
// Perform a quick OCR on an image using IronTesseract
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Console.WriteLine(Text);
' Perform a quick OCR on an image using IronTesseractDimTextAsString = (New IronTesseract()).Read("img\Screenshot.png").TextConsole.WriteLine(Text)
' Perform a quick OCR on an image using IronTesseract
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
Console.WriteLine(Text)
Configurable Hello World
// PM> Install-Package IronOcr.Languages.Catalanusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput()){ // Add an image for OCRInput.AddImage("images/sample.jpeg"); // ... podeu afegir qualsevol nombre d'imatges varResult = 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())
{
// Add an image for OCR
Input.AddImage("images/sample.jpeg");
// ... podeu afegir qualsevol nombre d'imatges
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = New OcrInput() ' Add an image for OCRInput.AddImage("images/sample.jpeg") ' ... podeu afegir qualsevol nombre d'imatges DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput()
' Add an image for OCR
Input.AddImage("images/sample.jpeg")
' ... podeu afegir qualsevol nombre d'imatges
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
C# PDF OCR
El mateix enfocament es pot utilitzar de manera similar per extreure text de qualsevol document PDF.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (var input = new OcrInput()){ // Add a PDF file, optionally encrypted with a password input.AddPdf("example.pdf", "password"); // També podem seleccionar números de pàgines PDF específics per a OCR varResult = Ocr.Read(input);Console.WriteLine(Result.Text);Console.WriteLine($"{Result.Pages.Count()} Pages"); // 1 pàgina per a cada pàgina del PDF}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var input = new OcrInput())
{
// Add a PDF file, optionally encrypted with a password
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
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsing input = New OcrInput() ' Add a PDF file, optionally encrypted with a password input.AddPdf("example.pdf", "password") ' També podem seleccionar números de pàgines PDF específics per a OCR DimResult = Ocr.Read(input)Console.WriteLine(Result.Text)Console.WriteLine($"{Result.Pages.Count()} Pages") ' 1 pàgina per a cada pàgina del PDFEndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using input = New OcrInput()
' Add a PDF file, optionally encrypted with a password
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
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput()){ // Add a multi-frame TIFF for OCRInput.AddMultiFrameTiff("multi-frame.tiff"); varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput())
{
// Add a multi-frame TIFF for OCR
Input.AddMultiFrameTiff("multi-frame.tiff");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = New OcrInput() ' Add a multi-frame TIFF for OCRInput.AddMultiFrameTiff("multi-frame.tiff") DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput()
' Add a multi-frame TIFF for OCR
Input.AddMultiFrameTiff("multi-frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Codis de barres i QR
Una característica única de IronOCR é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;varOcr = new IronTesseract();Ocr.Configuration.ReadBarCodes = true;using (var input = new OcrInput()){ // Add an image that contains barcodes or QR codes input.AddImage("img/Barcode.png"); varResult = Ocr.Read(input); foreach (varBarcodeinResult.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())
{
// Add an image that contains barcodes or QR codes
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ó
}
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Configuration.ReadBarCodes = TrueUsing input = New OcrInput() ' Add an image that contains barcodes or QR codes input.AddImage("img/Barcode.png") DimResult = Ocr.Read(input) For EachBarcodeInResult.BarcodesConsole.WriteLine(Barcode.Value) ' també s'exposen propietats de tipus i ubicació NextBarcodeEndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Configuration.ReadBarCodes = True
Using input = New OcrInput()
' Add an image that contains barcodes or QR codes
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
OCR sobre àrees específiques d’imatges
Tots els mètodes de lectura i escaneig de IronOCR 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;using System.Drawing; // Add reference to System.DrawingvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput()){ // Define the area from which to read the text varContentArea = new Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 }; // Les dimensions són en pxInput.Add("document.png", ContentArea); varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
using IronOcr;
using System.Drawing; // Add reference to System.Drawing
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
using (var Input = new OcrInput())
{
// Define the area from which to read the text
var ContentArea = new 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);
}
ImportsIronOcrImportsSystem.Drawing' Add reference to System.DrawingPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = New OcrInput() ' Define the area from which to read the text DimContentArea = New Rectangle() With { .X = 215, .Y = 1250, .Height = 280, .Width = 1335 } ' Les dimensions són en pxInput.Add("document.png", ContentArea) DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Imports System.Drawing ' Add reference to System.Drawing
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput()
' Define the area from which to read the text
Dim ContentArea = New 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
OCR per a escaneigs de baixa qualitat
La classe OcrInput IronOCR pot corregir les exploracions que Tesseract no sap llegir.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput(@"img\Potter.LowQuality.tiff")){Input.DeNoise(); // Corrects digital noise and poor scansInput.Deskew(); // Fixes skewing and perspective issues varResult = 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(); // Corrects digital noise and poor scans
Input.Deskew(); // Fixes skewing and perspective issues
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = New OcrInput("img\Potter.LowQuality.tiff")Input.DeNoise() ' Corrects digital noise and poor scansInput.Deskew() ' Fixes skewing and perspective issues DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' Corrects digital noise and poor scans
Input.Deskew() ' Fixes skewing and perspective issues
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;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.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");
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = 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 = 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
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput()){Input.AddMultiFrameTiff("example.tiff"); varResult = Ocr.Read(Input);Result.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);
Result.SaveAsSearchablePdf("searchable.pdf");
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = New OcrInput()Input.AddMultiFrameTiff("example.tiff") DimResult = Ocr.Read(Input)Result.SaveAsSearchablePdf("searchable.pdf")EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput()
Input.AddMultiFrameTiff("example.tiff")
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
Exporta els resultats de l'OCR com a HTML
Conversió de la imatge OCR a XHTML.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;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.Catalan;
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.CatalanUsingInput = 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.Catalan
Using Input = New OcrInput()
Input.Title = "Html Title"
Input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(Input)
Result.SaveAsHocrFile("results.html")
End Using
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;using (varInput = new OcrInput(@"LowQuality.jpeg")){Input.DeNoise(); // Corrects digital noise and poor scansInput.Deskew(); // Fixes skewing and perspective issues varResult = 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(); // Corrects digital noise and poor scans
Input.Deskew(); // Fixes skewing and perspective issues
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
ImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanUsingInput = New OcrInput("LowQuality.jpeg")Input.DeNoise() ' Corrects digital noise and poor scansInput.Deskew() ' Fixes skewing and perspective issues DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' Corrects digital noise and poor scans
Input.Deskew() ' Fixes skewing and perspective issues
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
Llista de filtres d’imatges OCR
Els filtres d'entrada per millorar el rendiment de l'OCR integrats a IronOCR inclouen:
OcrInput.Rotate(double degrees): Gira les imatges un nombre de graus en sentit horari. Per a les agulles del rellotge, utilitzeu números negatius.
OcrInput.Binarize(): 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(): 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 i el negre es torna blanc.
OcrInput.Dilate(): Morfologia avançada. Afegeix píxels als límits dels objectes d’una imatge. Contrari a Erode.
OcrInput.Erode(): Morfologia avançada. Elimina els píxels als límits de l'objecte. Opposite 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: Augmenta automàticament el contrast del text sobre el fons d’una imatge, millorant l’eficiència del OCR i generalment augmentant el rendiment i la velocitat de l’OCR.
EnhanceResolution: Detecta automàticament les imatges de baixa resolució (que són inferiors a 275 dpi) i augmenta automàticament la imatge, 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: IronOCR 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: IronOCR 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: 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 IronOCR 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: Un paràmetre avançat que permet a IronOCR 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: Permet a IronOCR llegir automàticament codis de barres i codis QR a les pàgines, mentre que també llegeix text, sense afegir una càrrega de temps addicional.
ColorDepth: 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.
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.
// Install the IronOcr Arabic language package using NuGet// PM> Install-Package IronOcr.Languages.Arabicusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Arabic;using (var input = new OcrInput()){ // Add an image for OCR that contains Arabic text input.AddImage("img/arabic.gif"); // Apply image filters if needed // In this case, even though input is of very low quality // IronTesseract can read what the conventional Tesseract cannot. varResult = Ocr.Read(input); // Console cannot easily print Arabic on Windows. // Save it to disk.Result.SaveAsTextFile("arabic.txt");}
// Install the IronOcr Arabic language package using NuGet
// PM> Install-Package IronOcr.Languages.Arabic
using IronOcr;
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Arabic;
using (var input = new OcrInput())
{
// Add an image for OCR that contains Arabic text
input.AddImage("img/arabic.gif");
// Apply image filters if needed
// In this case, even though input is of very low quality
// IronTesseract can read what the conventional Tesseract cannot.
var Result = Ocr.Read(input);
// Console cannot easily print Arabic on Windows.
// Save it to disk.
Result.SaveAsTextFile("arabic.txt");
}
' Install the IronOcr Arabic language package using NuGet' PM> Install-Package IronOcr.Languages.ArabicImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.ArabicUsing input = New OcrInput() ' Add an image for OCR that contains Arabic text input.AddImage("img/arabic.gif") ' Apply image filters if needed ' In this case, even though input is of very low quality ' IronTesseract can read what the conventional Tesseract cannot. DimResult = Ocr.Read(input) ' Console cannot easily print Arabic on Windows. ' Save it to disk.Result.SaveAsTextFile("arabic.txt")EndUsing
' Install the IronOcr Arabic language package using NuGet
' PM> Install-Package IronOcr.Languages.Arabic
Imports IronOcr
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic
Using input = New OcrInput()
' Add an image for OCR that contains Arabic text
input.AddImage("img/arabic.gif")
' Apply image filters if needed
' In this case, even though input is of very low quality
' IronTesseract can read what the conventional Tesseract cannot.
Dim Result = Ocr.Read(input)
' Console cannot easily print Arabic on Windows.
' Save it to disk.
Result.SaveAsTextFile("arabic.txt")
End Using
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.
// Install the IronOcr Chinese Simplified language package using NuGet// PM> Install-Package IronOcr.Languages.ChineseSimplifiedusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.ChineseSimplified;Ocr.AddSecondaryLanguage(OcrLanguage.Catalan);// Podem afegir qualsevol nombre d’idiomesusing (var input = new OcrInput()){ input.Add("multi-language.pdf"); varResult = Ocr.Read(input);Result.SaveAsTextFile("results.txt");}
// Install the IronOcr Chinese Simplified language package using NuGet
// PM> Install-Package IronOcr.Languages.ChineseSimplified
using IronOcr;
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");
}
' Install the IronOcr Chinese Simplified language package using NuGet' PM> Install-Package IronOcr.Languages.ChineseSimplifiedImportsIronOcrPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.ChineseSimplifiedOcr.AddSecondaryLanguage(OcrLanguage.Catalan)' Podem afegir qualsevol nombre d'idiomesUsing input = New OcrInput() input.Add("multi-language.pdf") DimResult = Ocr.Read(input)Result.SaveAsTextFile("results.txt")EndUsing
' Install the IronOcr Chinese Simplified language package using NuGet
' PM> Install-Package IronOcr.Languages.ChineseSimplified
Imports IronOcr
Private 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
Objectes de resultats OCR detallats
IronOCR 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; // Add reference for System.Drawing assemblyvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Catalan;Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;Ocr.Configuration.ReadBarCodes = true; // Important for barcode readingusing (varInput = new OcrInput(@"images\sample.tiff")){ OcrResultResult = Ocr.Read(Input); varPages = Result.Pages; varWords = Pages[0].Words; varBarcodes = Result.Barcodes; // Explore here to find a massive and detailed API: // - Pages, blocks, paragraphs, lines, words, characters // - Image exports, font coordinates, statistical data}
using IronOcr;
using System.Drawing; // Add reference for System.Drawing assembly
var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Catalan;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; // Important for barcode reading
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;
// Explore here to find a massive and detailed API:
// - Pages, blocks, paragraphs, lines, words, characters
// - Image exports, font coordinates, statistical data
}
ImportsIronOcrImportsSystem.Drawing' Add reference for System.Drawing assemblyPrivateOcr = New IronTesseract()Ocr.Language = OcrLanguage.CatalanOcr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstmOcr.Configuration.ReadBarCodes = True ' Important for barcode readingUsingInput = New OcrInput("images\sample.tiff") DimResultAsOcrResult = Ocr.Read(Input) DimPages = Result.Pages DimWords = Pages(0).Words DimBarcodes = Result.Barcodes ' Explore here to find a massive and detailed API: ' - Pages, blocks, paragraphs, lines, words, characters ' - Image exports, font coordinates, statistical dataEndUsing
Imports IronOcr
Imports System.Drawing ' Add reference for System.Drawing assembly
Private Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Catalan
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True ' Important for barcode reading
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
' Explore here to find a massive and detailed API:
' - Pages, blocks, paragraphs, lines, words, characters
' - Image exports, font coordinates, statistical data
End Using
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 IronOCR i poden mostrar els matisos de com treure el màxim partit aquesta biblioteca.
Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.