Zend_Text_Figlet.xml 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 17232 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.text.figlet">
  5. <title>Zend_Text_Figlet</title>
  6. <para>
  7. <classname>Zend_Text_Figlet</classname> ist eine Komponente die es Entwicklern erlaubt einen
  8. sogenannten FIGlet Text zu erstellen. Ein FIGlet Text ist ein String der eine
  9. <acronym>ASCII</acronym> Kunst repräsentiert. FIGlets sind ein spezielles Schriftformat, das
  10. FLT (FigLet Font) genannt wird. Standardmäßig wird eine Schriftart mit
  11. <classname>Zend_Text_Figlet</classname> ausgeliefert, aber man kann zusätzliche Schriftarten
  12. unter <ulink url="http://www.figlet.org/fontdb.cgi">http://www.figlet.org</ulink>
  13. herunterladen.
  14. </para>
  15. <note>
  16. <title>Komprimierte Schriftarten</title>
  17. <para>
  18. <classname>Zend_Text_Figlet</classname> unterstützt gezippte Schriftarten. Das bedeutet
  19. das man eine <code>.flf</code> Datei nehmen und diese gzip-pen kann. Um
  20. <classname>Zend_Text_Figlet</classname> zu erlauben diese Datei zu erkennen, muß die
  21. gezippte Schriftart die Erweiterung <code>.gz</code> haben. Weiters, um die gezippte
  22. Schriftart verwenden zu können muß in <acronym>PHP</acronym> die Erweiterung GZIP
  23. aktiviert sein.
  24. </para>
  25. </note>
  26. <note>
  27. <title>Encoding</title>
  28. <para>
  29. <classname>Zend_Text_Figlet</classname> erwartet das Strings standardmäßig UTF-8 kodiert
  30. sind. Wenn das nicht der Fall ist, kann die Zeichenkodierung als zweiter Parameter an
  31. die <methodname>render()</methodname> Methode übergeben werden.
  32. </para>
  33. </note>
  34. <para>
  35. Man kann mehrere Optionen für ein FIGlet definieren. Wenn ein
  36. <classname>Zend_Text_Figlet</classname> instanziiert wird, kann ein Array oder eine Instanz
  37. von <classname>Zend_Config</classname> übergeben werden.
  38. <itemizedlist>
  39. <listitem>
  40. <para>
  41. <code>font</code> - Definiert die Schriftart die für die Darstellung verwendet
  42. werden soll. Wenn keine definiert wird, wird die eingebaute Schriftart
  43. verwendet.
  44. </para>
  45. </listitem>
  46. <listitem>
  47. <para>
  48. <code>outputWidth</code> - Definiert die maximale Breite des Ausgabestrings. Das
  49. wird für die Trennung von Wörtern verwendet sowie für die Feineinstellung.
  50. Achtung vor zu kleinen Werten, da diese zu undefiniertem Verhalten führen
  51. können. Der Standardwert ist 80.
  52. </para>
  53. </listitem>
  54. <listitem>
  55. <para>
  56. <code>handleParagraphs</code> - Ein boolscher Wert welcher anzeigt wie neue
  57. Zeilen zu handhaben sind. Wenn er auf true gesetzt wird, werden einzelne neue
  58. Zeilen ignoriert und stattdessen als einzelnes Leerzeichen behandelt. Nur
  59. mehrere neue Zeilen werden als solche behandelt. Der Standardwert ist
  60. <constant>FALSE</constant>.
  61. </para>
  62. </listitem>
  63. <listitem>
  64. <para>
  65. <code>justification</code> - Kann einer der Werte von
  66. <classname>Zend_Text_Figlet::JUSTIFICATION_*</classname> sein. Es gibt
  67. <constant>JUSTIFICATION_LEFT</constant>,
  68. <constant>JUSTIFICATION_CENTER</constant> und
  69. <constant>JUSTIFICATION_RIGHT</constant>. Die standardmäßige Justierung ist mit
  70. dem Wert <code>rightToLeft</code> definiert.
  71. </para>
  72. </listitem>
  73. <listitem>
  74. <para>
  75. <code>rightToLeft</code> - Definiert in welche Richtung geschrieben wird. Das
  76. kann entweder <constant>Zend_Text_Figlet::DIRECTION_LEFT_TO_RIGHT</constant>
  77. oder <constant>Zend_Text_Figlet::DIRECTION_RIGHT_TO_LEFT</constant> sein.
  78. Standardmäßig wird die Einstellung der Datei der Schriftart verwendet. Wenn die
  79. Justierung nicht definiert ist, wird ein Text der von rechts-nach-links
  80. geschrieben wird automatisch nach rechts gerückt.
  81. </para>
  82. </listitem>
  83. <listitem>
  84. <para>
  85. <code>smushMode</code> - Ein Integer-Bitfeld welches definiert wie einzelne
  86. Zeichen ineinander gesmusht (verflochten) werden. Das kann die Summe von
  87. mehreren Werten von <classname>Zend_Text_Figlet::SM_*</classname> sein. Es gibt
  88. die folgenden Smush-Modi: SM_EQUAL, SM_LOWLINE, SM_HIERARCHY, SM_PAIR, SM_BIGX,
  89. SM_HARDBLANK, SM_KERN und SM_SMUSH. Ein Wert von 0 schaltet das Smushing nicht
  90. aus sondern erzwingt die Anwendung von SM_KERN, wärend es ein Wert von -1
  91. ausschaltet. Eine Erklärung der verschiedenen Smush-Modi kann <ulink
  92. url="http://www.jave.de/figlet/figfont.txt">hier</ulink> gefunden werden.
  93. Die Smush-Mode Option wird normalerweise nur von Schriftart-Designer verwendet
  94. um die verschiedenen Layoutmodi mit einer neuen Schriftart zu testen.
  95. </para>
  96. </listitem>
  97. </itemizedlist>
  98. </para>
  99. <example id="zend.text.figlet.example.using">
  100. <title>Verwendung von Zend_Text_Figlet</title>
  101. <para>
  102. Dieses Beispiel zeigt die einfache Verwendung von
  103. <classname>Zend_Text_Figlet</classname> um einen einfachen FIGlet Text zu erstellen:
  104. </para>
  105. <programlisting language="php"><![CDATA[
  106. $figlet = new Zend_Text_Figlet();
  107. echo $figlet->render('Zend');
  108. ]]></programlisting>
  109. <para>
  110. Angenommen es wird eine Monospace Schriftart verwenden dann würde das Beispiel wie folgt
  111. aussehen:
  112. </para>
  113. <programlisting language="text"><![CDATA[
  114. ______ ______ _ __ ______
  115. |__ // | ___|| | \| || | __ \\
  116. / // | ||__ | ' || | | \ ||
  117. / //__ | ||___ | . || | |__/ ||
  118. /_____|| |_____|| |_|\_|| |_____//
  119. `-----`' `-----` `-` -`' -----`
  120. ]]></programlisting>
  121. </example>
  122. </sect1>
  123. <!--
  124. vim:se ts=4 sw=4 et:
  125. -->