C# PDF OCR
El OCR de documentos PDF es un caso de uso muy común en el desarrollo de software .NET en la vida real.
Puede que necesitemos realizar el OCR en un Pdf por varias razones, entre ellas:
- Extraer contenidos para reutilizarlos o modernizarlos
- Búsqueda en documentos PDF escaneados
Rellenar un índice de búsqueda.
IronOCR proporciona una sólida API para que los desarrolladores de .net y C# realicen esta tarea. IronOCR amplía Tesseract 5 y añade funcionalidad PDF a los desarrolladores .NET.
Cómo realizar OCR en un PDF en C#
IronOcr proporciona una API robusta para extraer texto de PDFs y también para hacer búsquedas en PDFs escaneados usando C# y otros lenguajes .NET.
En el siguiente ejemplo de C# haremos OCR a un PDF existente.
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("example.pdf");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("example.pdf");
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.AddPdf("example.pdf")
Dim Result = Ocr.Read(Input)
Console.WriteLine(Result.Text)
End Using
También podemos extraer texto de una o varias páginas concretas:
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdfPages("example.pdf", new [] { 1, 2, 3 });
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdfPages("example.pdf", new [] { 1, 2, 3 });
var Result = Ocr.Read(Input);
Console.WriteLine(Result.Text);
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
PDF Resultados OCR Clase
El valor Resultado
no sólo contiene el texto del PDF. También contiene información sobre Páginas, Párrafos, Líneas, Palabras , Caracteres y Códigos de Barras descubiertos en el documento PDF por IronOcr.
Podemos explorar la clase IronOcr.OcrResult
en: https://ironsoftware.com/csharp/ocr/examples/results-objects/.
Creación de PDF con capacidad de búsqueda mediante OCR
Una de nuestras funciones de OCR más populares es la creación de PDF con capacidad de búsqueda a partir de escaneados. Esta capacidad de búsqueda hace que los PDF sean más accesibles para los usuarios y facilita su indexación en motores de búsqueda como ElasticSearch o incluso Google.
Hacer que un PDF escaneado existente permita realizar búsquedas
Este ejemplo de código tomará un documento PDF, mejorará la calidad de la imagen y devolverá un PDF con capacidad de búsqueda.
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("scan.pdf")
// limpiar páginas retorcidas
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.AddPdf("scan.pdf")
// limpiar páginas retorcidas
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.AddPdf("scan.pdf") Input.Deskew()
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using
Convertir imágenes en un PDF con función de búsqueda
También podemos utilizar el OCR para convertir archivos de imágenes en un documento PDF con capacidad de búsqueda en C# / .NET
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.Add(@"images\page1.png")
Input.Add(@"images\page2.bmp")
Input.Add(@"images\page3.tiff")
// limpiar páginas retorcidas
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
Input.Add(@"images\page1.png")
Input.Add(@"images\page2.bmp")
Input.Add(@"images\page3.tiff")
// limpiar páginas retorcidas
Input.Deskew();
var Result = Ocr.Read(Input);
Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
Input.Add("images\page1.png") Input.Add("images\page2.bmp") Input.Add("images\page3.tiff") Input.Deskew()
Dim Result = Ocr.Read(Input)
Result.SaveAsSearchablePdf("searchable.pdf")
End Using