IRONSOFTWAREHOME

Comment corriger l'orientation d'un BarCode en C#

Curtis Chau
Curtis Chau
Updated: 4 juin 2026

IronBarcode corrige automatiquement l'orientation du code-barres en utilisant sa fonctionnalité intégrée AutoRotate, qui détecte et lit les codes-barres sous n'importe quel angle sans rotation manuelle de l'image, garantissant une lecture précise des codes-barres même à partir d'images inclinées ou tournées.

L'orientation d'un code-barres fait référence à l'angle auquel un code-barres est imprimé ou affiché sur un produit ou un document. Elle peut être ajustée à divers angles pour répondre à différentes exigences de mise en page et de conception. L'orientation la plus courante est horizontale, où le code-barres est aligné de gauche à droite, ce qui est le format standard le plus largement utilisé. Tout degré d'orientation non nul pose un défi pour les bibliothèques pour détecter et récupérer la valeur. IronBarcode offre une correction automatique de l'orientation pour détecter toute orientation non nulle pour les codes-barres et les codes QR.

Démarrage rapide : Correction automatique de la rotation de l'image en une ligne

Voici comment vous pouvez facilement corriger l'orientation : une seule ligne de code utilisant l'option AutoRotate d'IronBarcode—activée par défaut—pour lire les codes-barres avec précision même lorsque les images sont tournées.

  1. 1Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode

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

    var result = IronBarCode.BarcodeReader.Read("rotatedImage.png", new IronBarCode.BarcodeReaderOptions { AutoRotate = true });
    C#
  3. 3Déployez pour tester sur votre environnement de production.

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

Comment réparer l'orientation des BarCodes dans mon application?

Pour appliquer la correction automatique de l'orientation, définissez la propriété AutoRotate dans BarcodeReaderOptions sur true. Cette propriété est définie sur true par défaut, donc vous ne devriez rien avoir à faire. La lecture de toute image de code-barres orientée non nulle devrait fonctionner immédiatement.

La fonctionnalité AutoRotate est particulièrement utile lors du travail avec différents formats de codes-barres, y compris les QR codes, Datamatrix et les codes-barres linéaires traditionnels. Qu'il s'agisse de lire des codes-barres à partir d'images ou de numériser à partir de documents PDF, la correction de l'orientation garantit des résultats fiables.

Utilisons l'image ci-dessous comme notre échantillon. Téléchargez les images échantillons suivants rotation de 20° et rotation de 45°.

Code-barres pivoté de 20 degrés dans le sens des aiguilles d'une montre montrant des bandes verticales inclinées pour tester l'orientation
Barcode rotated 45 degrees showing diagonal orientation requiring correction

Quel code dois-je utiliser pour mettre en œuvre AutoRotate?

using IronBarCode;
using System;

BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
    // Turn on auto rotation in ML detection
    AutoRotate = true,
};

var results = BarcodeReader.Read("rotate20.png", myOptionsExample);

// Print out the value
Console.WriteLine(results[0].Value);

La fonctionnalité AutoRotate exploite des algorithmes avancés d'apprentissage automatique pour détecter automatiquement l'orientation du code-barres. Cela s'avère particulièrement utile lorsqu'il s'agit de multiples codes-barres dans une seule image ou lorsqu'il s'agit de traiter des lots d'images avec des orientations variables.

Travailler avec différents angles de rotation

La correction d'orientation d'IronBarcode gère divers angles de rotation de manière transparente. Voici un exemple qui démontre la lecture de codes-barres à différents angles de rotation :

using IronBarCode;
using System;
using System.Collections.Generic;

// Process multiple rotated images
var rotatedImages = new List<string> { "rotate20.png", "rotate45.png", "rotate90.png" };
var options = new BarcodeReaderOptions
{
    AutoRotate = true,
    // Combine with other reading optimizations
    Speed = ReadingSpeed.Balanced,
    ExpectMultipleBarcodes = false
};

foreach (var imagePath in rotatedImages)
{
    var results = BarcodeReader.Read(imagePath, options);
    if (results.Length > 0)
    {
        Console.WriteLine($"Image: {imagePath} - Barcode Value: {results[0].Value}");
        Console.WriteLine($"Barcode Type: {results[0].BarcodeType}");
        Console.WriteLine($"Barcode Rotation: {results[0].Rotation}");
    }
}
C#

Considérations de performance

Bien que AutoRotate soit activé par défaut, comprendre ses implications sur les performances aide à optimiser votre flux de travail de lecture de codes-barres. La fonctionnalité fonctionne efficacement avec les options de vitesse de lecture d'IronBarcode, ce qui vous permet d'équilibrer la précision et la performance en fonction des besoins de votre application.

Pour les applications nécessitant un traitement à haute vitesse, vous pouvez combiner AutoRotate avec d'autres techniques d'optimisation :

var fastReadOptions = new BarcodeReaderOptions
{
    AutoRotate = true,
    Speed = ReadingSpeed.Faster,
    // Specify expected barcode types to improve performance
    ExpectBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128,
    // Define crop region if barcode location is predictable
    CropArea = new System.Drawing.Rectangle(100, 100, 300, 300)
};

Intégration avec les fonctions de correction d'image

AutoRotate fonctionne parfaitement avec les filtres de correction d'images d'IronBarcode. Lorsque vous avez affaire à des images de mauvaise qualité qui sont également tournées, vous pouvez appliquer plusieurs corrections :

var advancedOptions = new BarcodeReaderOptions
{
    AutoRotate = true,
    // Apply additional image corrections
    ImageFilters = new ImageFilterCollection
    {
        new AdaptiveThresholdFilter(),
        new BrightnessFilter(1.2f),
        new ContrastFilter(1.5f)
    }
};

var results = BarcodeReader.Read("low-quality-rotated-barcode.jpg", advancedOptions);

Bonnes pratiques pour la correction de l'orientation

  1. Comportement par défaut : Étant donné que AutoRotate est activé par défaut, vous n'avez généralement pas besoin de le définir explicitement à moins que vous ne l'ayez désactivé précédemment ou que vous souhaitiez vous assurer qu'il est actif.

  2. Combinaison avec les régions de recadrage : Lorsque vous utilisez des régions de recadrage pour améliorer les performances, assurez-vous que la zone de recadrage est suffisamment grande pour accueillir le code-barres pivoté.

  3. Traitement multi-threadé : AutoRotate est sûr pour les threads et fonctionne bien avec les opérations asynchrones et multi-threadées, ce qui le rend adapté aux applications de traitement de codes-barres à haut volume.

  4. Considérations spécifiques au format : Bien que AutoRotate fonctionne avec tous les formats de codes-barres pris en charge, certains formats, comme le PDF417 et le Datamatrix, peuvent bénéficier d'options spécifiques au format.

Dans de nombreux cas, corriger la rotation peut ne pas être suffisant, et un filtre est requis. Apprenez à utiliser les filtres d'image dans l'article suivant : "Comment utiliser les filtres de correction d'image."

Questions Fréquemment Posées

Comment corriger des images de codes-barres ayant subi une rotation dans mon application C# ?

IronBarcode corrige automatiquement les images de codes-barres ayant subi une rotation à l'aide de sa fonction AutoRotate intégrée. Il suffit de définir AutoRotate sur true dans BarcodeReaderOptions (il est activé par défaut), et la bibliothèque détectera et lira les codes-barres à n'importe quel angle sans rotation manuelle.

Quelles orientations de codes-barres peuvent être corrigées automatiquement ?

La fonction AutoRotate d'IronBarcode peut détecter et corriger toute orientation de degré non nul, y compris les rotations de 20°, 45°, 90°, 180° et 270°. Cette fonction fonctionne avec différents formats de codes-barres, notamment les codes QR, Data Matrix et les codes-barres linéaires traditionnels.

Dois-je écrire un code spécial pour gérer les BarCodes inclinés ?

Aucun code spécial n'est requis. La propriété AutoRotate d'IronBarcode est activée par défaut, de sorte que la correction de l'orientation fonctionne dès le départ. Vous n'avez besoin que d'une ligne de code : var result = IronBarCode.BarcodeReader.Read("rotatedImage.png") ;

La correction de l'orientation peut-elle fonctionner avec des documents PDF ?

Oui, la fonction AutoRotate d'IronBarcode fonctionne de manière transparente lors de la numérisation de codes-barres à partir de documents PDF ainsi que d'images. La correction de l'orientation garantit des résultats fiables quel que soit le format source.

Quelle est la technologie utilisée pour la détection automatique de l'orientation ?

IronBarcode utilise des algorithmes avancés d'apprentissage automatique pour détecter automatiquement l'orientation des codes-barres. Cette approche intelligente garantit une lecture précise des codes-barres, même à partir d'images inclinées ou tournées, sans intervention manuelle.

Is the AutoRotate feature in IronBarcode thread-safe?

Yes, the AutoRotate feature is thread-safe and is compatible with asynchronous and multithreaded operations, making it suitable for high-volume barcode processing applications.

What should I consider when using crop regions with the AutoRotate feature?

When using crop regions with AutoRotate, ensure that the crop area is large enough to accommodate the rotated barcode. This helps improve performance without compromising the accuracy of barcode detection.

Can I improve barcode reading from poor quality images using IronBarcode?

Yes, IronBarcode offers image correction features, such as Adaptive Threshold, Brightness, and Contrast filters, which can be used alongside AutoRotate to improve the reading of poor quality and rotated images.

How does IronBarcode handle different barcode formats with the AutoRotate feature?

IronBarcode's AutoRotate feature supports various barcode formats, including QR codes, Data Matrix, and traditional linear barcodes. For some formats like PDF417, additional format-specific options may enhance readability.

Is there any need to manually activate the AutoRotate feature in IronBarcode?

Typically, there is no need to manually activate the AutoRotate feature as it is enabled by default. You would only need to set it explicitly if it has been previously disabled or if you want to ensure its activation.

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 2,422,100Version :2026.9vient de sortir

Obtenez votre GRATUIT

Clé d'essai de 30 jours instantanément.

bullet_checkedAucune carte de crédit ou création de compte requise
bullet_testTester en production
sans filigranes
bullet_calendarProduit entièrement fonctionnel
pendant 30 jours
bullet_supportSupport technique 24/5
pendant l'essai
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 BarCode
nuget.org/packages/BarCode/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez "IronBarcode"
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

  1. Téléchargez et décompressez IronBarCode à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans Visual Studio Solution Explorer, faites un clic droit sur Références. Sélectionnez Parcourir, "IronBarcode.dll"

Licences à partir de 749 $

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
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
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