IRONSOFTWAREHOME

OCR português em C# e .NET

Curtis Chau
Curtis Chau
Updated: 2026年4月23日
Outras versões deste documento:

IronOCR é um componente de software C# que permite aos codificadores .NET lerem textos de imagens e documentos PDF em 126 idiomas, incluindo português.

É um fork avançado do Tesseract, construído exclusivamente para os desenvolvedores .NET e regularmente supera outros engines do Tesseract em velocidade e precisão.

Conteúdo de IronOcr.Languages.Portuguese

Este pacote contém 55 idiomas OCR para .NET:

  • Português
  • Melhor português
  • PortugueseFast

Baixar

Pacote de Língua Portuguesa [português]

  • Download as Fecho eclair

  • Install with https://www.nuget.org/packages/IronOcr.Languages.Portuguese/'> NuGet

    Instalação

    A primeira coisa que temos que fazer é instalar nosso pacote OCR em português no seu projeto .NET.

    PM> Install-Package IronOcr.Languages.Portuguese

    Exemplo de Código

    Este exemplo de código C# lê texto em português de uma imagem ou documento PDF.

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Portuguese;
using (var Input = new OcrInput(@"images\Portuguese.png"))
{
var Result = Ocr.Read(Input);
var AllText =  Result.Text;
}

Por que escolher o IronOCR?

O IronOCR é uma biblioteca de software .NET fácil de instalar, completa e bem documentada.

Escolha IronOCR para atingir 99,8% + precisão de OCR sem usar nenhum serviço externo da web, taxas contínuas ou envio de documentos confidenciais pela Internet.

Por que os desenvolvedores C# escolhem IronOCR em vez de Vanilla Tesseract:

  • Instale como uma única DLL ou NuGet
  • Inclui para Tesseract 5, 4 e 3 motores fora da caixa.
  • A precisão de 99,8% supera significativamente o Tesseract normal.
  • Velocidade incrível e MultiThreading
  • Compatível com MVC, WebApp, Desktop, Console e Aplicativo de Servidor
  • Nenhum código Exes ou C ++ para trabalhar
  • Suporte completo para PDF OCR
  • Para realizar OCR em quase qualquer arquivo de imagem ou PDF
  • Suporte completo para .NET Core, Standard e FrameWork
  • Implante no Windows, Mac, Linux, Azure, Docker, Lambda, AWS
  • Leia códigos de barras e códigos QR
  • Exportar OCR para XHTML
  • Exportar OCR para documentos PDF pesquisáveis
  • Suporte multithreading
  • 126 idiomas internacionais, todos gerenciados por meio de arquivos NuGet ou OcrData
  • Extraia imagens, coordenadas, estatísticas e fontes. Não apenas texto.
  • Pode ser usado para redistribuir Tesseract OCR dentro de aplicativos comerciais e proprietários.

O OCR de ferro brilha ao trabalhar com imagens do mundo real e documentos imperfeitos, como fotografias ou digitalizações de baixa resolução que podem apresentar ruídos digitais ou imperfeições.

Outras bibliotecas OCR gratuitas para a plataforma .NET, como outras APIs .NET Tesseract e serviços da Web, não funcionam tão bem nesses casos de uso do mundo real.

OCR com Tesseract 5 - Comece a codificação em C #

O exemplo de código abaixo mostra como é fácil ler o texto de uma imagem usando C# ou VB .NET.

OneLiner

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;

Hello World configurável

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

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Portuguese;
using (var Input = new OcrInput()){
Input.AddImage("images/sample.jpeg")
//... você pode adicionar qualquer número de imagens
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
C#

C# PDF OCR

A mesma abordagem pode ser usada de forma semelhante para extrair texto de qualquer documento PDF.

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Portuguese;
using (var input = new OcrInput())
{
input.AddPdf("example.pdf", "password");
// Também podemos selecionar números específicos de páginas PDF para OCR

var Result = Ocr.Read(input);

Console.WriteLine(Result.Text);
Console.WriteLine($"{Result.Pages.Count()} Pages");
// 1 página para cada página do PDF
}

OCR para TIFFs MultiPage

Formato de arquivo TIFF de leitura OCR, incluindo documentos de várias páginas. O TIFF também pode ser convertido diretamente em um arquivo PDF com texto pesquisável.

using IronOcr;

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

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

Códigos de barras e QR

Uma característica única do IronOCR é que ele pode ler códigos de barras e códigos QR de documentos enquanto digitaliza o texto. As instâncias da classe OcrResult.OcrBarcode fornecem ao desenvolvedor informações detalhadas sobre cada código de barras lido.

// 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);
// propriedades de tipo e localização também expostas
}
}

OCR em áreas específicas de imagens

Todos os métodos de leitura e digitalização do IronOCR fornecem a capacidade de especificar exatamente de qual parte de uma página ou páginas desejamos ler o texto. Isso é muito útil quando estamos examinando formulários padronizados e pode economizar muito tempo e melhorar a eficiência.

Para usar regiões de corte, precisaremos adicionar uma referência de sistema a System.Drawing para que possamos usar o objeto System.Drawing.Rectangle .

using IronOcr;

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

using (var Input = new OcrInput())
{
var ContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };
// As dimensões estão em px

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

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

OCR para digitalizações de baixa qualidade

A classe IronOCR OcrInput pode corrigir varreduras que o Tesseract normal não consegue ler.

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

using (var Input = new OcrInput(@"img\Potter.LowQuality.tiff"))
{
Input.DeNoise(); // corrige ruído digital e digitalização deficiente
Input.Deskew();  // corrige rotação e perspectiva
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}

Exportar resultados de OCR como PDF pesquisável

Imagem em PDF com strings de texto copiáveis. Pode ser indexado por mecanismos de pesquisa e bancos de dados.

using IronOcr;

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

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

Conversão de TIFF para PDF pesquisável

Converta um documento TIFF (ou qualquer grupo de arquivos de imagem) diretamente em um PDF pesquisável, que pode ser indexado por intranet, site da Web e mecanismos de pesquisa do Google.

using IronOcr;

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

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

Exportar resultados de OCR como HTML

Imagem OCR para conversão XHTML.

using IronOcr;

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

Filtros de aprimoramento de imagem OCR

IronOCR fornece filtros exclusivos para objetos OcrInput para melhorar o desempenho do OCR.

Exemplo de código de aprimoramento de imagem

Torna as imagens de entrada de OCR de qualidade superior para produzir resultados de OCR melhores e mais rápidos.

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

using (var Input = new OcrInput(@"LowQuality.jpeg"))
{
Input.DeNoise(); // corrige ruído digital e digitalização deficiente
Input.Deskew();  // corrige rotação e perspectiva
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}

Lista de filtros de imagem OCR

Filtros de entrada para melhorar o desempenho do OCR que são integrados ao IronOCR incluem:

  • OcrInput.Rotate (graus duplos) - Gira as imagens em vários graus no sentido horário. Para anti-horário, use números negativos.
  • OcrInput.Binarize () - Este filtro de imagem torna cada pixel preto ou branco, sem meio termo. Pode melhorar o desempenho do OCR em casos de contraste muito baixo do texto com o fundo.
  • OcrInput.ToGrayScale () - Este filtro de imagem transforma cada pixel em uma sombra de tons de cinza. É improvável que melhore a precisão do OCR, mas pode melhorar a velocidade
  • OcrInput.Contrast () - Aumenta o contraste automaticamente. Este filtro geralmente melhora a velocidade e precisão do OCR em digitalizações de baixo contraste.
  • OcrInput.DeNoise () - Remove o ruído digital. Este filtro deve ser usado apenas onde houver expectativa de ruído.
  • OcrInput.Invert () - Inverte todas as cores. Por exemplo, o branco torna-se preto: o preto torna-se branco.
  • OcrInput.Dilate () - Morfologia Avançada. A dilatação adiciona pixels aos limites dos objetos em uma imagem. Oposto de Erode
  • OcrInput.Erode () - Morfologia Avançada. A erosão remove pixels nos limites do objeto. Oposto de dilato
  • OcrInput.Deskew () - Gira uma imagem para que fique do lado certo para cima e ortogonal. Isso é muito útil para OCR porque a tolerância do Tesseract para digitalizações distorcidas pode ser de até 5 graus.
  • OcrInput.DeepCleanBackgroundNoise () - Remoção de ruído de fundo pesado. Use esse filtro apenas no caso de ser conhecido um ruído de fundo extremo do documento, porque ele também corre o risco de reduzir a precisão do OCR de documentos limpos e é muito caro para a CPU.
  • OcrInput.EnhanceResolution - aprimora a resolução de imagens de baixa qualidade. Este filtro não é frequentemente necessário porque OcrInput.MinimumDPI e OcrInput.TargetDPI irão capturar e resolver automaticamente entradas de baixa resolução.

CleanBackgroundNoise. Esta é uma configuração que é um tanto demorada; entretanto, permite que a biblioteca limpe automaticamente o ruído digital, amassamentos de papel e outras imperfeições em uma imagem digital que, de outra forma, a tornaria incapaz de ser lida por outras bibliotecas de OCR.

EnhanceContrast é uma configuração que faz com que o IronOCR aumente automaticamente o contraste do texto contra o fundo de uma imagem, aumentando a precisão do OCR e geralmente aumentando o desempenho e a velocidade do OCR.

EnhanceResolution é uma configuração que detecta automaticamente imagens de baixa resolução (que estão abaixo de 275 dpi) e automaticamente aprimora a imagem e então torna todo o texto mais nítido para que possa ser lido perfeitamente por uma biblioteca de OCR. Embora essa operação consuma muito tempo, geralmente reduz o tempo geral para uma operação de OCR em uma imagem.

Idioma O IronOCR suporta 22 pacotes de idiomas internacionais e a configuração do idioma pode ser usada para selecionar um ou mais idiomas múltiplos a serem aplicados a uma operação de OCR.

Estratégia IronOCR suporta duas estratégias. Podemos escolher ir para uma digitalização rápida e menos precisa de um documento ou usar uma estratégia avançada que usa alguns modelos de inteligência artificial para melhorar automaticamente a precisão do texto OCR, observando a relação estatística das palavras entre si em uma frase.

ColorSpace é uma configuração pela qual podemos escolher o OCR em tons de cinza ou em cores. Geralmente, a escala de cinza é a melhor opção. No entanto, às vezes, quando há textos ou planos de fundo de matiz semelhante, mas com cores muito diferentes, um espaço de cores totalmente colorido fornecerá melhores resultados.

DetectWhiteTextOnDarkBackgrounds. Geralmente, todas as bibliotecas de OCR esperam ver texto preto em fundos brancos. Essa configuração permite que o IronOCR detecte automaticamente negativos ou páginas escuras com texto em branco e os leia.

InputImageType. Esta configuração permite que o desenvolvedor oriente a biblioteca OCR quanto a se ela está olhando um documento completo ou um snippet, como uma captura de tela.

RotateAndStraighten é uma configuração avançada que permite ao IronOCR a capacidade única de ler documentos que não são apenas girados, mas talvez contenham perspectiva, como fotografias de documentos de texto.

ReadBarcodes é um recurso útil que permite ao IronOCR ler códigos de barras e códigos QR automaticamente nas páginas, pois também lê texto, sem adicionar uma grande carga de tempo adicional.

Profundidade de cor. Esta configuração determina quantos bits por pixel a biblioteca OCR usará para determinar a profundidade de uma cor. Uma profundidade de cor maior pode aumentar a qualidade do OCR, mas também aumentará o tempo necessário para a conclusão da operação de OCR.

126 Pacotes de Idiomas

O IronOCR oferece suporte a 126 idiomas internacionais por meio de pacotes de idiomas distribuídos como DLLs, que podem ser baixados deste site ou também do Gerenciador de pacotes NuGet .

Os idiomas incluem alemão, francês, inglês, chinês, japonês e muitos mais. Existem pacotes de idiomas especializados para passaporte MRZ, cheques MICR, dados financeiros, placas de veículos e muito mais. Você também pode usar qualquer arquivo ".traineddata" do Tesseract - incluindo aqueles que você mesmo cria.

Exemplo de linguagem

Usando outros idiomas de 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");
// Adicione filtros de imagem se necessário
// Neste caso, mesmo a entrada de pensamento é de qualidade muito baixa
// IronTesseract pode ler o que o Tesseract convencional não pode.

var Result = Ocr.Read(input);

// O console não imprime árabe no Windows com facilidade.
// Em vez disso, vamos salvar no disco.
Result.SaveAsTextFile("arabic.txt");
}

Exemplo de vários idiomas

Também é possível fazer o OCR usando vários idiomas ao mesmo tempo. Isso pode realmente ajudar a obter metadados e urls do idioma inglês em documentos Unicode.

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

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

// Podemos adicionar qualquer número de idiomas

using (var input = new OcrInput())
{
input.Add("multi - language.pdf");
var Result = Ocr.Read(input);
Result.SaveAsTextFile("results.txt");
}

Objetos detalhados de resultados de OCR

IronOCR retorna um objeto de resultado de OCR para cada operação de OCR. Geralmente, os desenvolvedores usam apenas a propriedade text deste objeto para obter o texto digitalizado da imagem. No entanto, o DOM de resultados de OCR é muito mais avançado do que isso.

using IronOcr;
using System.Drawing; //Adicionar Referência de Montagem

var Ocr = new IronTesseract();
Ocr.Language = OcrLanguage.Portuguese;
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;
Ocr.Configuration.ReadBarCodes = true; //!Importante

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 aqui para encontrar uma API enorme e detalhada:
// - Páginas, blocos, parafáforos, linhas, palavras, caracteres
// - Exportação de imagens, coordenadas de fontes, dados estatísticos
}

atuação

IronOCR funciona fora da caixa, sem necessidade de ajustar o desempenho ou modificar fortemente as imagens de entrada.

A velocidade é impressionante: IronOCR.2020 + é até 10 vezes mais rápido e causa 250% menos erros do que as versões anteriores.

Saber mais

Para saber mais sobre OCR em C #, VB, F # ou qualquer outra linguagem .NET, leia nossos tutoriais da comunidade , que fornecem exemplos do mundo real de como o IronOCR pode ser usado e podem mostrar as nuances de como obter o melhor esta biblioteca.

Uma referência completa de objetos para desenvolvedores .NET também está disponível.

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

準備開始了嗎?

Nuget Downloads 6,236,385版本:2026.9剛剛發布

立即獲取您的30天試用金鑰
無需信用卡或帳戶建立
C# PDF的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"

授權從$999

有問題嗎?聯絡我們的開發團隊。

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天試用金鑰
無需信用卡或帳戶建立