Cómo leer PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

por Chaknith Bin

PDF son las siglas de "Portable Document Format". Es un formato de archivo desarrollado por Adobe que conserva las fuentes, imágenes, gráficos y diseño de cualquier documento fuente, independientemente de la aplicación y plataforma utilizadas para crearlo. Los archivos PDF suelen utilizarse para compartir y visualizar documentos en un formato coherente, independientemente del software o hardware que se utilice para abrirlo. IronOcr maneja varias versiones de documentos PDF con facilidad.


Biblioteca NuGet C# para OCR

Instalar con NuGet

Install-Package IronOcr
o
Java PDF JAR

Descargar DLL

Descargar DLL

Instalar manualmente en su proyecto

Leer ejemplo en PDF

Comience por instanciar la clase IronTesseract para realizar el OCR. A continuación, utilice una sentencia 'using' para crear un objeto OcrPdfInput, pasándole la ruta del archivo PDF. Por último, realice el OCR utilizando el método Read.

:path=/static-assets/ocr/content-code-examples/how-to/input-pdfs-read-pdf.cs
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add PDF
using var pdfInput = new OcrPdfInput("Potter.pdf");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(pdfInput);
Imports IronOcr

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add PDF
Private pdfInput = New OcrPdfInput("Potter.pdf")
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(pdfInput)
VB   C#
Leer archivo PDF

En la mayoría de los casos, no es necesario especificar la propiedad DPI. Sin embargo, proporcionar un número alto de PPP en la construcción de OcrPdfInput puede mejorar la precisión de la lectura.

Leer páginas PDF Ejemplo

Al leer páginas específicas de un documento PDF, el usuario puede especificar el número de índice de la página para la importación. Para ello, pase la lista de índices de página al parámetro PageIndices cuando construya el OcrPdfInput. Tenga en cuenta que los índices de página utilizan una numeración basada en ceros.

:path=/static-assets/ocr/content-code-examples/how-to/input-pdfs-read-pdf-pages.cs
using IronOcr;
using System.Collections.Generic;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Create page indices list
List<int> pageIndices = new List<int>() { 0, 2 };

// Add PDF
using var pdfInput = new OcrPdfInput("Potter.pdf", PageIndices: pageIndices);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(pdfInput);
Imports IronOcr
Imports System.Collections.Generic

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Create page indices list
Private pageIndices As New List(Of Integer)() From {0, 2}

' Add PDF
Private pdfInput = New OcrPdfInput("Potter.pdf", PageIndices:= pageIndices)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(pdfInput)
VB   C#

Especificar región de exploración

Al acotar el área de lectura, puede aumentar considerablemente la eficacia de la lectura. Para ello, puede especificar la región concreta del PDF importado que debe leerse. En el siguiente ejemplo de código, he ordenado a IronOcr que se centre únicamente en extraer el número de capítulo y el título.

:path=/static-assets/ocr/content-code-examples/how-to/input-pdfs-read-specific-region.cs
using IronOcr;
using IronSoftware.Drawing;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Specify crop regions
Rectangle[] scanRegions = { new Rectangle(550, 100, 600, 300) };

// Add PDF
using (var pdfInput = new OcrPdfInput("Potter.pdf", ContentAreas: scanRegions))
{
    // Perform OCR
    OcrResult ocrResult = ocrTesseract.Read(pdfInput);

    // Output the result to console
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports IronSoftware.Drawing
Imports System

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Specify crop regions
Private scanRegions() As Rectangle = { New Rectangle(550, 100, 600, 300) }

' Add PDF
Using pdfInput = New OcrPdfInput("Potter.pdf", ContentAreas:= scanRegions)
	' Perform OCR
	Dim ocrResult As OcrResult = ocrTesseract.Read(pdfInput)

	' Output the result to console
	Console.WriteLine(ocrResult.Text)
End Using
VB   C#

Resultado OCR

Leer región específica

Chaknith Bin

Ingeniero de software

Chaknith es el Sherlock Holmes de los desarrolladores. La primera vez que se le ocurrió que podría tener futuro en la ingeniería de software fue cuando hacía retos de código por diversión. Su trabajo se centra en IronXL e IronBarcode, pero se enorgullece de ayudar a los clientes con todos los productos. Chaknith aprovecha sus conocimientos, adquiridos hablando directamente con los clientes, para ayudar a mejorar los propios productos. Sus comentarios anecdóticos van más allá de los tickets de Jira y apoyan el desarrollo de productos, la documentación y el marketing, para mejorar la experiencia general del cliente.Cuando no está en la oficina, se le puede encontrar aprendiendo sobre aprendizaje automático, codificación y senderismo.