<?xml version="1.0" encoding="UTF-8"?>
<!-- Reviewed: no -->
<!-- EN-Revision: 24249 -->
<sect1 id="zend.text.figlet">
    <title>Zend_Text_Figlet(日本語)</title>

    <para>
        <classname>Zend_Text_Figlet</classname> は、いわゆる
        FIGlet テキストを作成するためのコンポーネントです。
        FIGlet テキストとは、<acronym>ASCII</acronym> アートで表した文字列のことです。
        FIGlet では、FLT (FigLet Font) と呼ばれる特殊なフォント形式を使用します。
        デフォルトで <classname>Zend_Text_Figlet</classname>
        に同梱されているフォントは標準フォント 1 つだけですが、
        <ulink url="http://www.figlet.org/fontdb.cgi">http://www.figlet.org</ulink>
        からその他のフォントをダウンロードできます。
    </para>

    <note>
        <title>圧縮されたフォント</title>

        <para>
            <classname>Zend_Text_Figlet</classname> は gzip で圧縮されたフォントに対応しています。
            つまり、<filename>.flf</filename> ファイルを gzip した状態で使えるということです。
            <classname>Zend_Text_Figlet</classname> でこれを使用するには、gzip
            したフォントの拡張子が <filename>.gz</filename> でなければなりません。
            さらに、gzip されたフォントを使用するには <acronym>PHP</acronym>
            の GZIP 拡張モジュールを有効にする必要があります。
        </para>
    </note>

    <note>
        <title>エンコーディング</title>

        <para>
            <classname>Zend_Text_Figlet</classname> は、デフォルトでは文字列が UTF-8
            でエンコードされていることを想定しています。それ以外の場合は、
            <methodname>render()</methodname> メソッドの
            2 番目のパラメータで文字エンコーディングを指定します。
        </para>
    </note>

    <para>
        FIGlet 用のさまざまなオプションを指定できます。
        <classname>Zend_Text_Figlet</classname> のインスタンスを作成する際に、
        配列あるいは <classname>Zend_Config</classname> のインスタンスで指定します。

        <itemizedlist>
            <listitem>
                <para>
                    <property>font</property> - レンダリングに使用するフォント。
                    未定義の場合は組み込みのフォントを使用します。
                </para>
            </listitem>

            <listitem>
                <para>
                    <property>outputWidth</property> - 出力文字列の最大幅。
                    折り返しや幅揃えに使用します。
                    あまりに小さい値を指定してしまうと、
                    予期せぬ結果となってしまうので注意しましょう。
                    デフォルトは 80 です。
                </para>
            </listitem>

            <listitem>
                <para>
                    <property>handleParagraphs</property> - 改行の処理方法を示す boolean 値。
                    <constant>TRUE</constant> を指定すると、単一の改行文字を無視してひとつの空白文字として扱います。
                    ほんとうに改行させたい場合は、改行文字を 2 つ続けます。
                    デフォルトは <constant>FALSE</constant> です。
                </para>
            </listitem>

            <listitem>
                <para>
                    <property>justification</property> -
                    <classname>Zend_Text_Figlet::JUSTIFICATION_*</classname>
                    のいずれかの値。<constant>JUSTIFICATION_LEFT</constant>、
                    <constant>JUSTIFICATION_CENTER</constant> そして
                    <constant>JUSTIFICATION_RIGHT</constant> があります。
                    デフォルトの桁揃えは
                    <property>rightToLeft</property> の値によって決まります。
                </para>
            </listitem>

            <listitem>
                <para>
                    <property>rightToLeft</property> - テキストを記述する方向。
                    <constant>Zend_Text_Figlet::DIRECTION_LEFT_TO_RIGHT</constant> あるいは
                    <constant>Zend_Text_Figlet::DIRECTION_RIGHT_TO_LEFT</constant>
                    となります。デフォルトでは、フォントファイルの設定を使用します。
                    justification が定義されていない場合は、
                    右から左にテキストを書くときには自動的に右揃えとなります。
                </para>
            </listitem>

            <listitem>
                <para>
                    <property>smushMode</property> - 整数値。
                    各文字の並べ方を定義します。
                    <classname>Zend_Text_Figlet::SM_*</classname> の複数の値の和を指定できます。
                    SM_EQUAL, SM_LOWLINE,
                    SM_HIERARCHY, SM_PAIR, SM_BIGX, SM_HARDBLANK, SM_KERN そして
                    SM_SMUSH といったモードがあります。値 0 は、
                    「すべてを無効にする」ではなく「SM_KERN を適用する」
                    という意味になります。無効にするには -1 を指定します。
                    それぞれのモードがどんなものなのかについての説明が
                    <ulink url="http://www.jave.de/figlet/figfont.txt">ここ</ulink>
                    にあります。
                    デフォルトでは、フォントファイルの設定を使用します。
                    通常、このオプションを使用するのは、
                    フォントデザイナが新しいフォントを作成する際に
                    レイアウトを確かめるといった場合のみです。
                </para>
            </listitem>
        </itemizedlist>
    </para>

    <example id="zend.text.figlet.example.using">
        <title>Zend_Text_Figlet の使用法</title>

        <para>
            この例は、<classname>Zend_Text_Figlet</classname>
            の基本的な使用法を説明するためにシンプルな
            FIGlet テキストを作成するものです。
        </para>

        <programlisting language="php"><![CDATA[
require_once 'Zend/Text/Figlet.php';
$figlet = new Zend_Text_Figlet();
echo $figlet->render('Zend');
]]></programlisting>

        <para>
            等幅フォントを使用すると、この結果は次のようになります。
        </para>

        <programlisting language="text"><![CDATA[
  ______    ______    _  __   ______
 |__  //   |  ___||  | \| || |  __ \\
   / //    | ||__    |  ' || | |  \ ||
  / //__   | ||___   | .  || | |__/ ||
 /_____||  |_____||  |_|\_|| |_____//
 `-----`'  `-----`   `-` -`'  -----`
]]></programlisting>
    </example>
</sect1>
<!--
vim:se ts=4 sw=4 et:
-->
