Comment lire les PDF en utilisant OCR C#

How to Read PDFs

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

PDF est l'abréviation de "Portable Document Format" (format de document portable) Il s'agit d'un format de fichier développé par Adobe qui préserve les polices, les images, les graphiques et la mise en page de tout document source, quelles que soient l'application et la plateforme utilisées pour le créer. Les fichiers PDF sont généralement utilisés pour partager et visualiser des documents dans un format cohérent, quel que soit le logiciel ou le matériel utilisé pour les ouvrir. IronOcr gère facilement différentes versions de documents PDF.

Démarrage rapide : OCR d'un fichier PDF en quelques secondes

Configurez rapidement l'OCR avec IronOcr en construisant un OcrPdfInput qui pointe vers votre PDF, puis appelez Read - aucune configuration complexe n'est nécessaire. Cet exemple d'une seule ligne montre à quel point il est facile d'extraire du texte d'un PDF à l'aide d'IronOcr.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. Copy and run this code snippet.

    using var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrPdfInput("document.pdf", PdfContents.TextAndImages));
  3. Deploy to test on your live environment

    Start using IronOCR in your project today with a free trial
    arrow pointer


Lire l'exemple PDF

Commencez par instancier la classe IronTesseract pour effectuer l'OCR. Ensuite, utilisez une instruction "using" pour créer un objet OcrPdfInput, en lui transmettant le chemin d'accès au fichier PDF. Enfin, effectuez l'OCR à l'aide de la méthode 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)
$vbLabelText   $csharpLabel
Read PDF file

Dans la plupart des cas, il n'est pas nécessaire de spécifier la propriété DPI. Toutefois, le fait de fournir un nombre élevé de DPI dans la construction de OcrPdfInput peut améliorer la précision de la lecture.

Exemple de lecture de pages PDF

Lors de la lecture de pages spécifiques d'un document PDF, l'utilisateur peut spécifier le numéro d'index de la page à importer. Pour ce faire, passez la liste des index de page au paramètre PageIndices lors de la construction du OcrPdfInput. N'oubliez pas que les index de page utilisent une numérotation à base zéro.

: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)
$vbLabelText   $csharpLabel

Spécifiez la région d'analyse

En réduisant le domaine à lire, vous pouvez améliorer considérablement l'efficacité de la lecture. Pour ce faire, vous pouvez spécifier la région précise du PDF importé qui doit être lue. Dans l'exemple de code ci-dessous, j'ai demandé à IronOcr de se concentrer uniquement sur l'extraction du numéro et du titre du chapitre.

: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
$vbLabelText   $csharpLabel

Résultat de l'OCR

Lire la région spécifique

Questions Fréquemment Posées

Comment puis-je lire un fichier PDF en C# ?

Vous pouvez lire un fichier PDF en C# en utilisant IronOCR. Commencez par instancier la classe IronTesseract, puis utilisez une déclaration 'using' pour créer un objet OcrPdfInput avec le chemin du fichier. Enfin, appliquez la méthode Read pour effectuer l'OCR sur le document.

Quelles étapes sont nécessaires pour effectuer l'OCR sur des pages spécifiques d'un PDF ?

Pour effectuer l'OCR sur des pages spécifiques d'un PDF en utilisant IronOCR, passez une liste d'indices de pages au paramètre PageIndices lors de la construction de OcrPdfInput. Les indices de pages dans IronOCR sont basés sur zéro, donc la première page est indexée à 0.

Comment puis-je améliorer la précision de l'OCR sur les PDF ?

Vous pouvez améliorer la précision de l'OCR sur les PDF dans IronOCR en spécifiant une haute DPI lors de la construction de OcrPdfInput. Bien que généralement non nécessaire, un DPI plus élevé peut améliorer la précision de la lecture.

Est-il possible de sélectionner une région spécifique d'un PDF pour le traitement OCR ?

Oui, avec IronOCR, vous pouvez sélectionner une région spécifique d'un PDF pour le traitement OCR en utilisant la méthode SelectRegion. Cela vous permet de vous concentrer sur l'extraction de contenu à partir d'une zone définie, améliorant ainsi l'efficacité.

Quelle est la signification de la numérotation basée sur zéro dans la lecture des pages PDF ?

Dans IronOCR, la numérotation basée sur zéro est utilisée pour spécifier les indices de pages lors de la lecture des pages PDF. Cela signifie que la première page est indexée à 0, ce qui aide à spécifier précisément quelles pages traiter.

Dois-je gérer les ressources manuellement lors de l'exécution d'un OCR sur des PDF ?

Lorsque vous utilisez IronOCR, il est recommandé d'utiliser une déclaration 'using' lors de l'utilisation des objets OcrInput. Cela garantit que les ressources sont correctement éliminées après la fin du processus OCR.

Comment puis-je commencer à utiliser IronOCR pour la lecture de PDF ?

Pour commencer avec IronOCR pour la lecture de PDF, téléchargez la bibliothèque C# depuis NuGet, préparez votre PDF, construisez un objet OcrPdfInput avec le chemin du fichier et utilisez la méthode Read pour le traitement OCR.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Revu par
Jeff Fritz
Jeffrey T. Fritz
Responsable principal du programme - Équipe de la communauté .NET
Jeff est également responsable principal du programme pour les équipes .NET et Visual Studio. Il est le producteur exécutif de la série de conférences virtuelles .NET Conf et anime 'Fritz and Friends', une diffusion en direct pour développeurs qui est diffusée deux fois par semaine où il parle de technologie et écrit du code avec les téléspectateurs. Jeff écrit des ateliers, des présentations et prévoit du contenu pour les plus grands événements de développement Microsoft, y compris Microsoft Build, Microsoft Ignite, .NET Conf et le sommet Microsoft MVP
Prêt à commencer?
Nuget Téléchargements 5,044,537 | Version : 2025.11 vient de sortir