PDF417

Capable de contenir un grand nombre de données dans une variété de caractères.
Utilisé principalement pour carte d'identification, inventaire et transport.
Les dimensions de ce code-barres peuvent être spécifiées; de plus il contient une version tronquée.

Démonstration

* 200 caractères maximum pour cette démo.

<?php
use BarcodeBakery\Common\BCGColor;
use BarcodeBakery\Common\BCGDrawing;
use BarcodeBakery\Barcode\BCGpdf417;

$colorFront = new BCGColor(0, 0, 0);
$colorBack = new BCGColor(255, 255, 255);

// Barcode Part
$code = new BCGpdf417();
$code->setScale(2);
$code->setColumn(-1);
$code->setErrorLevel(-1);
$code->setCompact(false);
$code->setColor($colorFront, $colorBack);
$code->parse('PDF417');

// Drawing Part
$drawing = new BCGDrawing('', $colorBack);
$drawing->setBarcode($code);
$drawing->draw();

header('Content-Type: image/png');

$drawing->finish(BCGDrawing::IMG_FORMAT_PNG);
?>

Spécifications Techniques

Le code PDF417 est régi par les standards internationaux ISO (IEC 15438). Vous pouvez l'utiliser pour vos applications.

Le code PDF417 est un code-barres 2D qui peut encoder beaucoup d'information à l'intérieur d'un symbole. Tous les 256 caractères peuvent être encodés.
Il est possible d'utiliser plusieurs symboles afin de former un long message.

Ce code-barres contient un moyen de correction d'erreurs basé sur Reed-Solomon pouvant varier d'un niveau de 0 à 8.

Tailles

Tableau : Capacité d'un code PDF417 en fonction du niveau d'erreur
Niveau d'Erreur Nombres de mots-clés requis pour la correction Nombre de mots-clés maximum de données
0 2 925
1 4 923
2 8 919
3 16 911
4 32 895
5 64 863
6 128 799
7 256 671
8 512 415

Détails

Des mots-clés correspondent à un motif de barres et d'espaces. Un mot-clé est composé de 17 pixels (sauf pour la dernière colonne qui est de 18).
Les mots-clés de la colonne de gauche et de droite sont toujours les mêmes. Ils servent à identifier le code PDF417. Les deux colonnes qui touchent ces colonnes sont des colonnes "fixes" qui sont basées sur le nombre de ligne et le niveau de sécurité. Aucune donnée proprement dite n'est écrite dans ces colonnes.
Les données sont donc dans la/les colonne(s) 3 à X-2 inclus (1 étant la première colonne et X le nombre de colonne).

Il existe 3 tables de mots-clés qui permettent d'encoder le code-barres. Elles sont utilisées une après les autres dépendamment de la ligne qui est présentement écrite.

Le texte à écrire est transformé en mots-clés; il existe différents encodages afin d'obtenir des mots-clés. Les modes sont avec leur signification sont écrits ci-dessous. Le texte souligné est le niveau de compression.

  • Texte (2 caractères par mot-clé): Mode par défaut permettant d\'encoder des majuscules, minuscules et la majorité des ponctuations. (ASCII 9, 10, 13 & 32 à 127). Il est plus avantageux d'écrire du texte qu'en majuscule ou qu'en minuscule plutôt que de basculer entre ces deux sortes de lettres.
  • Octet (1.2 octet par mot-clé): 1.2 octet par mot-clé=9
  • Numérique (2.9 chiffres par mot-clé&): Mode permettant d'encoder de manière très compressée les chiffres.

Le code de Reed-Solomon est ajouté à la suite des mots-clés de données afin de détecter et corriger les erreurs. S'il y en encore de la place de disponible, des mots-clés de bourrage sont ajoutés aux données.

Barcode Bakery Supporte

Supporte
Encodage Caractères, Chiffres, Binaires Disponible
PDF417 Tronqué Disponible
Encodage sur plusieurs codes (Structured Append) *
Extended Channel Interpretation (Arabe, Hebreux, etc.) *
Specifique à la librarie .NET
.NET 4.0+ Disponible
* Sera supporté dans les prochaines versions