<meta http-equiv="content-language" content="pt" />
<h1>OCR português em C# e .NET</h1><h6> Outras versões deste documento:</h6><ul><li> <a href="/csharp/ocr/languages/portuguese-pt/">Em português</a></li><li> <a href="/csharp/ocr/languages/portuguese/">Inglês (This Page in English)</a></li><li> <a href="/csharp/ocr/languages/">Mais Languages</a></li></ul><p> IronOCR é um componente de software C# que permite aos codificadores .NET lerem textos de imagens e documentos PDF em 126 idiomas, incluindo português.</p><p> É 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.</p><h2> Conteúdo de IronOcr.Languages.Portuguese</h2><p> Este pacote contém 55 idiomas OCR para .NET:</p><ul><li> Português</li><li> Melhor português</li><li> PortugueseFast</li></ul><h2> Baixar</h2><p> Pacote de Língua Portuguesa <span style='white-space:default'>[português]</span> <br /></p>
* Download as <a class='languages-dll' href='/csharp/ocr/packages/language-packs/Portuguese.ocrdata.zip'>Fecho eclair <i class='fas fa-download'></i><br /></a>
* Install with <a target='_blank' class='languages-nuget' href="https://www.nuget.org/packages/IronOcr.Languages.Portuguese/">https://www.nuget.org/packages/IronOcr.Languages.Portuguese/</a>'> NuGet<i class='nuget-icon'></i><h2> Instalação</h2><p> A primeira coisa que temos que fazer é instalar nosso pacote OCR em <strong>português</strong> no seu projeto .NET.</p><p> <code>PM> Install-Package IronOcr.Languages.Portuguese</code></p><h2> Exemplo de Código</h2><p> Este exemplo de código C# lê texto em português de uma imagem ou documento PDF.</p>
```cs
//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;
}
```
<h2>Por que escolher o IronOCR?</h2><p> O IronOCR é uma biblioteca de software .NET fácil de instalar, completa e bem documentada.</p><p> Escolha IronOCR para atingir <strong>99,8% + precisão de OCR</strong> sem usar nenhum serviço externo da web, taxas contínuas ou envio de documentos confidenciais pela Internet.</p><h4> Por que os desenvolvedores C# escolhem IronOCR em vez de Vanilla Tesseract:</h4><ul><li> Instale como uma única DLL ou NuGet</li><li> Inclui para Tesseract 5, 4 e 3 motores fora da caixa.</li><li> A precisão de <strong>99,8%</strong> supera significativamente o Tesseract normal.</li><li> Velocidade incrível e MultiThreading</li><li> Compatível com MVC, WebApp, Desktop, Console e Aplicativo de Servidor</li><li> Nenhum código Exes ou C ++ para trabalhar</li><li> Suporte completo para PDF OCR</li><li> Para realizar OCR em quase qualquer arquivo de imagem ou PDF</li><li> Suporte completo para .NET Core, Standard e FrameWork</li><li> Implante no Windows, Mac, Linux, Azure, Docker, Lambda, AWS</li><li> Leia códigos de barras e códigos QR</li><li> Exportar OCR para XHTML</li><li> Exportar OCR para documentos PDF pesquisáveis</li><li> Suporte multithreading</li><li> 126 idiomas internacionais, todos gerenciados por meio de arquivos NuGet ou OcrData</li><li> Extraia imagens, coordenadas, estatísticas e fontes. Não apenas texto.</li><li> Pode ser usado para redistribuir Tesseract OCR dentro de aplicativos comerciais e proprietários.</li></ul><p> <em>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.</em></p><p> Outras bibliotecas <a href="/csharp/ocr/use-case/free-ocr-csharp/">OCR gratuitas</a> 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.</p><h2> OCR com Tesseract 5 - Comece a codificação em C #</h2><p> O exemplo de código abaixo mostra como é fácil ler o texto de uma imagem usando C# ou VB .NET.</p><h3> OneLiner</h3>
```cs
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
```
<h3>Hello World configurável</h3>
```cs
// 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);
}
```
<h3>C# PDF OCR</h3><p> A mesma abordagem pode ser usada de forma semelhante para extrair texto de qualquer documento PDF.</p>
```cs
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
}
```
<h3>OCR para TIFFs MultiPage</h3><p> 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.</p>
```cs
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);
}
```
<h3>Códigos de barras e QR</h3><p> 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 <code>OcrResult.OcrBarcode</code> fornecem ao desenvolvedor informações detalhadas sobre cada código de barras lido.</p>
```cs
// 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
}
}
```
<h3>OCR em áreas específicas de imagens</h3><p> 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.</p><p> Para usar regiões de corte, precisaremos adicionar uma referência de sistema a <code>System.Drawing</code> para que possamos usar o objeto <code>System.Drawing.Rectangle</code> .</p>
```cs
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);
}
```
<h3>OCR para digitalizações de baixa qualidade</h3><p> A classe IronOCR <code>OcrInput</code> pode corrigir varreduras que o Tesseract normal não consegue ler.</p>
```cs
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);
}
```
<h3>Exportar resultados de OCR como PDF pesquisável</h3><p> Imagem em PDF com strings de texto copiáveis. Pode ser indexado por mecanismos de pesquisa e bancos de dados.</p>
```cs
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")
}
```
<h3>Conversão de TIFF para PDF pesquisável</h3><p> 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.</p>
```cs
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")
}
```
<h3>Exportar resultados de OCR como HTML</h3><p> Imagem OCR para conversão XHTML.</p>
```cs
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");
}
```
<h2>Filtros de aprimoramento de imagem OCR</h2><p> IronOCR fornece filtros exclusivos para objetos <code>OcrInput</code> para melhorar o desempenho do OCR.</p><h3> Exemplo de código de aprimoramento de imagem</h3><p> Torna as imagens de entrada de OCR de qualidade superior para produzir resultados de OCR melhores e mais rápidos.</p>
```cs
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);
}
```
<h3>Lista de filtros de imagem OCR</h3><p> Filtros de entrada para melhorar o desempenho do OCR que são integrados ao IronOCR incluem:</p><ul><li> <strong>OcrInput.Rotate (graus duplos)</strong> - Gira as imagens em vários graus no sentido horário. Para anti-horário, use números negativos.</li><li> <strong>OcrInput.Binarize ()</strong> - 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.</li><li> <strong>OcrInput.ToGrayScale ()</strong> - 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</li><li> <strong>OcrInput.Contrast ()</strong> - Aumenta o contraste automaticamente. Este filtro geralmente melhora a velocidade e precisão do OCR em digitalizações de baixo contraste.</li><li> <strong>OcrInput.DeNoise ()</strong> - Remove o ruído digital. Este filtro deve ser usado apenas onde houver expectativa de ruído.</li><li> <strong>OcrInput.Invert ()</strong> - Inverte todas as cores. Por exemplo, o branco torna-se preto: o preto torna-se branco.</li><li> <strong>OcrInput.Dilate ()</strong> - Morfologia Avançada. <em>A dilatação</em> adiciona pixels aos limites dos objetos em uma imagem. Oposto de Erode</li><li> <strong>OcrInput.Erode ()</strong> - Morfologia Avançada. <em>A erosão</em> remove pixels nos limites do objeto. Oposto de dilato</li><li> <strong>OcrInput.Deskew ()</strong> - 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.</li><li> <strong>OcrInput.DeepCleanBackgroundNoise ()</strong> - 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.</li><li> <strong>OcrInput.EnhanceResolution</strong> - aprimora a resolução de imagens de baixa qualidade. Este filtro não é frequentemente necessário porque <em>OcrInput.MinimumDPI</em> e <em>OcrInput.TargetDPI</em> irão capturar e resolver automaticamente entradas de baixa resolução.</li></ul><p> <strong>CleanBackgroundNoise.</strong> 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.</p><p> <strong>EnhanceContrast</strong> é 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.</p><p> <strong>EnhanceResolution</strong> é 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.</p><p> <strong>Idioma O</strong> 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.</p><p> <strong>Estratégia</strong> 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.</p><p> <strong>ColorSpace</strong> é 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.</p><p> <strong>DetectWhiteTextOnDarkBackgrounds.</strong> 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.</p><p> <strong>InputImageType.</strong> 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.</p><p> <strong>RotateAndStraighten</strong> é 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.</p><p> <strong>ReadBarcodes</strong> é 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.</p><p> <strong>Profundidade de cor.</strong> 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.</p><h2> 126 Pacotes de Idiomas</h2><p> O IronOCR oferece suporte a <strong>126 idiomas internacionais</strong> por meio de pacotes de idiomas distribuídos como DLLs, que podem ser <a href="/csharp/ocr/languages/">baixados deste site</a> ou também do <a href="https://www.nuget.org/packages?q=IronOcr.Languages">Gerenciador de pacotes NuGet</a> .</p><p> 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.</p><h3> Exemplo de linguagem</h3><p> Usando outros idiomas de OCR.</p>
```cs
// 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");
}
```
<h3>Exemplo de vários idiomas</h3><p> 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.</p>
```cs
// 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");
}
```
<h2>Objetos detalhados de resultados de OCR</h2><p> 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.</p>
```cs
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
}
```
<h2>atuação</h2><p> IronOCR funciona fora da caixa, sem necessidade de ajustar o desempenho ou modificar fortemente as imagens de entrada.</p><p> A velocidade é impressionante: IronOCR.2020 + é até 10 vezes mais rápido e causa 250% menos erros do que as versões anteriores.</p><h2> Saber mais</h2><p> Para saber mais sobre OCR em C #, VB, F # ou qualquer outra linguagem .NET, <a href="/csharp/ocr/tutorials/how-to-read-text-from-an-image-in-csharp-net/">leia nossos tutoriais da comunidade</a> , 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.</p><p> Uma <a href="/csharp/ocr/object-reference/api/">referência</a> completa de <a href="/csharp/ocr/object-reference/api/">objetos para desenvolvedores .NET</a> também está disponível.</p>
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.
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.Portugueseusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput(@"images\Portuguese.png")){varResult = Ocr.Read(Input);varAllText = Result.Text;}
//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;
}
'PM> Install-Package IronOcr.Languages.PortugueseImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = New OcrInput("images\Portuguese.png") DimResult = Ocr.Read(Input) DimAllText = Result.TextEndUsing
'PM> Install-Package IronOcr.Languages.Portuguese
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input = New OcrInput("images\Portuguese.png")
Dim Result = Ocr.Read(Input)
Dim AllText = Result.Text
End Using
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
stringText = new IronTesseract().Read(@"img\Screenshot.png").Text;
string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;
DimTextAsString = (New IronTesseract()).Read("img\Screenshot.png").Text
Dim Text As String = (New IronTesseract()).Read("img\Screenshot.png").Text
Hello World configurável
// PM> Install-Package IronOcr.Languages.Portugueseusing IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput()){Input.AddImage("images/sample.jpeg")//... você pode adicionar qualquer número de imagensvarResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
// 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.
varOcr = 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 OCRvarResult = Ocr.Read(input);Console.WriteLine(Result.Text);Console.WriteLine($"{Result.Pages.Count()} Pages");// 1 página para cada página do 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
}
DimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsing input As New OcrInput() input.AddPdf("example.pdf", "password") ' Também podemos selecionar números específicos de páginas PDF para OCR DimResult = Ocr.Read(input)Console.WriteLine(Result.Text)Console.WriteLine($"{Result.Pages.Count()} Pages") ' 1 página para cada página do PDFEndUsing
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using input As New OcrInput()
input.AddPdf("example.pdf", "password")
' Também podemos selecionar números específicos de páginas PDF para OCR
Dim Result = Ocr.Read(input)
Console.WriteLine(Result.Text)
Console.WriteLine($"{Result.Pages.Count()} Pages")
' 1 página para cada página do PDF
End Using
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput()){input.AddMultiFrameTiff("multi - frame.tiff");varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
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);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = New OcrInput()Input.AddMultiFrameTiff("multi - frame.tiff") DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input = New OcrInput()
Input.AddMultiFrameTiff("multi - frame.tiff")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
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;varOcr = new IronTesseract();Ocr.Configuration.ReadBarCodes = true;using (var input = new OcrInput()){input.AddImage("img/Barcode.png");varResult = Ocr.Read(input);foreach (varBarcodeinResult.Barcodes){Console.WriteLine(Barcode.Value);// propriedades de tipo e localização também expostas}}
// 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
}
}
' Imports IronOcrDimOcrAs New IronTesseract()Ocr.Configuration.ReadBarCodes = TrueUsing input As New OcrInput() input.AddImage("img/Barcode.png") DimResult = Ocr.Read(input) For EachBarcodeInResult.BarcodesConsole.WriteLine(Barcode.Value) ' propriedades de tipo e localização também expostas NextEndUsing
' Imports IronOcr
Dim Ocr As New IronTesseract()
Ocr.Configuration.ReadBarCodes = True
Using input As New OcrInput()
input.AddImage("img/Barcode.png")
Dim Result = Ocr.Read(input)
For Each Barcode In Result.Barcodes
Console.WriteLine(Barcode.Value)
' propriedades de tipo e localização também expostas
Next
End Using
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput()){varContentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };// As dimensões estão em pxInput.Add("document.png", ContentArea);varResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
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);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = New OcrInput() DimContentArea = New System.Drawing.Rectangle() With {.X = 215, .Y = 1250, .Height = 280, .Width = 1335} ' As dimensões estão em pxInput.Add("document.png", ContentArea) DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input = New OcrInput()
Dim ContentArea = New System.Drawing.Rectangle() With {.X = 215, .Y = 1250, .Height = 280, .Width = 1335}
' As dimensões estão em px
Input.Add("document.png", ContentArea)
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
OCR para digitalizações de baixa qualidade
A classe IronOCR OcrInput pode corrigir varreduras que o Tesseract normal não consegue ler.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput(@"img\Potter.LowQuality.tiff")){Input.DeNoise(); // corrige ruído digital e digitalização deficienteInput.Deskew(); // corrige rotação e perspectivavarResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
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);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = New OcrInput("img\Potter.LowQuality.tiff")Input.DeNoise() ' corrige ruído digital e digitalização deficienteInput.Deskew() ' corrige rotação e perspectiva DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input = New OcrInput("img\Potter.LowQuality.tiff")
Input.DeNoise() ' corrige ruído digital e digitalização deficiente
Input.Deskew() ' corrige rotação e perspectiva
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;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.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")
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = 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.Portuguese
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
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput()){input.AddMultiFrameTiff("example.tiff")varResult = Ocr.Read(input).SaveAsSearchablePdf("searchable.pdf")}
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")
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = New OcrInput()Input.AddMultiFrameTiff("example.tiff") DimResult = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf")EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input = New OcrInput()
Input.AddMultiFrameTiff("example.tiff")
Dim Result = Ocr.Read(Input).SaveAsSearchablePdf("searchable.pdf")
End Using
Exportar resultados de OCR como HTML
Imagem OCR para conversão XHTML.
using IronOcr;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;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.Portuguese;
using (var Input = new OcrInput()){
input.Title = "Html Title"
input.AddImage("image1.jpeg");
var Result = Ocr.Read(input);
Result.SaveAsHocrFile("results.html");
}
ImportsIronOcrDimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInputAs New OcrInput()Input.Title = "Html Title"Input.AddImage("image1.jpeg") DimResult = Ocr.Read(Input)Result.SaveAsHocrFile("results.html")EndUsing
Imports IronOcr
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input As New OcrInput()
Input.Title = "Html Title"
Input.AddImage("image1.jpeg")
Dim Result = Ocr.Read(Input)
Result.SaveAsHocrFile("results.html")
End Using
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;varOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;using (varInput = new OcrInput(@"LowQuality.jpeg")){Input.DeNoise(); // corrige ruído digital e digitalização deficienteInput.Deskew(); // corrige rotação e perspectivavarResult = Ocr.Read(Input);Console.WriteLine(Result.Text);}
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);
}
ImportsIronOcrDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.PortugueseUsingInput = New OcrInput("LowQuality.jpeg")Input.DeNoise() ' corrige ruído digital e digitalização deficienteInput.Deskew() ' corrige rotação e perspectiva DimResult = Ocr.Read(Input)Console.WriteLine(Result.Text)EndUsing
Imports IronOcr
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Using Input = New OcrInput("LowQuality.jpeg")
Input.DeNoise() ' corrige ruído digital e digitalização deficiente
Input.Deskew() ' corrige rotação e perspectiva
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
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.
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.ArabicvarOcr = 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.varResult = Ocr.Read(input);// O console não imprime árabe no Windows com facilidade.// Em vez disso, vamos salvar no disco.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");
// 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");
}
' Imports IronOcr' PM> Install-Package IronOcr.Languages.ArabicDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.ArabicUsing 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. DimResult = Ocr.Read(input) ' O console não imprime árabe no Windows com facilidade. ' Em vez disso, vamos salvar no disco.Result.SaveAsTextFile("arabic.txt")EndUsing
' Imports IronOcr
' PM> Install-Package IronOcr.Languages.Arabic
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.Arabic
Using 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.
Dim 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")
End Using
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.ChineseSimplifiedvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.ChineseSimplified;Ocr.AddSecondaryLanguage(OcrLanguage.Portuguese);// Podemos adicionar qualquer número de idiomasusing (var input = new OcrInput()){input.Add("multi - language.pdf");varResult = 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.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");
}
' Imports IronOcr' PM> Install IronOcr.Languages.ChineseSimplifiedDimOcr = New IronTesseract()Ocr.Language = OcrLanguage.ChineseSimplifiedOcr.AddSecondaryLanguage(OcrLanguage.Portuguese)' Podemos adicionar qualquer número de idiomasUsing input = New OcrInput() input.Add("multi - language.pdf") DimResult = Ocr.Read(input)Result.SaveAsTextFile("results.txt")EndUsing
' Imports IronOcr
' PM> Install IronOcr.Languages.ChineseSimplified
Dim Ocr = New IronTesseract()
Ocr.Language = OcrLanguage.ChineseSimplified
Ocr.AddSecondaryLanguage(OcrLanguage.Portuguese)
' Podemos adicionar qualquer número de idiomas
Using input = New OcrInput()
input.Add("multi - language.pdf")
Dim Result = Ocr.Read(input)
Result.SaveAsTextFile("results.txt")
End Using
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 MontagemvarOcr = new IronTesseract();Ocr.Language = OcrLanguage.Portuguese;Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm;Ocr.Configuration.ReadBarCodes = true; //!Importanteusing (varInput = new OcrInput(@"images\sample.tiff")){OcrResultResult = Ocr.Read(Input);varPages = Result.Pages;varWords = Pages[0].Words;varBarcodes = 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}
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
}
ImportsIronOcrImportsSystem.Drawing'Adicionar Referência de MontagemDimOcrAs New IronTesseract()Ocr.Language = OcrLanguage.PortugueseOcr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstmOcr.Configuration.ReadBarCodes = True '!ImportanteUsingInputAs New OcrInput("images\sample.tiff") DimResultAsOcrResult = Ocr.Read(Input) DimPages = Result.Pages DimWords = Pages(0).Words DimBarcodes = 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ísticosEndUsing
Imports IronOcr
Imports System.Drawing 'Adicionar Referência de Montagem
Dim Ocr As New IronTesseract()
Ocr.Language = OcrLanguage.Portuguese
Ocr.Configuration.EngineMode = TesseractEngineMode.TesseractAndLstm
Ocr.Configuration.ReadBarCodes = True '!Importante
Using Input As 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 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
End Using
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.
커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.