MiKaelKael
Less code = less bugs

Accueil du site > Blog > Zend_Barcode - partie 1 : utilisation

Zend_Barcode - partie 1 : utilisation

dimanche 20 décembre 2009, par mikaelkael

Toutes les versions de cet article : [English] [français]

Zend Framework 1.10 intégrera Zend_Barcode initialement appelé dans les proposals Zend_Image_Barcode.

La différence primordiale entre la première proposition et Zend_Barcode, c’est le découplage entre les objets et les générateurs de rendu. Ceci a permis d’écrire un générateur Image (Zend_Barcode_Renderer_Image) et un générateur PDF (Zend_Barcode_Renderer_Pdf).

Ce composant s’appuie sur une nouvelle version de Zend_Validate_Barcode spécialement réécrit pour la version 1.10 par Thomas (http://www.thomasweidner.com/flatpr...).

La documentation officielle intégrera bien sûr les exemples permettant de faire fonctionner ce composant mais voyons quelques exemples d’utilisations.

1. Le fichier de génération d’image "barcode.php"

Vous le placez à la racine de votre serveur Web :

  1. <?php
  2. set_include_path('../library');
  3. require_once 'Zend/Barcode.php';
  4. Zend_Barcode::render($_GET['barcodeType'], 'image', $_GET, $_GET);

2. Un appel dans votre vue et ... une première erreur

  1. <img src="barcode.php?barcodeType=code39" />

Ce qui vous donnera bien sûr une image d’erreur :

Car aucun texte n’a été fourni.

3. Votre premier code-barres

Vous l’obtenez en ajoutant, simplement le paramètre "text" :

  1. <img src="barcode.php?barcodeType=code39&text=ZEND-FRAMEWORK" />

Vous obtenez donc en 5 lignes de code votre premier code-barres :

4. Une police plus attrayante

Si vous utilisez le générateur Image basé sur l’extension GD et que vous ne spécifiez pas de police TTF, les polices internes de GD seront utilisées. Vous pouvez spécifier votre police soit dans les options de génération soit de manière plus globale :

  1. <?php
  2. set_include_path('../library');
  3. require_once 'Zend/Barcode.php';
  4. Zend_Barcode::setBarcodeFont('../data/fonts/tahoma.ttf');
  5. Zend_Barcode::render($_GET['barcodeType'], 'image', $_GET, $_GET);

Vous obtiendrez ainsi :

Répondre à cet article

SPIP | Se connecter | Plan du site | Suivre la vie du site RSS 2.0
Habillage visuel (c) Andreas Viklund sous Licence free for any purpose