IRONSOFTWAREHOME

OCR català a C# i .NET

Curtis Chau
Curtis Chau
Updated: 2026년 4월 23일
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à]

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.

// 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 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 IronTesseract
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
Console.WriteLine(Text);

Configurable Hello World

// 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.

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.

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.

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.

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.

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.

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.

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.

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.

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 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.

// 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.

// 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.

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, 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 per als desenvolupadors de .NET.

Curtis Chau
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

...
더 읽어보기

시작할 준비 되셨나요?

Nuget Downloads 6,236,385버전:2026.9방금 출시

지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.
PDF용 C# NuGet 라이브러리
NuGet을 사용하여 설치하세요

버전: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 선택합니다.
  2. 찾아보기를 선택하고 "IronOCR"을 검색하세요.
  3. 패키지를 선택하고 설치하세요
C# PDF DLL
DLL 다운로드

버전: 2026.9

또는 여기에서 Windows 설치 프로그램을 다운로드하십시오.

  1. IronOCR을 다운로드하고 솔루션 디렉터리 내의 ~/Libs와 같은 위치에 압축을 푸세요.
  2. Visual Studio 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭합니다. 찾아보기를 선택하고 "IronOCR.dll"을 선택합니다.

라이선스 가격은 749달러 부터 시작합니다.

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.