IRONSOFTWAREHOME

Get Started with OCR in C# and VB.NET

Curtis Chau
Curtis Chau
Updated: 22 avril 2026

IronOCR est une bibliothèque logicielle C# permettant aux développeurs de logiciels de la plateforme .NET de reconnaître et de lire du texte à partir d'images et de documents PDF. Il s'agit d'une bibliothèque OCR .NET pure utilisant le moteur Tesseract le plus avancé connu à ce jour.

Installation

Installer avec le gestionnaire de packages NuGet

Installez IronOCR dans Visual Studio ou à la ligne de commande avec le gestionnaire de packages NuGet. Dans Visual Studio, accédez à la console avec :

  • Outils ->
  • Gestionnaire de packages NuGet ->
  • Console du Package Manager

PM > Install-Package IronOcr

Et consultez IronOCR sur NuGet pour plus d'informations sur les mises à jour de version et l'installation.

D'autres packages NuGet IronOCR sont disponibles pour différentes plateformes :

IronOcr.Extensions.AdvancedScan pour Linux et macOS

Ce package est destiné aux utilisateurs de Linux et Mac qui souhaitent également les fonctionnalités avancées pour IronOCR.

Dépannage

Avec la nouvelle mise à jour de ce package, IronOCR combine les dépendances OpenCV au sein du package afin de le simplifier, si les développeurs important actuellement les dépendances OpenCV obtiennent l'erreur suivante.

The type of namespace name `OpenCvSharp` could not be found(are you missing a using directive or an assembly reference)
Text

Vous pouvez supprimer sans risque les espaces de noms OpenCV, et le problème sera résolu.

Téléchargez le fichier .ZIP d'IronOCR

Vous pouvez également choisir de télécharger IronOCR via un fichier .ZIP. Cliquez ici pour télécharger directement la DLL . Une fois le fichier .zip téléchargé :

Instructions d'installation de .NET Framework 4.0+ :

  • Incluez le fichier IronOcr.dll du dossier net40 dans votre projet.

  • Et ensuite, ajouter des références d'assemblage à :

    • System.Configuration
    • System.Drawing
    • Système.Web

Instructions for .NET Standard, .NET Core 2.0+ et .NET 5

  • Incluez le fichier IronOcr.dll du dossier netstandard2.0 dans votre projet.

  • Ajoutez ensuite une référence de package NuGet à :

    • System.Drawing.Common 4.7 ou supérieur

Télécharger le programme d'installation d'IronOCR (Windows uniquement)

Une autre option consiste à télécharger notre programme d'installation IronOCR qui installera toutes les ressources nécessaires au fonctionnement immédiat d'IronOCR. Veuillez noter que cette option est uniquement disponible pour les systèmes Windows. Pour télécharger le programme d'installation, veuillez cliquer ici . Une fois le fichier .zip téléchargé :

Instructions d'installation de .NET Framework 4.0+ :

  • Incluez le fichier IronOcr.dll du dossier net40 dans votre projet.

  • Et ensuite, ajouter des références d'assemblage à :

    • System.Configuration
    • System.Drawing
    • Système.Web

Instructions for .NET Standard, .NET Core 2.0+ et .NET 5

  • Incluez le fichier IronOcr.dll du dossier netstandard2.0 dans votre projet.

  • Ajoutez ensuite une référence de package NuGet à :

    • System.Drawing.Common 4.7 ou supérieur

Pourquoi choisir IronOCR ?

IronOCR est une bibliothèque logicielle .NET facile à installer, complète et bien documentée.

Choisissez IronOCR pour obtenir une précision OCR supérieure à 99,8 % sans utiliser de services Web externes, sans frais récurrents ni envoyer de documents confidentiels sur Internet.

Pourquoi les développeurs C# choisissent-ils IronOCR plutôt que Vanilla Tesseract :

  • Installer sous forme de DLL unique ou de NuGet
  • Comprend les moteurs Tesseract 5, 4 et 3 dès la sortie de la boîte.
  • Une précision de 99,8 % surpasse nettement celle du Tesseract classique.
  • Vitesse fulgurante et multithreading
  • Compatible avec les applications MVC, Web, de bureau, console et serveur
  • Aucun fichier exécutable ni code C++ à utiliser
  • Prise en charge complète de la reconnaissance optique de caractères (OCR) pour les fichiers PDF
  • Effectuer une reconnaissance optique de caractères (OCR) sur presque tous les fichiers image ou PDF.
  • Prise en charge complète de .NET Core, Standard et Framework
  • Déploiement sur Windows, Mac, Linux, Azure, Docker, Lambda et AWS
  • Lire les codes-barres et les codes QR
  • Exporter les résultats de l'OCR au format XHTML
  • Exporter les données OCR vers des documents PDF consultables
  • Prise en charge du multithreading
  • 125 langues internationales, toutes gérées via NuGet ou des fichiers OcrData
  • Extraire les images, les coordonnées, les statistiques et les polices de caractères. Pas seulement du texte.
  • Peut être utilisé pour redistribuer Tesseract OCR au sein d'applications commerciales et propriétaires.

IronOCR excelle lorsqu'il s'agit de traiter des images réelles et des documents imparfaits tels que des photographies ou des numérisations basse résolution pouvant présenter du bruit numérique ou des imperfections.

D'autres bibliothèques OCR gratuites pour la plateforme .NET, telles que d'autres API Tesseract .NET et services Web, ne sont pas aussi performantes dans ces cas d'utilisation concrets.

OCR with Tesseract 5 - Start Coding in C#

L'exemple de code ci-dessous montre à quel point il est facile de lire du texte à partir d'une image en utilisant C# ou VB .NET.

Ligne courte

string Text = new IronTesseract().Read(@"img\Screenshot.png").Text;

Bonjour le monde configurable

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();

// Add multiple images
input.LoadImage("images/sample.jpeg");

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

C# PDF OCR

La même approche peut être utilisée pour extraire du texte de n'importe quel document PDF.

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();

// We can also select specific PDF page numbers to OCR
input.LoadPdf("example.pdf", Password: "password");

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

// 1 page for every page of the PDF
Console.WriteLine($"{result.Pages.Length} Pages");

Exporter les résultats de l'OCR au format PDF consultable

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("multi-frame.tiff", pageindices);
OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

Codes-barres et QR

L'une des caractéristiques uniques d'IronOCR est sa capacité à lire les codes-barres et les codes QR des documents tout en effectuant une analyse de texte. Les instances de la classe OcrResult.OcrBarcode donnent au développeur des informations détaillées sur chaque code-barres scanné.

using IronOcr;

IronTesseract ocr = new IronTesseract();
ocr.Configuration.ReadBarCodes = true;

using OcrInput input = new OcrInput();
input.LoadImage("img/Barcode.png");

OcrResult Result = ocr.Read(input);
foreach (var Barcode in Result.Barcodes)
{
    // type and location properties also exposed
    Console.WriteLine(Barcode.Value);
}

OCR sur des zones spécifiques des images

Toutes les méthodes de numérisation et de lecture d'IronOCR offrent la possibilité de spécifier précisément la partie d'une ou plusieurs pages dont nous souhaitons lire le texte. C'est très utile lorsqu'on examine des formulaires standardisés ; cela permet de gagner beaucoup de temps et d'améliorer l'efficacité.

Pour utiliser les régions de recadrage, nous devrons ajouter une référence système à System.Drawing afin que nous puissions utiliser l'objet System.Drawing.Rectangle.

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();

// Dimensions are in pixel
var contentArea = new System.Drawing.Rectangle() { X = 215, Y = 1250, Height = 280, Width = 1335 };

input.LoadImage("document.png", contentArea);

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

OCR pour les numérisations de faible qualité

La classe OcrInput d'IronOCR peut réparer les scans que Tesseract normal ne peut pas lire.

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames(@"img\Potter.tiff", pageindices);

// fixes digital noise and poor scanning
input.DeNoise();

// fixes rotation and perspective
input.Deskew();

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

Exporter les résultats de la reconnaissance optique de caractères (OCR) au format PDF consultable

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.Title = "Quarterly Report";
input.LoadImage("image1.jpeg");
input.LoadImage("image2.png");
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("image3.gif", pageindices);

OcrResult result = ocr.Read(input);
result.SaveAsSearchablePdf("searchable.pdf");

Conversion de TIFF en PDF consultable

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("example.tiff", pageindices);
ocr.Read(input).SaveAsSearchablePdf("searchable.pdf");

Exporter les résultats de la reconnaissance optique de caractères (OCR) au format HTML

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.Title = "Html Title";
input.LoadImage("image1.jpeg");

OcrResult Result = ocr.Read(input);
Result.SaveAsHocrFile("results.html");

Filtres d'amélioration d'image OCR

IronOCR offre des filtres uniques pour les objets OcrInput afin d'améliorer les performances de l'OCR.

Exemple de code d'amélioration d'image

using IronOcr;

IronTesseract ocr = new IronTesseract();
using OcrInput input = new OcrInput();
input.LoadImage("LowQuality.jpeg");

// fixes digital noise and poor scanning
input.DeNoise();

// fixes rotation and perspective
input.Deskew();

OcrResult result = ocr.Read(input);
Console.WriteLine(result.Text);

Liste des filtres d'images OCR

IronOCR intègre des filtres d'entrée permettant d'améliorer les performances de la reconnaissance optique de caractères (OCR) :

  • OcrInput.Rotate(double degrees) - Fait pivoter les images d'un certain nombre de degrés dans le sens des aiguilles d'une montre. Pour une rotation dans le sens inverse, utilisez des nombres négatifs.
  • OcrInput.Binarize() - Ce filtre convertit chaque pixel en noir ou blanc sans milieu, ce qui pourrait améliorer les performances de l'OCR dans des images à très faible contraste.
  • OcrInput.ToGrayScale() - Convertit chaque pixel en une nuance de gris. Cela n'améliorera peut-être pas la précision, mais pourrait améliorer la vitesse.
  • OcrInput.Contrast() - Augmente automatiquement le contraste, améliorant souvent la vitesse et la précision dans les scans à faible contraste.
  • OcrInput.DeNoise() - Élimine le bruit numérique, recommandé uniquement lorsque le bruit est attendu.
  • OcrInput.Invert() - Inverse chaque couleur (le blanc devient noir et inversement).
  • OcrInput.Dilate() - Avance la morphologie, ajoute des pixels aux contours des objets, à l'opposé de l'Érosion.
  • OcrInput.Erode() - Avance la morphologie, retire des pixels des contours des objets, à l'opposé de la Dilatation.
  • OcrInput.Deskew() - Fait pivoter une image pour l'orienter correctement. Utile car la tolérance à l'asymétrie de Tesseract est limitée.
  • OcrInput.EnhanceResolution - Améliore la résolution des images de basse qualité. Ce paramètre est généralement utilisé pour gérer automatiquement les entrées à faible résolution (DPI).
  • EnhanceResolution détecte les images à basse résolution (en dessous de 275 dpi), les augmente, et affine le texte pour de meilleurs résultats OCR. Bien que chronophage, cette méthode réduit souvent la durée globale des opérations de reconnaissance optique de caractères (OCR).
  • Language - Prend en charge la sélection parmi 22 packs de langues internationaux.
  • Strategy - Permet de choisir entre des stratégies rapides et moins précises ou avancées (en utilisant l'IA pour la précision) basées sur la relation statistique des mots.
  • ColorSpace - Choisissez d'OCR en niveaux de gris ou en couleur ; Le niveau de gris est généralement optimal, bien que la couleur puisse être préférable dans certains cas de contraste.
  • DetectWhiteTextOnDarkBackgrounds - S'ajuste pour les images négatives, détectant et lisant automatiquement le texte blanc sur les fonds sombres.
  • InputImageType - Guide la bibliothèque OCR en spécifiant si elle travaille sur un document entier ou un extrait.
  • RotateAndStraighten - Permet à IronOCR de gérer correctement les documents qui sont tournés ou touchés par des distorsions de perspective.
  • ReadBarcodes - Lit automatiquement les codes-barres et les codes QR de manière concurrente avec le scan de texte sans ajout de temps significatif.
  • ColorDepth - Détermine le nombre de bits par pixel pour la profondeur de couleur dans le processus OCR. Une plus grande profondeur peut améliorer la qualité, mais aussi le temps de traitement.

125 packs de langues

IronOCR prend en charge 125 langues internationales via des modules linguistiques distribués sous forme de DLL, disponibles en téléchargement sur ce site web ou via le gestionnaire de packages NuGet .

Les langues parlées incluent notamment l'allemand, le français, l'anglais, le chinois et le japonais. Des packs de langues spécialisés existent pour MRZ, vérifications MICR, données financières, plaques d'immatriculation, etc. De plus, des fichiers ".traineddata" Tesseract personnalisés peuvent être utilisés.

Exemple de langue

using IronOcr;

// PM> Install IronOcr.Languages.Arabic
IronTesseract ocr = new IronTesseract();
ocr.Language = OcrLanguage.Arabic;

using OcrInput input = new OcrInput();

var pageindices = new int[] { 1, 2 };
input.LoadImageFrames("img/arabic.gif", pageindices);
// Add image filters if needed
// In this case, even thought input is very low quality
// IronTesseract can read what conventional Tesseract cannot.
OcrResult result = ocr.Read(input);
// Console can't print Arabic on Windows easily.
// Let's save to disk instead.
result.SaveAsTextFile("arabic.txt");

Exemple multilingue

Il est également possible d'effectuer une reconnaissance optique de caractères (OCR) en utilisant plusieurs langues simultanément. Cela peut améliorer l'OCR des métadonnées anglaises et des URL dans les documents Unicode.

using IronOcr;

// PM> Install IronOcr.Languages.ChineseSimplified
IronTesseract ocr = new IronTesseract();
ocr.Language = OcrLanguage.ChineseSimplified;

// We can add any number of languages
ocr.AddSecondaryLanguage(OcrLanguage.English);

using OcrInput input = new OcrInput();
input.LoadPdf("multi-language.pdf");
OcrResult result = ocr.Read(input);
result.SaveAsTextFile("results.txt");

Résultats détaillés de la reconnaissance optique de caractères (OCR) : Objets

IronOCR renvoie un objet de résultat OCR pour chaque opération. En général, les développeurs accèdent à la propriété Text pour obtenir le texte scanné. Cependant, l'objet de résultats contient des informations beaucoup plus détaillées.

using IronOcr;

IronTesseract ocr = new IronTesseract();

// Must be set to true to read barcode
ocr.Configuration.ReadBarCodes = true;
using OcrInput input = new OcrInput();
var pageindices = new int[] { 1, 2 };
input.LoadImageFrames(@"img\sample.tiff", pageindices);

OcrResult result = ocr.Read(input);
var pages = result.Pages;
var words = pages[0].Words;
var barcodes = result.Barcodes;
// Explore here to find a massive, detailed API:
// - Pages, Blocks, Paraphaphs, Lines, Words, Chars
// - Image Export, Fonts Coordinates, Statistical Data, Tables

Performance

IronOCR fonctionne immédiatement, sans nécessiter de réglage des performances ni de modification de l'image.

Veuillez visiter ce lien pour explorer l'Iron Suite.

Apprendre encore plus

Pour en savoir plus sur la reconnaissance optique de caractères (OCR) en C#, VB, F# ou tout autre langage .NET, veuillez consulter nos tutoriels communautaires , qui fournissent des exemples concrets d'utilisation d'IronOCR et illustrent les subtilités de l'optimisation de la bibliothèque.

Une documentation complète de l'API est également disponible pour les développeurs .NET .

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