IRONSOFTWAREHOME

Comment extraire des résultats de lecture en C# ; avec IronOCR

Curtis Chau
Curtis Chau
Updated: 12 mai 2026

La méthode Read d'IronOCR retourne un objet OcrResult contenant le texte extrait plus des métadonnées détaillées, incluant des coordonnées précises, des dimensions, une direction du texte, et une structure hiérarchique (paragraphes, lignes, mots, caractères) pour chaque élément détecté.

Le résultat de l'OCR contient des informations complètes sur les paragraphes, les lignes, les mots et les caractères individuels détectés.

Pour chaque élément, il fournit le contenu textuel, les coordonnées X et Y précises, les dimensions (largeur et hauteur), la direction du texte (de gauche à droite ou de haut en bas), et la localisation dans un objet CropRectangle.

Démarrage rapide : Récupérer le texte de mot à partir du premier mot détecté

Utilisez la méthode Read de IronTesseract pour OCR une image et extraire le texte du premier mot en utilisant la collection Words.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Copiez et exécutez cet extrait de code.

    string wordText = new IronTesseract().Read("file.jpg").Words[0].Text;
    C#
  3. 3Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronOCR dans votre projet dès aujourd'hui avec un essai gratuit
    arrow pointer

Quelles données puis-je extraire des résultats de l'OCR ?

La valeur du résultat contient non seulement le texte extrait, mais aussi des informations sur les pages, les paragraphes, les lignes, les mots, les caractères et les codes-barres découverts dans les documents PDF et les documents image par IronOCR. Vous pouvez accéder à cette information depuis l'objet retourné OcrResult en utilisant la méthode Read.

Le système de résultats complet d'IronOcr s'appuie sur le puissant moteur Tesseract 5, offrant aux développeurs des capacités d'extraction de données structurées allant au-delà de la simple reconnaissance de texte. Que vous traitiez des documents scannés, des photos, ou des captures d'écran, la classe OcrResult vous donne un contrôle granulé sur les données extraites.

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

// Output information to console
Console.WriteLine($"Text: {paragraphs[0].Text}");
Console.WriteLine($"X: {paragraphs[0].X}");
Console.WriteLine($"Y: {paragraphs[0].Y}");
Console.WriteLine($"Width: {paragraphs[0].Width}");
Console.WriteLine($"Height: {paragraphs[0].Height}");
Console.WriteLine($"Text direction: {paragraphs[0].TextDirection}");
Débogueur Visual Studio montrant les résultats de l'extraction OCR avec les coordonnées et le texte d'un document commercial japonais

Comment accéder au contenu textuel des résultats de l'OCR?

L'objet OcrResult présente le texte extrait de manière simple et intuitive, permettant aux développeurs de l'utiliser directement ou de l'intégrer à d'autres composants d'application. La structure hiérarchique reflète l'organisation naturelle du texte du document, ce qui facilite le travail avec le contenu à différents niveaux de granularité.

Pour les applications nécessitant une prise en charge de plusieurs langues, IronOCR gère de manière transparente les documents multilingues, en conservant le même format de résultat structuré dans les 125 langues prises en charge.

L'exemple de code suivant imprime du texte dans une boucle pour vérifier les résultats.

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sampleText.png");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

// Loop through each paragraph in the array
Console.WriteLine("--- All Detected Paragraphs ---");
foreach (Paragraph paragraph in paragraphs)
{
    // Print the text of the current paragraph
    Console.WriteLine(paragraph.Text);

    // Add a blank line for better separation (optional)
    Console.WriteLine();
}

Sortie

Terminal affichant les résultats de la détection de paragraphes OCR avec du texte extrait sur Masayoshi Son et Yasumitsu Shigeta

La sortie de la console montre qu'IronOCR extrait le texte du paragraphe ligne par ligne avec précision. Le moteur détecte automatiquement les limites des paragraphes, ce qui le rend idéal pour le traitement de documents complexes comportant plusieurs blocs de texte.

Comment obtenir les coordonnées de l'emplacement du texte détecté?

En plus du texte extrait, OcrResult fournit des données de localisation détaillées. Ces informations spatiales sont cruciales pour les applications qui doivent maintenir la fidélité de la mise en page ou effectuer une extraction de texte ciblée à partir de régions spécifiques du document. Le système de coordonnées utilise des mesures standard en pixels à partir du coin supérieur gauche de la page.

Pour améliorer la précision des opérations basées sur les coordonnées, envisagez d'utiliser OCR region targeting pour vous concentrer sur des zones spécifiques, ou exploitez Computer Vision capabilities pour identifier automatiquement les zones de texte.

Le code suivant montre comment itérer sur chaque paragraphe et imprimer ses coordonnées (X et Y) sur la console.

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Add image
using var imageInput = new OcrImageInput("sampleText.png");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Retrieve list of detected paragraphs
Paragraph[] paragraphs = ocrResult.Paragraphs;

Console.WriteLine("--- All Detected Coordinates of Paragraphs ---");

// Use a 'for' loop to get an index for each paragraph
for (int i = 0; i < paragraphs.Length; i++)
{
    // Get the current paragraph
    Paragraph paragraph = paragraphs[i];

    // Print the paragraph number, text, and its location
    Console.WriteLine($"X: {paragraph.X}"); // X-coordinate (left edge)
    Console.WriteLine($"Y: {paragraph.Y}"); // Y-coordinate (top edge)

    // Add a blank line for better separation
    Console.WriteLine();
}

Sortie

Sortie du terminal montrant les coordonnées des paragraphes détectés par l'OCR avec les valeurs X,Y : (29,30), (28,74), et (27,362)

Le résultat montre trois ensembles de coordonnées correspondant à trois paragraphes. Ces coordonnées peuvent être utilisées pour dessiner des boîtes de délimitation, extraire des régions spécifiques ou maintenir des relations spatiales entre des éléments de texte.

Quels sont les autres attributs disponibles dans les résultats de l'OCR ?

Outre le texte et les coordonnées du texte, IronOCR fournit des informations supplémentaires. Pour chaque élément de texte (paragraphes, lignes, mots et caractères individuels), les informations suivantes sont disponibles :

  • Texte : le texte proprement dit sous forme de chaîne de caractères.
  • X : Position en pixels à partir du bord gauche de la page.
  • Y : la position à partir du bord supérieur de la page, en pixels.
  • Largeur : la largeur en pixels.
  • Hauteur : la hauteur en pixels.
  • Sens de lecture : le sens dans lequel le texte a été lu (de gauche à droite ou de haut en bas).
  • Emplacement : un rectangle indiquant l'emplacement de ce texte sur la page en pixels.

Ces attributs sont particulièrement utiles lors de la mise en œuvre :

  • Systèmes de surlignage de texte et d'annotation
  • Détection automatisée des champs de formulaire
  • Préservation de la mise en page lors de la conversion de documents
  • Analyse de textes spatiaux pour l'extraction de données

Pour le débogage et la visualisation, utilisez la fonction highlight texts pour vérifier visuellement l'exactitude des régions détectées.

Comment les paragraphes, les lignes, les mots et les caractères se comparent-ils?

La structure hiérarchique du texte d'IronOCR permet aux développeurs de travailler au niveau de détail approprié pour leur cas d'utilisation spécifique. Comprendre les différences entre ces éléments permet de choisir la bonne granularité pour votre application.

Vous trouverez ci-dessous la comparaison des paragraphes, lignes, mots et caractères détectés.

Profils biographiques des entrepreneurs technologiques japonais Masayoshi Son et Yasumitsu Shigeta
Document surligné en rouge présentant les profils des dirigeants japonais de l'industrie technologique Masayoshi Son et Yasumitsu Shigeta
Mise en évidence du texte par des encadrés rouges superposés aux mots sélectionnés dans un paragraphe sur les investissements technologiques
Détection de texte au niveau des caractères montrant les limites des caractères individuels dans les résultats de l'OCR

Chaque niveau de granularité répond à des objectifs différents :

  • Paragraphees : idéal pour l'analyse de la structure des documents et l'extraction de textes en vrac
  • Lignes : Utile pour maintenir l'ordre de lecture et traiter les données tabulaires
  • Mots : Idéal pour les fonctions de recherche et d'analyse de texte
  • Personnages : Parfaits pour les applications de vérification orthographique et d'édition de textes précis

L'IronOCR peut-il lire les BarCodes et les QR Codes?

Oui, IronOCR peut lire les codes-barres et les codes QR. Bien que la fonctionnalité ne soit pas aussi robuste que IronBarcode, IronOCR prend en charge les types de codes-barres courants. Pour activer la détection de codes-barres, définissez la propriété Configuration.ReadBarCodes sur true. Cette fonctionnalité intégrée fait d'IronOCR un excellent choix pour le traitement de documents contenant à la fois du texte et des codes-barres, tels que des factures, des étiquettes d'expédition ou des catalogues de produits.

De plus, des informations précieuses peuvent être extraites des codes-barres détectés, y compris le format, la valeur, les coordonnées (x, y), la hauteur, la largeur, et la localisation en tant qu'objet IronSoftware.Drawing.Rectangle. Cette classe Rectangle d' IronDrawing permet un positionnement précis sur le document.

Pour des scénarios de lecture de codes-barres plus avancés, consultez les exemples de lecture de codes-barres complets dans notre documentation.

using IronOcr;
using System;
using static IronOcr.OcrResult;

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

// Enable barcodes detection
ocrTesseract.Configuration.ReadBarCodes = true;

// Add image
using OcrInput ocrInput = new OcrInput();
ocrInput.LoadPdf("sample.pdf");

// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(ocrInput);

// Output information to console
foreach(var barcode in ocrResult.Barcodes)
{
    Console.WriteLine("Format = " + barcode.Format);
    Console.WriteLine("Value = " + barcode.Value);
    Console.WriteLine("X = " + barcode.X);
    Console.WriteLine("Y = " + barcode.Y);
}
Console.WriteLine(ocrResult.Text);

À quoi ressemble la sortie de la détection de BarCode?

La fonction de détection des codes-barres dans IronOcr s'intègre de manière transparente à l'extraction de texte, fournissant des résultats unifiés incluant à la fois le contenu textuel et les données des codes-barres. Cette double capacité est précieuse pour les flux de traitement automatisé de documents où les deux types d'informations doivent être extraits et corrélés.

Console de débogage montrant les résultats de la détection des codes-barres QR et EAN8 avec les formats, les valeurs et les coordonnées

La sortie démontre la capacité d'IronOCR à détecter simultanément plusieurs types de codes-barres, en fournissant l'identification du format (tel que QRCode ou EAN8), les valeurs décodées et des informations précises sur les coordonnées pour chaque code détecté. Ces données complètes permettent aux développeurs de créer des applications de traitement de documents sophistiquées qui gèrent efficacement des types de contenu mixtes.

Questions Fréquemment Posées

Quelles sont les informations contenues dans l'objet OcrResult ?

L'objet OcrResult d'IronOcr contient le texte extrait ainsi que des métadonnées détaillées, notamment des coordonnées X/Y précises, des dimensions (largeur et hauteur), la direction du texte (de gauche à droite ou de haut en bas) et la structure hiérarchique organisée en paragraphes, lignes, mots et caractères individuels pour chaque élément détecté.

Comment puis-je extraire rapidement le premier mot d'un résultat d'OCR ?

Vous pouvez extraire le texte du premier mot en utilisant la méthode Read d'IronOCR et en accédant à la collection Words : `string wordText = new IronTesseract().Read("file.jpg").Words[0].Text;`. Cela permet d'accéder instantanément à des éléments de mots individuels à partir des résultats de l'OCR.

Quels types de données de coordonnées sont disponibles dans les résultats de l'OCR ?

IronOcr fournit des coordonnées X et Y précises pour chaque élément détecté (paragraphes, lignes, mots et caractères), ainsi que les dimensions de largeur et de hauteur. Ces coordonnées sont accessibles par le biais de l'objet CropRectangle, ce qui permet un suivi précis de l'emplacement des éléments de texte.

Puis-je extraire des métadonnées au-delà du simple contenu textuel ?

Oui, IronOcr extrait des métadonnées complètes, notamment les pages, les paragraphes, les lignes, les mots, les caractères et même les codes-barres découverts dans les documents PDF et les images. L'objet OcrResult donne accès à la direction du texte, à la structure hiérarchique et aux informations spatiales pour chaque élément.

Quels types de documents peuvent être traités pour obtenir des résultats d'OCR ?

IronOCR peut traiter différents types de documents, notamment des documents numérisés, des photos, des captures d'écran, des PDF et des fichiers image. La méthode Read fonctionne de manière cohérente dans tous ces formats, renvoyant le même objet OcrResult structuré avec des métadonnées complètes.

Comment le texte extrait est-il organisé dans les résultats ?

IronOCR organise le texte extrait dans une structure hiérarchique qui reflète l'organisation naturelle des documents. L'objet OcrResult présente le contenu à différents niveaux de granularité - des pages entières aux caractères individuels - ce qui facilite le travail avec le texte au niveau approprié pour votre application.

Can IronOCR read barcodes and QR codes?

Yes, IronOCR can read common barcode types, including QR codes, by enabling barcode detection in the configuration. This integration allows for comprehensive processing of documents containing both text and barcodes.

How does IronOCR help with hierarchical text analysis?

IronOCR's hierarchical text structure allows developers to work at different granularity levels, such as paragraphs, lines, words, and characters, making it suitable for various applications like document structure analysis and text search functionality.

What advanced features does IronOCR offer for coordinate-based operations?

IronOCR offers OCR region targeting for focused text extraction and Computer Vision capabilities to automatically identify text regions, enhancing precision in coordinate-based applications.

What does the barcode detection output look like in IronOCR?

The barcode detection output in IronOCR includes format identification, decoded values, and precise coordinates, seamlessly integrated with text extraction for efficient processing of mixed content documents.

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 et créer des manuels bien structurés et visuellement attrayants.

...
Lire la suite

Prêt à commencer?

Nuget Downloads 6,236,385Version :2026.9vient de sortir

Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et cherchez "IronOCR"
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez le programme d'installation Windows ici.

  1. Téléchargez et décompressez IronOCR à un emplacement tel que ~/Libs dans votre répertoire du projet
  2. Dans l'Explorateur de Solutions de Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, "IronOCR.dll"

Licences à partir de $999

Vous avez une question ? Contactez notre équipe de développement.

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise