# Code-barres

Un code-barres, ou code à barres (CAB), est la représentation d'une donnée numérique ou alphanumérique sous forme d'un symbole constitué de barres et d'espaces dont l'épaisseur varie en fonction de la symbologie utilisée et des données ainsi codées. Il existe des milliers de codes-barres différents ; ceux-ci sont destinés à une lecture automatisée par un capteur électronique, le lecteur de code-barres. Pour l'impression des codes-barres, les technologies les plus utilisées sont l'impression laser et le transfert thermique.

## Histoire

Le brevet initial a été déposé le 20 octobre 1949 (concernant un code à lignes verticales, mais aussi en forme de cible, ainsi que le système d'acquisition des données$^,$) par deux étudiants américains, Norman Joseph Woodland et Bernard Silver, qui cherchaient une méthode pour automatiser l'enregistrement des produits des fabricants. Leur idée a consisté à combiner le système de sonorisation de films et le code morse. Il s'agissait ensuite de balayer le code avec une lumière pour traduire les barres verticales en informations. Ils ont également l'idée d'utiliser plutôt des cercles concentriques au lieu des lignes verticales afin de permettre la lecture du code dans toutes les orientations. L'utilisation courante n'interviendra cependant qu'à partir de 1973, à la suite de l'invention du code UPC (Universal Product Code, CUP en français) le 7 octobre 1970 par George Laurer. C'est à lui qu'on doit l'ajout de chiffres sous les barres verticales pour identifier le produit. Cette codification va dès lors supplanter les lignes concentriques, difficilement lisibles en cas de bavures d'impression. C'est au début des années 1970 qu'est élaborée la norme de données UPC. C'est le symbole du code-barre IBM qui est choisi parmi une demi-douzaine d’autres modèles.
La première utilisation de codes-barres a été l'étiquetage des wagons de train, mais ils n'ont pas été un succès commercial, jusqu'à ce qu'ils soient utilisés pour automatiser les activités des supermarchés au point de vente Commander Systems, une tâche dans laquelle ils sont devenus presque universels. Le premier produit doté d'un code-barres scanné à une caisse est un paquet de gomme à mâcher de la William Wrigley Jr. Company, le 26 juin 1974 dans la ville de Troy (Ohio).
Leur usage s'est étendu à bien d'autres rôles, des tâches qui sont généralement qualifiées d'identification automatique et de saisie des données (Auto ID Data Capture : AIDC). D'autres tentent de faire des percées sur le marché AIDC, mais la simplicité, l'universalité et le faible coût des codes-barres ont limité leur pénétration.

## Aspects économiques

Le coût unitaire de mise en œuvre d'un code-barres est environ 0,005 USD, donc nettement inférieur à celui d'une étiquette RFID (identification par radio-fréquence) qui est de l'ordre de 0,07 USD à 0,30 USD. Le coût de mise en œuvre comprend l'installation et l'achat de scanner, l'impression des codes-barres sur les produits.

### Conséquences

L'arrivée du code-barres dans les commerces permet une réduction du temps de passage à la caisse. Cette invention favorise les entreprises qui proposent de nombreux produits, par rapport aux petits commerçants pour lesquels le passage au code-barres n'était pas rentable à court terme en raison des coûts de mise en œuvre. Ce système permet l'enregistrement systématique des produits vendus, et empêche les malversations dans le cas où le vendeur ne déclarerait pas la transaction. Le code-barres permet un suivi précis et en temps réel des stocks ainsi que la diversification de l'offre, jusqu'alors matériellement complexe. Il marque le début du traitement statistique des préférences des consommateurs et l'arrivée des cartes de fidélités.
On observe en effet une corrélation entre l'explosion de la grande distribution et la généralisation du code-barres.

## Types

On distingue deux types généraux de codes-barres :
* Unidimensionnel (1D) : ces codes sont ceux représentés par une série de lignes parallèles d'épaisseur variable. Leur lecture est unidimensionnelle. Selon la technologie de lecture utilisée, le décodage pourra se faire de façon unidirectionnelle ou bidirectionnelle afin de confirmer le premier décodage.
* Bidimensionnel (2D) : ces codes utilisent une variété de symboles (rectangles, points, hexagones et autres formes géométriques). Cette forme matricielle permet d'enregistrer davantage d'informations.
On distingue deux familles de codes 2D :
* Les codes empilés
Il s'agit de codes 1D empilés (Code 16k, PDF417, etc.). Ces codes peuvent aussi être lus par les lecteurs 1D en faisant un balayage du code.
* Les codes bi-dimensionnels
Il s'agit de codes dont les motifs constituent une forme souvent rectangulaire ou carrée qui ne peuvent être lus que par des technologies de prise de photos.

## Symbologies

Voir : Liste des symbologies.
La symbologie est le système de transposition entre un texte et un code-barres. Cette transposition implique un codage, ainsi que des marqueurs de début et de fin de l'information.
Quelques types de codes-barres unidimensionnels (1D) :
* les codes-barres EAN : EAN 8, EAN 13, Code Universel des Produits (CUP)
* le Codabar Monarch (en) (alias 2 parmi 7, 2 of 7, Ames Code, Rationalized Codabar) : format obsolète utilisé dans les bibliothèques
* le Code 11 (en) : format obsolète utilisé en téléphonie
* le Code 39
* le Code 93
* le Code 128
* le 2 parmi 5
* le Code Plessey (en) et le Code MSI (en) : utilisé pour les magasins à rayons, les entrepôts et les inventaires
* le code GS1 et ses variantes GS1-128 (en), GS1 DataBar (en) et ITF-14 (en)
* le code PostBar (en) : utilisé par Postes Canada
* le code Postnet : utilisé par la poste américaine
Quelques types de codes-barres bidimensionnels (2D) :
* le PDF-417 : Portable Data File, code avec une grande capacité de stockage
* le Code 1 : de domaine public, utilisé pour les étiquettes médicales et l'industrie du recyclage
* le Code 16K
* le Code 49 (en)
* le Code One
* le 2 parmi 5 entrelacé
* le DataMatrix surnommé Tag pour certaines applications
* le DPM : Direct Part Mark, code DataMatrix gravé dans la matière comme le métal, le verre, le caoutchouc…
* le Flashcode : spécification issue de DataMatrix
* le MaxiCode : de domaine public, utilisé par United Parcel Service
* le Code Aztec
* le Bokode : code expérimental, prévu pour contenir beaucoup plus d’informations que les autres codes-barres tout en étant bien plus petit
* le Code QR : Quick Response, conçu pour être décodé rapidement, stocker une grande quantité d'informations et être lu par plusieurs types d'appareils
* l’EZcode
* le High Capacity Color Barcode : créé par Microsoft
* le MMCC : Mobile Multi-Coloured Composite (en)
Les codes dits « postaux » :
* codes à deux états : Postnet et Planet
* codes à quatre états : Australia Post, British Post, Canada Post, Dutch Post, Infomail, Intelligent Mail (en), Japan Post, Swedish Post

## Usages généraux

Les codes-barres se retrouvent dans de nombreuses sphères de l'activité économique, principalement celles qui impliquent la circulation des biens et l'identification. Parmi les principaux usages de cette technologie, mentionnons :
* Suivi des articles dans les magasins à rayons, les grands magasins, les marchés d'alimentation, etc., afin de mieux gérer les inventaires, la facturation et la comptabilité.
* Suivi des envois postaux, comme les colis ou les lettres recommandées.
* Suivi des bagages sur les lignes aériennes.
* Identification des patients et des médicaments.
* Indexation de documents.
* Depuis 2005, plusieurs compagnies aériennes utilisent les codes-barres sur les cartes d'embarquement.
* Codage d'hyperliens en code 2D pouvant être lus par un téléphone mobile, ce qui donne accès à une page web.

## Lecture des codes-barres

Pour décoder un code-barres, il faut un lecteur relié à un ordinateur. Les premières technologies utilisaient le port RS-232, puis l'USB s'est imposé. La lecture se fait le plus souvent grâce à un rayon laser qui permet le déchiffrage des zones claires et sombres, et ainsi de l'information codée.
On appelle zone de silence les marges situées autour du code et qui permettent au lecteur de trouver le début et la fin du code.De plus, les codes doivent respecter des dimensions minimales et maximales afin d'être lisibles.
Il existe 3 types différents de lecteurs de code-barres : les douchettes code-barres, les lecteurs portables de code-barres et les terminaux code-barres autonomes. Chacun d'entre eux correspond à un besoin et à un domaine d'activité spécifique.
* Les douchettes code-barres sont utilisées principalement dans le domaine médical ainsi que par les petites et grandes surfaces commerciales. Appréciées pour leur rapidité et leur simplicité d'utilisation, les douchettes autotrigger sont connectées à un ordinateur et peuvent lire aussi bien les codes 1D (code-barres linéaires) que 2D (codes plus élaborés tels que les QR code).
* Les lecteurs de code-barres portables sont utilisés régulièrement pour les inventaires en entrepôt et magasin, ou encore les services de poste. Ils sont parfaits pour une utilisation extérieure grâce à leur maniabilité et leur simplicité d'utilisation. Ces lecteurs portatifs peuvent aussi lire aussi bien les codes 2D que 1D.
* Les terminaux code-barres autonomes sont les plus élaborés, en plus de scanner les codes 1D et 2D, ils analysent les données et les transmettent en réseau comme un mini-ordinateur le ferait. Parfaitement adaptés pour l'inventaire, l'audit et contrôle de prix ainsi que le merchandising, ces terminaux laser correspondent aux besoins des commerciaux en magasins, aux gestionnaires de stocks ainsi que les transporteurs.
À l'exception de quelques code-barres spéciaux (par exemple les codes-barres "presse" de la norme EAN 13), l'information relative au prix d'un produit n'est généralement pas codée directement dans le code-barres. Le prix est en effet stocké dans le fichier interne du magasin. La lecture du code-barres sur une borne-prix est reçue par le terminal du magasin qui en retour renvoie l'information correspondante.

## Normes et spécifications

Voici les normes et spécifications des codes-barres EAN-13 à respecter afin de garantir la bonne lecture des codes-barres.

### Taille normale

* Largeur du code-barres = 31,35 mm
* Zone blanche gauche (marge vide gauche) = 3,63 mm
* Zone blanche à droite (marge vide à droite) = 2,31 mm
* Largeur totale du code à barres (avec zones blanches) = 37,29 mm
* Hauteur du code à barres (à l’exclusion du texte) = 22,85 mm
* Hauteur du code à barres (avec le texte) = 25,93 mm

### Redimensionnement des codes-barres

Un code-barres EAN-13 peut être redimensionné de 80 % à 200 % de sa taille normale.
Le tableau ci-dessous permet de respecter les proportions pour chaque valeur :
Tableau des dimensions à respecter (en mm) :
| Proportions | X-dimension* | Largeur de la Barre | Hauteur de la Barre | Zone blanche / espace gauche | Zone blanche / espace droite |
| 80 % | 0.26 | 25.08 | 18.28 | 2.90 | 1.85 |
| 85 % | 0.28 | 26.65 | 19.42 | 3.09 | 1.96 |
| 90 % | 0.30 | 28.22 | 20.57 | 3.27 | 2.08 |
| 95 % | 0.31 | 29.78 | 21.71 | 3.45 | 2.19 |
| 100 % | 0.33 | 31.35 | 22.85 | 3.63 | 2.31 |
| 105 % | 0.35 | 32.92 | 23.99 | 3.81 | 2.43 |
| 110 % | 0.36 | 34.49 | 25.14 | 3.99 | 2.54 |
| 115 % | 0.38 | 36.05 | 26.28 | 4.17 | 2.66 |
| 120 % | 0.40 | 37.62 | 27.42 | 4.36 | 2.77 |
| 125 % | 0.41 | 39.19 | 28.56 | 4.54 | 2.89 |
| 130 % | 0.43 | 40.76 | 29.71 | 4.72 | 3.00 |
| 135 % | 0.45 | 42.32 | 30.85 | 4.90 | 3.12 |
| 140 % | 0.46 | 43.89 | 31.99 | 5.08 | 3.23 |
| 145 % | 0.48 | 45.46 | 33.13 | 5.26 | 3.35 |
| 150 % | 0.50 | 47.03 | 34.28 | 5.45 | 3.47 |
| 155 % | 0.51 | 48.59 | 35.42 | 5.63 | 3.58 |
| 160 % | 0.53 | 50.16 | 36.56 | 5.81 | 3.70 |
| 165 % | 0.54 | 51.73 | 37.70 | 5.99 | 3.81 |
| 170 % | 0.56 | 53.30 | 38.85 | 6.17 | 3.93 |
| 175 % | 0.58 | 54.86 | 39.99 | 6.35 | 4.04 |
| 180 % | 0.59 | 56.43 | 41.13 | 6.53 | 4.16 |
| 185 % | 0.61 | 58.00 | 42.27 | 6.72 | 4.27 |
| 190 % | 0.63 | 59.57 | 43.42 | 6.90 | 4.39 |
| 195 % | 0.64 | 61.13 | 44.56 | 7.08 | 4.50 |
| 200 % | 0.66 | 62.70 | 45.70 | 7.26 | 4.62 |
*épaisseur minimale des lignes

## Évolution vers de nouveaux usages
### Au service des personnes handicapées

Le code-barres peut faciliter l’accès à l’information par les personnes aveugles et, plus largement, par les personnes empêchées de lire les documents imprimés. Le principe est que la personne aveugle utilise un lecteur de code-barres pour lire les codes-barres standards apposés sur tous les articles du commerce et ainsi accéder à l’information relative aux produits. Combinée à la possibilité d’imprimer à bas coût des étiquettes ordinaires permettant de marquer toutes sortes d'objets et/ou documents personnels, cette utilisation des codes-barres permet aux personnes aveugles de
* reconnaître les articles de consommation courante,
* organiser leurs effets et objets personnels,
* archiver et retrouver les documents,
* prendre en main leur santé (identification des boîtes de médicaments, accès aux données en ligne).

### Réalité augmentée

Un des exemples d’utilisation en matière de réalité augmentée consiste, par exemple, à placer dans un livre des codes-barres 2D permettant d'accéder à des contenus complémentaires.

## Exemples de codes-barres

* Exemple d'un code-barres 2D DataMatrix ; le symbole code le texte « Wikipédia, l'encyclopédie libre ».
* Exemple de code PDF417.
* Code QR codant http://fr.wikipedia.org.
* Code HCCB codant http://www.microsoft.com/tag.
* Code-barres sur un colis postal.