Zend_Barcode-Creation.xml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.barcode.creation">
  5. <title>Création de code-barres avec la classe Zend_Barcode</title>
  6. <sect2 id="zend.barcode.creation.configuration">
  7. <title>Utilisation de la fabrique Zend_Barcode::factory</title>
  8. <para>
  9. <classname>Zend_Barcode</classname> possède une méthode de fabrique pour créer une
  10. instance d'un générateur de rendu qui étend
  11. <classname>Zend_Barcode_Renderer_RendererAbstract</classname>. Ce méthode accepte 5
  12. arguments.
  13. </para>
  14. <orderedlist>
  15. <listitem>
  16. <para>Le nom du format de code-barres (ex. "code39") (obligatoire)</para>
  17. </listitem>
  18. <listitem>
  19. <para>Le nom du générateur de rendu (ex. "image") (obligatoire)</para>
  20. </listitem>
  21. <listitem>
  22. <para>
  23. Les options de l'objet code-barres (un tableau ou un objet
  24. <classname>Zend_Config</classname>) (optionnel)
  25. </para>
  26. </listitem>
  27. <listitem>
  28. <para>
  29. Les options du générateur de rendu (un tableau ou un objet
  30. <classname>Zend_Config</classname>) (optionnel)
  31. </para>
  32. </listitem>
  33. <listitem>
  34. <para>
  35. Booléen indiquant si le générateur automatique d'erreur est activé. Si
  36. une exception intervient, l'objet code-barres fourni sera remplacé par un
  37. objet représentant l'erreur (optionnel par défaut vaut
  38. <constant>TRUE</constant>)
  39. </para>
  40. </listitem>
  41. </orderedlist>
  42. <example id="zend.barcode.creation.configuration.example-1">
  43. <title>Récupérer un générateur de rendu avec Zend_Barcode::factory()</title>
  44. <para>
  45. <methodname>Zend_Barcode::factory()</methodname> instancie un objet code-barres
  46. et un générateur de rendu et les lie ensemble. Dans le premier exemple, nous allons
  47. utiliser le type de code-barres <emphasis>Code39</emphasis> avec le générateur
  48. de rendu <emphasis>Image</emphasis>.
  49. </para>
  50. <programlisting language="php"><![CDATA[
  51. // Seul le texte à écrire est obligatoire
  52. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  53. // Pas d'options requises
  54. $rendererOptions = array();
  55. $renderer = Zend_Barcode::factory(
  56. 'code39', 'image', $barcodeOptions, $rendererOptions
  57. );
  58. ]]></programlisting>
  59. </example>
  60. <example id="zend.barcode.creation.configuration.example-2">
  61. <title>Utiliser Zend_Barcode::factory() avec des objets Zend_Config</title>
  62. <para>
  63. Vous pouvez fournir un objet <classname>Zend_Config</classname> à la fabrique afin
  64. de créer les objets souhaités. L'exemple suivant est fonctionnellement équivalent
  65. au précédent.
  66. </para>
  67. <programlisting language="php"><![CDATA[
  68. // En utilisant seulement un objet Zend_Config
  69. $config = new Zend_Config(array(
  70. 'barcode' => 'code39',
  71. 'barcodeParams' => array('text' => 'ZEND-FRAMEWORK'),
  72. 'renderer' => 'image',
  73. 'rendererParams' => array('imageType' => 'gif'),
  74. ));
  75. $renderer = Zend_Barcode::factory($config);
  76. ]]></programlisting>
  77. </example>
  78. </sect2>
  79. <sect2 id="zend.barcode.creation.drawing">
  80. <title>Tracer un code-barres</title>
  81. <para>
  82. Quand vous <emphasis>dessiner</emphasis> un code-barres, vous récupérez la ressource
  83. dans laquelle le code-barres est tracée. Pour ensuite tracer le code-barres, vous
  84. pouvez appeler la méthode <methodname>draw()</methodname> du générateur de rendu ou
  85. simplement utiliser la méthode proxy fournie par <classname>Zend_Barcode</classname>.
  86. </para>
  87. <example id="zend.barcode.creation.drawing.example-1">
  88. <title>Tracer un code-barres avec l'objet générateur de rendu</title>
  89. <programlisting language="php"><![CDATA[
  90. // Seul le texte à écrire est obligatoire
  91. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  92. // Pas d'options requises
  93. $rendererOptions = array();
  94. // Tracé du code-barres dans une nouvelle image
  95. $imageResource = Zend_Barcode::factory(
  96. 'code39', 'image', $barcodeOptions, $rendererOptions
  97. )->draw();
  98. ]]></programlisting>
  99. </example>
  100. <example id="zend.barcode.creation.drawing.example-2">
  101. <title>Trace un code-barres avec Zend_Barcode::draw()</title>
  102. <programlisting language="php"><![CDATA[
  103. // Seul le texte à écrire est obligatoire
  104. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  105. // Pas d'options requises
  106. $rendererOptions = array();
  107. // Tracé du code-barres dans une nouvelle image
  108. $imageResource = Zend_Barcode::draw(
  109. 'code39', 'image', $barcodeOptions, $rendererOptions
  110. );
  111. ]]></programlisting>
  112. </example>
  113. </sect2>
  114. <sect2 id="zend.barcode.creation.renderering">
  115. <title>Générer le rendu d'un code-barres</title>
  116. <para>
  117. Quand vous générez un code-barres, vous dessinez le code-barres, vous envoyez les
  118. entêtes et vous envoyez la ressource (par exemple vers un navigateur). Pour rendre un
  119. code-barres, vous pouvez appeler la méthode <methodname>render()</methodname> du
  120. générateur de rendu ou simplement utiliser la méthode proxy fournie par
  121. <classname>Zend_Barcode</classname>.
  122. </para>
  123. <example id="zend.barcode.creation.renderering.example-1">
  124. <title>Effectuer le rendu d'un code-barres avec l'objet générateur de rendu</title>
  125. <programlisting language="php"><![CDATA[
  126. // Seul le texte à écrire est obligatoire
  127. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  128. // Pas d'options requises
  129. $rendererOptions = array();
  130. // Tracé du code-barres dans une nouvelle image,
  131. // envoi des entêtes et de l'image
  132. Zend_Barcode::factory(
  133. 'code39', 'image', $barcodeOptions, $rendererOptions
  134. )->render();
  135. ]]></programlisting>
  136. <para>
  137. Ceci générera ce code-barres&#160;:
  138. </para>
  139. <para>
  140. <inlinegraphic width="275" align="center" valign="middle"
  141. fileref="figures/zend.barcode.introduction.example-1.png" format="PNG"/>
  142. </para>
  143. </example>
  144. <example id="zend.barcode.creation.renderering.example-2">
  145. <title>Effectuer le rendu d'un code-barres avec Zend_Barcode::render()</title>
  146. <programlisting language="php"><![CDATA[
  147. // Seul le texte à écrire est obligatoire
  148. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  149. // Pas d'options requises
  150. $rendererOptions = array();
  151. // Tracé du code-barres dans une nouvelle image,
  152. // envoi des entêtes et de l'image
  153. Zend_Barcode::render(
  154. 'code39', 'image', $barcodeOptions, $rendererOptions
  155. );
  156. ]]></programlisting>
  157. <para>
  158. Ceci générera le même code-barres que l'exemple précédent.
  159. </para>
  160. </example>
  161. </sect2>
  162. </sect1>