Zend_Text_Figlet.xml 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.text.figlet">
  5. <title>Zend_Text_Figlet</title>
  6. <para>
  7. <classname>Zend_Text_Figlet</classname> est un composant qui permet aux développeurs
  8. de créer des textes dénommés FIGlet. Un texte FIGlet test une chaîne de caractères, qui est
  9. représenté en "ASCII-art". FIGlet utilise une format de police spécial , nommée FLT (FigLet
  10. Font). Par défaut, une police standard est fourni avec
  11. <classname>Zend_Text_Figlet</classname>, mais vous pouvez ajouter des polices additionnels à
  12. <ulink url="http://www.figlet.org/fontdb.cgi">http://www.figlet.org</ulink>.
  13. </para>
  14. <note>
  15. <title>Polices compressée</title>
  16. <para>
  17. <classname>Zend_Text_Figlet</classname> supporte les polices compressées en gzip.
  18. Ceci veut dire que vous pouvez prendre un fichier <filename>.flf</filename> et le
  19. gzipper. Pour permettre à <classname>Zend_Text_Figlet</classname> de les reconnaître,
  20. les polices gzippées doivent avoir l'extension <code>.gz</code>. De plus, pour
  21. pouvoir utiliser les polices compressées, vous devez activer l'extension GZIP de
  22. <acronym>PHP</acronym>.
  23. </para>
  24. </note>
  25. <note>
  26. <title>Encodage</title>
  27. <para>
  28. <classname>Zend_Text_Figlet</classname> considère que vos chaînes sont encodées en
  29. UTF-8 par défaut. Si ce n'est pas le cas, vous pouvez fournir le type d'encodage des
  30. caractères en tant que second paramètre à la méthode <methodname>render()</methodname>.
  31. </para>
  32. </note>
  33. <para>
  34. Il existe plusieurs options pour un FIGlet. Quand vous instanciez
  35. <classname>Zend_Text_Figlet</classname>, vous pouvez les fournir sous la forme d'un tableau
  36. ou d'un objet <classname>Zend_Config</classname>. <itemizedlist>
  37. <listitem>
  38. <para>
  39. <property>font</property>&#160;: défini la police utilisée pour le rendu. Par
  40. défaut la police incorporé sera utilisée.
  41. </para>
  42. </listitem>
  43. <listitem>
  44. <para>
  45. <property>outputWidth</property>&#160;: défini la largeur maximum de la chaîne
  46. résultat. Ceci est utilisé pour le retour à la ligne automatique ainsi que pour
  47. la justification. Attention cependant à de trop petites valeurs, qui pourraient
  48. induire un comportement indéfini. La valeur par défaut est 80.
  49. </para>
  50. </listitem>
  51. <listitem>
  52. <para>
  53. <property>handleParagraphs</property>&#160;: un booléen qui indique, comment
  54. les nouvelles lignes sont gérées. Réglé à <constant>TRUE</constant>, les
  55. nouvelles lignes uniques sont ignorées et traitées comme un espace unique.
  56. Seules des nouvelles lignes multiples seront gérées comme telles. La valeur
  57. par défaut est <constant>FALSE</constant>.
  58. </para>
  59. </listitem>
  60. <listitem>
  61. <para>
  62. <property>justification</property>&#160;: peut être une des valeurs de type
  63. <classname>Zend_Text_Figlet::JUSTIFICATION_*</classname>. Il existe
  64. <constant>JUSTIFICATION_LEFT</constant>,
  65. <constant>JUSTIFICATION_CENTER</constant> et
  66. <constant>JUSTIFICATION_RIGHT</constant>. La justification par défaut est
  67. défini par la valeur de <property>rightToLeft</property>.
  68. </para>
  69. </listitem>
  70. <listitem>
  71. <para>
  72. <property>rightToLeft</property>&#160;: défini la direction d'écriture du
  73. texte. Peut être
  74. <classname>Zend_Text_Figlet::DIRECTION_LEFT_TO_RIGHT</classname> ou
  75. <classname>Zend_Text_Figlet::DIRECTION_RIGHT_TO_LEFT</classname>. Par défaut le
  76. réglage du fichier de police est utilisé. Quand aucune justification n'est
  77. définie, un texte écrit de droite à gauche est automatiquement aligné à
  78. droite.
  79. </para>
  80. </listitem>
  81. <listitem>
  82. <para>
  83. <property>smushMode</property>&#160;: un entier qui définit comme chaque
  84. caractère est fusionné avec les autres. Peut être la somme de multiple valeurs
  85. de type <classname>Zend_Text_Figlet::SM_*</classname>. Il existe les modes de
  86. fusion suivants&#160;: SM_EQUAL, SM_LOWLINE, SM_HIERARCHY, SM_PAIR, SM_BIGX,
  87. SM_HARDBLANK, SM_KERN et SM_SMUSH. Une valeur de 0 ne désactive pas
  88. entièrement la fusion, mais force la valeur SM_KERN, tandis que la valeur de
  89. -1 la désactive. Une explication des différents modes de fusion peut être
  90. trouvé <ulink url="http://www.jave.de/figlet/figfont.txt">ici</ulink>. Par
  91. défaut le réglage de la police est utilisé. L'option du mode de fusion est
  92. normalement seulement utilisé par les concepteurs de police testant les
  93. différents mode de disposition d'une nouvelle police.
  94. </para>
  95. </listitem>
  96. </itemizedlist>
  97. </para>
  98. <example id="zend.text.figlet.example.using">
  99. <title>Utilisation Zend_Text_Figlet</title>
  100. <para>
  101. Cet exemple illustre une utilisation basique de
  102. <classname>Zend_Text_Figlet</classname> pour créer une texte FIGlet simple&#160;:
  103. </para>
  104. <programlisting language="php"><![CDATA[
  105. $figlet = new Zend_Text_Figlet();
  106. echo $figlet->render('Zend');
  107. ]]></programlisting>
  108. <para>
  109. En considérant que vous utilisez une police à espacement fixe, vous obtiendrez
  110. quelque chose comme ceci&#160;:
  111. </para>
  112. <programlisting language="text"><![CDATA[
  113. ______ ______ _ __ ______
  114. |__ // | ___|| | \| || | __ \\
  115. / // | ||__ | ' || | | \ ||
  116. / //__ | ||___ | . || | |__/ ||
  117. /_____|| |_____|| |_|\_|| |_____//
  118. `-----`' `-----` `-` -`' -----`
  119. ]]></programlisting>
  120. </example>
  121. </sect1>