Zend_Text_Figlet
Zend_Text_Figlet is a component which enables developers to
create a so called FIGlet text. A FIGlet text is a string, which is
represented as ASCII art. FIGlets use a special font format, called
FLT (FigLet Font). By default, one standard font is shipped with
Zend_Text_Figlet, but you can download additional fonts at
» http://www.figlet.org.
Note: Compressed fonts
Zend_Text_Figlet supports gzipped fonts. This means that
you can take an .flf file and gzip it. To allow
Zend_Text_Figlet to recognize this, the gzipped font
must have the extension .gz. Further, to be able to use
gzipped fonts, you have to have enabled the GZIP extension of PHP.
Note: Encoding
Zend_Text_Figlet expects your strings to be UTF-8 encoded
by default. If this is not the case, you can supply the character
encoding as second parameter to the render() method.
You can define multiple options for a FIGlet. When instantiating
Zend_Text_Figlet, you can supply an array or an instance of
Zend_Config.
-
font - Defines the font which should be used
for rendering. If not defines, the built-in font will be
used.
-
outputWidth - Defines the maximum width of the
output string. This is used for word-wrap as well as
justification. Beware of too small values, they may result
in an undefined behaviour. The default value is 80.
-
handleParagraphs - A boolean which indicates,
how new lines are handled. When set to TRUE, single new
lines are ignored and instead treated as single spaces. Only multiple
new lines will be handled as such. The default value is
FALSE.
-
justification - May be one of the values of
Zend_Text_Figlet::JUSTIFICATION_*. There is
JUSTIFICATION_LEFT,
JUSTIFICATION_CENTER and
JUSTIFICATION_RIGHT The default justification
is defined by the rightToLeft value.
-
rightToLeft - Defines in which direction the
text is written. May be either
Zend_Text_Figlet::DIRECTION_LEFT_TO_RIGHT or
Zend_Text_Figlet::DIRECTION_RIGHT_TO_LEFT. By
default the setting of the font file is used. When justification
is not defined, a text written from right-to-left is
automatically right-aligned.
-
smushMode - An integer bitfield which defines,
how the single characters are smushed together. Can be the
sum of multiple values from Zend_Text_Figlet::SM_*.
There are the following smush modes: SM_EQUAL, SM_LOWLINE,
SM_HIERARCHY, SM_PAIR, SM_BIGX, SM_HARDBLANK, SM_KERN and
SM_SMUSH. A value of 0 doesn't disable the entire smushing,
but forces SM_KERN to be applied, while a value of -1 disables
it. An explanation of the different smush modes can be found
» here.
By default the setting of the font file is used. The smush mode
option is normally used only by font designers testing the various
layoutmodes with a new font.
Example #1 Using Zend_Text_Figlet
This example illustrates the basic use of Zend_Text_Figlet
to create a simple FIGlet text:
$figlet = new Zend_Text_Figlet();
echo $figlet->
render('Zend');
Assuming you are using a monospace font, this would look as follows:
______ ______ _ __ ______
|__ // | ___|| | \| || | __ \\
/ // | ||__ | ' || | | \ ||
/ //__ | ||___ | . || | |__/ ||
/_____|| |_____|| |_|\_|| |_____//
`-----`' `-----` `-` -`' -----`