Sauvegarder des codes-barres

Inclure les fichiers nécessaires

Notre logiciel supporte PSR-4 ce qui chargera automatiquement les classes que vous désirez avec Composer.


require __DIR__ . '/vendor/autoload.php';

Si vous n'utilisez pas Composer, chargez chaque fichier que vous avez besoin comme ceci:


require_once('../packages/barcode-common/src/BCGColor.php');
// Et autres fichiers.

Ensuite, incluez quelques classes à utiliser dans votre fichier:


use BarcodeBakery\Common\BCGColor;
use BarcodeBakery\Common\BCGDrawing;
use BarcodeBakery\Common\BCGFontFile;
use BarcodeBakery\Common\BCGLabel;

Ensuite, ajoutez le type de code-barres que vous souhaitez générer. Essayons de générer un Code 128:


use BarcodeBakery\Barcode\BCGcode128;

Générer des couleurs

Avant de commencer à générer des codes-barres, nous devons décider quelles couleurs nous voulons utiliser.
Généralement, nous utilisons des barres noires et blanches.


// Les arguments sont R, G et B pour la couleur.
$colorBlack = new BCGColor(0, 0, 0);
$colorWhite = new BCGColor(255, 255, 255);

Police pour le label

Nous allons maintenant charger la police pour écrire le label sous le code-barres. Si vous ne souhaitez pas avoir de texte, ignorez cette étape.
Le premier argument est le chemin au fichier police ttf et le second est la taille en points (pt) de la police.


$font = new BCGFontFile(__DIR__ . '/font/Arial.ttf', 18);

Créer le code-barres

Maintenant, nous devons créer le code-barres. Il n'y a pas d'argument utilisé pour le constructeur de la classe; vous devez par contre utiliser les méthodes fournies pour modifier des propriétés du code-barres (voir le manuel). Pour terminer, vous devez appeler la fonction parse() afin d'analyser le code que vous souhaitez.


$code = new BCGcode128();
$code->setScale(2); // Résolution
$code->setThickness(30); // Épaisseur
$code->setForegroundColor($colorBlack); // Couleur des barres
$code->setBackgroundColor($colorWhite); // Couleur des espaces
$code->setFont($font); // Police (ou 0)
$code->parse('HELLO'); // Texte

Sauvegarder le code-barres dans un fichier

Nous devons placer le code-barres sur une surface de dessin. Nous utiliserons la class BCGDrawing.
Le premier argument est le code-barres. Le dernier argument est la couleur de fond.
Pour terminer, appelez la méthode Finish avec l'argument BCGDrawing::IMG_FORMAT_PNG ou BCGDrawing::IMG_FORMAT_JPEG pour obtenir un fichier PNG ou JPG. Ensuite, passez le nom du fichier pour le deuxième argument.


$drawing = new BCGDrawing($code, $colorWhite);
$drawing->finish(BCGDrawing::IMG_FORMAT_PNG, 'hello.png');