Zend_Text_Figlet.xml 6.0 KB

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