Aztec Code
Aztec est le code-barres 2D présent sur toutes les cartes d'embarquement des compagnies aériennes, presque toutes les applications de billets de train, et une part croissante des tableaux tarifaires de transport en commun. C'est la seule symbologie 2D spécifiquement optimisée pour être décodée de manière fiable depuis un écran de téléphone à faible contraste derrière une trace de doigt, c'est pourquoi l'IATA l'a choisi pour le standard BCBP (carte d'embarquement codée à barres) en 2005 et ne l'a jamais changé.
Application IATA :BCBP (Carte d'embarquement codée à barres) Résolution 792, définit le format de charge utile Type M1 utilisé par chaque compagnie aérienne.
Créateur : Welch Allyn (maintenant Honeywell), 1995. Libre de droits depuis l'expiration du brevet original.
Qu'est-ce que c'est
Un code matriciel carré avec un motif de repérage en forme de cible distinctif au centre (carrés concentriques), entouré de modules de données disposés en spirale. Contrairement au QR, l'Aztec n'a pas de motifs de position/alignement dans les coins, la cible centrale est le seul repère, ce qui signifie que l'Aztec tolère mieux la rotation, le cadrage décentré et le recadrage non carré que le QR.
Cinq propriétés qui rendent l'Aztec exceptionnellement adapté à la lecture sur écran :
- Aucune zone de calme requise. Le QR nécessite une marge de 4 modules ; l'Aztec décode avec zéro. Utile quand le bord ou le biseau de l'écran du téléphone coupe dans le code.
- La cible tolère la perte de contraste. Écrans LCD de téléphone à faible luminosité, reflets solaires, traces de revêtement oléophobe, l'Aztec survit aux trois là où les trois marqueurs d'angle du QR s'effacent.
- ECC variable de 5% à 95%. Le QR a 4 niveaux (L/M/Q/H) plafonné à 30%. L'Aztec atteint 95% de correction d'erreurs pour les scénarios de dommages extrêmes.
- Compact par rapport à la capacité. Avec 3 067 caractères alphanumériques maximum, l'Aztec stocke davantage dans un espace plus réduit que le PDF417 ou le Data Matrix.
- Pas de verrouillage d'orientation. Le QR nécessite des motifs de recherche pour résoudre l'orientation ; la cible de l'Aztec est symétriquement rotationnelle.
Taille et capacité
| Variante | Dimensions | Capacité alphanumérique max. | Utilisation typique |
|---|---|---|---|
| Compact | 15 × 15 à 27 × 27 modules | ~110 caractères | URLs courtes, attributions de sièges IATA |
| Pleine portée (petit) | 19 × 19 à 45 × 45 | ~400 caractères | Cartes d'embarquement BCBP type M1 |
| Pleine portée (moyen) | 49 × 49 à 95 × 95 | ~1 200 caractères | Billets de transport avec plusieurs segments |
| Pleine portée (max.) | 151 × 151 | ~3 067 caractères | Charges lourdes, rares en pratique |
Niveaux de correction d'erreurs
L'ECC Aztec est spécifié comme un pourcentage des mots de code de données dédiés à la correction Reed-Solomon. Le générateur accepte toute valeur de 5% à 95% ; les valeurs par défaut sont 23% (équivalent au niveau M du QR) pour usage général et 50% pour les cartes d'embarquement / billets de transport.
| Niveau ECC | Utilisation typique | Compromis |
|---|---|---|
| 5% | Expériences / démos uniquement | Échoue sur tout dommage réel. N'expédiez jamais de codes de production à ce niveau. |
| 23% (par défaut) | Aztec URL courte sur affichages numériques | Équivalent au niveau M du QR. Choix standard quand le lecteur et l'environnement sont bons. |
| 50% | IATA BCBP, billets de transport, papier froissé | Survit à un coin plié ou une tache importante. Valeur par défaut implicite de l'IATA. |
| 75%–95% | Environnements à forte abrasion ou pliage fréquent | La capacité de charge chute fortement. Uniquement pour usage spécialisé. |
Format IATA BCBP, l'utilisation canonique de l'Aztec
La carte d'embarquement codée à barres de type M1 de l'Association du transport aérien international est la plus grande application Aztec en volume, des milliards de codes par an. La charge utile est une chaîne ASCII à position fixe avec ces champs principaux :
M1{PASSENGER/NAME}E{BOOKING_REF} {FROM} {TO} {AIRLINE} {FLIGHT} {DAY}{COMPARTMENT}{SEAT}{CHECK_IN_SEQ}{PASSENGER_STATUS}- M1, indicateur de format (toujours M1 pour un segment unique).
- PASSENGER/NAME, nom de famille/prénom, complété d'espaces à 20 caractères.
- E, indicateur de billet électronique.
- BOOKING_REF, PNR de 6 caractères (dossier passager).
- FROM/TO, codes d'aéroport IATA à 3 lettres (DEN, LHR, NRT…).
- AIRLINE, code de transporteur à 3 caractères (UA, BA, JL…).
- DAY, jour julien de l'année (001–366).
- COMPARTMENT, classe de voyage (F/J/Y/…).
Vecteurs de test canoniques
| Cas | Charge utile | Sous-chaîne attendue |
|---|---|---|
| URL courte | https://example.com/board/AB12 | example.com/board/AB12 |
| IATA BCBP minimal | M1DOE/JOHN EABC123 JFKLHRBA 0100 042Y034A0001 100 | M1DOE/JOHN |
| Billet de transport avec métadonnées de segment | M1SMITH/JANE EXYZ789 LAXSFOVA 0250 032Y012C0015 147 | M1SMITH/JANE |
Erreurs courantes
- Les caméras de téléphones grand public ne décodent pas l'Aztec. La caméra iPhone ne retourne rien. La plupart des caméras Android font de même. Si votre public est le grand public avec un téléphone, utilisez le QR et acceptez une densité plus faible. L'Aztec est pour les lecteurs dédiés (portes d'aéroport, scanners de tourniquets, imageurs industriels OEM).
- ECC 5% est un piège. L'ECC légal minimum produit des codes qui échouent sur tout chiffonnage, reflet ou abrasion. 23% est le plancher sûr ; 50% est la valeur par défaut de production pour tout ce qui sera imprimé sur papier.
- BCBP type M1 vs M2. M1 est à segment unique ; M2 est à segments multiples (jusqu'à 4 vols dans un code). Vérifiez que les lecteurs de porte de votre compagnie aérienne prennent en charge M2 avant d'intégrer plusieurs segments, certains anciens lecteurs le rejettent.
- Pas de marqueurs de position, la rotation est gérée mais pas la perspective. L'Aztec tolère la rotation mais PAS la forte distorsion de perspective. Scannez depuis approximativement perpendiculaire à la surface ; une inclinaison de 30°+ dégrade le décodage.
- Stylisation désactivée. Les fonctionnalités spécifiques au QR (formes de points personnalisées, dégradés, logo central) ne s'appliquent pas à l'Aztec. Le panneau Style d'Abundera se désactive pour ce type, voir la bannière de capacité sur le générateur Aztec.
- Pas de module pour l'impression. L'Aztec nécessite au moins 0,33 mm/module pour un décodage fiable par scanner laser ; 0,5 mm pour les lectures par caméra de téléphone sur les grands tickets Aztec.
Compatibilité des scanners
| Lecteur | Support Aztec | Notes |
|---|---|---|
| Caméra iOS (iOS 15+) | Non | Apple n'a pas ajouté Aztec à l'app Caméra native. Les apps tierces avec SDK Scandit ou Dynamsoft fonctionnent. |
| Caméra Android (Google/Pixel) | Partiel | Certaines apps caméra OEM décodent ; la caméra stock Pixel ne le fait pas de manière fiable. |
| Google Lens | Peu fiable | Décode l'Aztec des cartes d'embarquement de manière incohérente. Pas une voie de vérification viable pour la production. |
| Imageur industriel Zebra / Honeywell / Datalogic | Oui | Tous les imageurs 2D industriels prennent en charge Aztec nativement. |
| Lecteur de porte aérienne / transit | Oui (canonique) | C'est pour cela qu'Aztec a été conçu. Chaque aéroport et gare ferroviaire lit l'Aztec de manière fiable. |
| SDK Scandit / Dynamsoft | Oui | Utilisé par la plupart des bornes libre-service et des applications d'enregistrement des compagnies aériennes. |
Voir aussi
- /aztec-code-generator/, le générateur Aztec.
- Comparaison Aztec · PDF417 · Data Matrix, comparaison côte à côte avec les deux autres symbologies 2D non-QR.
- Référence PDF417, le frère linéaire empilé, pour les permis de conduire et les lettres de transport aérien.
- Référence Data Matrix, le frère de marquage direct de pièces, pour la pharmacie et les composants électroniques.
- Index des standards, retour au centre de référence.