Zend_Barcode-Creation.xml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.barcode.creation">
  5. <title>Criação de código de barras usando a classe Zend_Barcode</title>
  6. <sect2 id="zend.barcode.creation.configuration">
  7. <title>Usando o Zend_Barcode::factory</title>
  8. <para>
  9. <classname>Zend_Barcode</classname> utiliza um método de fábrica para criar uma
  10. instância de um renderizador que estende
  11. <classname>Zend_Barcode_Renderer_RendererAbstract</classname>. O método de fábrica
  12. aceita cinco argumentos.
  13. </para>
  14. <orderedlist>
  15. <listitem>
  16. <para>
  17. O nome do formato de código de barras (por exemplo, "code39") (obrigatório)
  18. </para>
  19. </listitem>
  20. <listitem>
  21. <para>O nome do renderizador (por exemplo, "image") (obrigatório)</para>
  22. </listitem>
  23. <listitem>
  24. <para>
  25. As opções do objeto código de barras (uma matriz ou objeto
  26. <classname>Zend_Config</classname>) (opcional)
  27. </para>
  28. </listitem>
  29. <listitem>
  30. <para>
  31. As opções do objeto renderizador (uma matriz ou objeto
  32. <classname>Zend_Config</classname>) (opcional)
  33. </para>
  34. </listitem>
  35. <listitem>
  36. <para>
  37. Booleano indicando se a renderização automática dos erros está ativada. Se
  38. ocorrer uma exceção, o objeto código de barras fornecido será substituído por
  39. uma representação de erro (opcional, padrão <constant>TRUE</constant>)
  40. </para>
  41. </listitem>
  42. </orderedlist>
  43. <example id="zend.barcode.creation.configuration.example-1">
  44. <title>Recuperando um Renderizador com Zend_Barcode::factory()</title>
  45. <para>
  46. <methodname>Zend_Barcode::factory()</methodname> instancia objetos código de barras
  47. e renderizadores no mesmo laço. Neste primeiro exemplo, vamos usar o tipo código de
  48. barras <emphasis>Code39</emphasis>, juntamente com o renderizador
  49. <emphasis>Image</emphasis>.
  50. </para>
  51. <programlisting language="php"><![CDATA[
  52. // Somente o texto a ser escrito é necessário
  53. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  54. // Não há opções necessárias
  55. $rendererOptions = array();
  56. $renderer = Zend_Barcode::factory(
  57. 'code39', 'image', $barcodeOptions, $rendererOptions
  58. );
  59. ]]></programlisting>
  60. </example>
  61. <example id="zend.barcode.creation.configuration.example-2">
  62. <title>Usando o Zend_Barcode::factory() com objetos Zend_Config</title>
  63. <para>
  64. Você pode passar um objeto <classname>Zend_Config</classname> para a fábrica, a fim
  65. de criar os objetos necessários. O exemplo a seguir é funcionalmente equivalente
  66. ao anterior.
  67. </para>
  68. <programlisting language="php"><![CDATA[
  69. // Usando apenas um objeto Zend_Config
  70. $config = new Zend_Config(array(
  71. 'barcode' => 'code39',
  72. 'barcodeParams' => array('text' => 'ZEND-FRAMEWORK'),
  73. 'renderer' => 'image',
  74. 'rendererParams' => array('imageType' => 'gif'),
  75. ));
  76. $renderer = Zend_Barcode::factory($config);
  77. ]]></programlisting>
  78. </example>
  79. </sect2>
  80. <sect2 id="zend.barcode.creation.drawing">
  81. <title>Desenhando um código de barras</title>
  82. <para>
  83. Quando você <emphasis>desenha</emphasis> o código de barras, você recuperar o recurso em
  84. que o código de barras é desenhado. Para desenhar um código de barras, você pode chamar
  85. o método <methodname>draw()</methodname> do renderizador ou simplesmente usar o método
  86. de proxy fornecido pelo <classname>Zend_Barcode</classname>.
  87. </para>
  88. <example id="zend.barcode.creation.drawing.example-1">
  89. <title>Desenhando um código de barras com o objeto renderizador</title>
  90. <programlisting language="php"><![CDATA[
  91. // Somente o texto a ser escrito é necessário
  92. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  93. // Não há opções necessárias
  94. $rendererOptions = array();
  95. // Desenha o código de barras em uma nova imagem
  96. $imageResource = Zend_Barcode::factory(
  97. 'code39', 'image', $barcodeOptions, $rendererOptions
  98. )->draw();
  99. ]]></programlisting>
  100. </example>
  101. <example id="zend.barcode.creation.drawing.example-2">
  102. <title>Desenhando um código de barras com Zend_Barcode::draw()</title>
  103. <programlisting language="php"><![CDATA[
  104. // Somente o texto a ser escrito é necessário
  105. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  106. // Não há opções necessárias
  107. $rendererOptions = array();
  108. // Desenha o código de barras em uma nova imagem
  109. $imageResource = Zend_Barcode::draw(
  110. 'code39', 'image', $barcodeOptions, $rendererOptions
  111. );
  112. ]]></programlisting>
  113. </example>
  114. </sect2>
  115. <sect2 id="zend.barcode.creation.renderering">
  116. <title>Renderizando um código de barras</title>
  117. <para>
  118. Quando você renderiza um código de barras, você desenha o código de barras, envia os
  119. cabeçalhos e envia também o recurso (à um navegador, por exemplo). Para renderizar um
  120. código de barras, você pode chamar o método <methodname>render()</methodname> do
  121. renderizador ou simplesmente usar o método de proxy fornecido pelo
  122. <classname>Zend_Barcode</classname>.
  123. </para>
  124. <example id="zend.barcode.creation.renderering.example-1">
  125. <title>Renderizando um código de barras com o objeto renderizador</title>
  126. <programlisting language="php"><![CDATA[
  127. // Somente o texto a ser escrito é necessário
  128. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  129. // Não há opções necessárias
  130. $rendererOptions = array();
  131. // Desenha o código de barras em uma nova imagem,
  132. // enviar os cabeçalhos e a imagem
  133. Zend_Barcode::factory(
  134. 'code39', 'image', $barcodeOptions, $rendererOptions
  135. )->render();
  136. ]]></programlisting>
  137. <para>
  138. Isso gerará este código de barras:
  139. </para>
  140. <para>
  141. <inlinegraphic width="275" align="center" valign="middle"
  142. fileref="figures/zend.barcode.introduction.example-1.png" format="PNG"/>
  143. </para>
  144. </example>
  145. <example id="zend.barcode.creation.renderering.example-2">
  146. <title>Renderizando um código de barras com Zend_Barcode::render()</title>
  147. <programlisting language="php"><![CDATA[
  148. // Somente o texto a ser escrito é necessário
  149. $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
  150. // Não há opções necessárias
  151. $rendererOptions = array();
  152. // Desenha o código de barras em uma nova imagem,
  153. // enviar os cabeçalhos e a imagem
  154. Zend_Barcode::render(
  155. 'code39', 'image', $barcodeOptions, $rendererOptions
  156. );
  157. ]]></programlisting>
  158. <para>
  159. Isso gerará o mesmo código de barras do exemplo anterior.
  160. </para>
  161. </example>
  162. </sect2>
  163. </sect1>