org.gnu.jfiglet.core
Class FIGFontLayout
java.lang.Object
org.gnu.jfiglet.core.FIGFontLayout
- public class FIGFontLayout
- extends java.lang.Object
Layout of a FIGFont.
- Version:
- $Id: FIGFontLayout.java,v 1.3 2004/04/27 20:09:28 sbrunot Exp $
- Author:
-
Sebastien Brunot
Constructor Summary |
FIGFontLayout(int theOldLayoutSpecification,
java.lang.Integer theFullLayoutSpecification)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HORIZONTAL_LAYOUT_MODE_FULL_SIZE
public static final int HORIZONTAL_LAYOUT_MODE_FULL_SIZE
- Horizontal layout mode "Full size".
Represents each FIGcharacter occupying the full width of its arrangement
of sub-characters as designed.
- See Also:
- Constant Field Values
HORIZONTAL_LAYOUT_MODE_FITTING_ONLY
public static final int HORIZONTAL_LAYOUT_MODE_FITTING_ONLY
- Horizontal layout mode "Fitting only".
Moves FIGcharacters closer together until they touch.
Typographers use the term "kerning" for this phenomenon
when applied to the horizontal axis, but fitting also
includes this as a vertical behavior, for which there is
apparently no established typographical term.
- See Also:
- Constant Field Values
HORIZONTAL_LAYOUT_MODE_SMUSHING
public static final int HORIZONTAL_LAYOUT_MODE_SMUSHING
- Horizontal layout mode "smushing"
Moves FIGcharacters one step closer after they touch, so that
they partially occupy the same space. A FIGdriver must decide
what sub-character to display at each junction. There are two
ways of making these decisions: by controlled smushing or by
universal smushing.
Controlled smushing uses a set of "smushing rules" selected by
the designer of a FIGfont.
Each rule is a comparison of the two sub-characters which must
be joined to yield what to display at the junction.
Controlled smushing will not always allow smushing to occur,
because the compared sub-characters may not correspond to any
active rule. Wherever smushing cannot occur, fitting occurs
instead.
Universal smushing simply overrides the sub-character from the
earlier FIGcharacter with the sub-character from the later
FIGcharacter. This produces an "overlapping" effect with some
FIGfonts, wherin the latter FIGcharacter may appear to be "in
front".
A FIGfont which does not specify any smushing rules for a
particular axis indicates that universal smushing is to occur
when smushing is requested. Therefore, it is not possible for
a FIGfont designer to "forbid" smushing. However there are
ways to ensure that smushing does not cause a FIGfont to be
illegible when smushed. This is especially important for
smaller FIGfonts.
- See Also:
- Constant Field Values
VERTICAL_LAYOUT_MODE_FULL_SIZE
public static final int VERTICAL_LAYOUT_MODE_FULL_SIZE
- Vertical layout modes
- See Also:
- Constant Field Values
VERTICAL_LAYOUT_MODE_FITTING_ONLY
public static final int VERTICAL_LAYOUT_MODE_FITTING_ONLY
- See Also:
- Constant Field Values
VERTICAL_LAYOUT_MODE_SMUSHING
public static final int VERTICAL_LAYOUT_MODE_SMUSHING
- See Also:
- Constant Field Values
HORIZONTAL_SMUSHING_RULE_EQUALS_CHARACTER
public static final int HORIZONTAL_SMUSHING_RULE_EQUALS_CHARACTER
- See Also:
- Constant Field Values
HORIZONTAL_SMUSHING_RULE_UNDERSCORE
public static final int HORIZONTAL_SMUSHING_RULE_UNDERSCORE
- See Also:
- Constant Field Values
HORIZONTAL_SMUSHING_RULE_HIERARCHY
public static final int HORIZONTAL_SMUSHING_RULE_HIERARCHY
- See Also:
- Constant Field Values
HORIZONTAL_SMUSHING_RULE_OPPOSITE_PAIR
public static final int HORIZONTAL_SMUSHING_RULE_OPPOSITE_PAIR
- See Also:
- Constant Field Values
HORIZONTAL_SMUSHING_RULE_BIG_X
public static final int HORIZONTAL_SMUSHING_RULE_BIG_X
- See Also:
- Constant Field Values
HORIZONTAL_SMUSHING_RULE_HARDBLANK
public static final int HORIZONTAL_SMUSHING_RULE_HARDBLANK
- See Also:
- Constant Field Values
VERTICAL_SMUSHING_RULE_EQUALS_CHARACTER
public static final int VERTICAL_SMUSHING_RULE_EQUALS_CHARACTER
- See Also:
- Constant Field Values
VERTICAL_SMUSHING_RULE_UNDERSCORE
public static final int VERTICAL_SMUSHING_RULE_UNDERSCORE
- See Also:
- Constant Field Values
VERTICAL_SMUSHING_RULE_HIERARCHY
public static final int VERTICAL_SMUSHING_RULE_HIERARCHY
- See Also:
- Constant Field Values
VERTICAL_SMUSHING_RULE_HORIZONTAL_LINE
public static final int VERTICAL_SMUSHING_RULE_HORIZONTAL_LINE
- See Also:
- Constant Field Values
VERTICAL_SMUSHING_RULE_VERTICAL_LINE
public static final int VERTICAL_SMUSHING_RULE_VERTICAL_LINE
- See Also:
- Constant Field Values
FIGFontLayout
public FIGFontLayout(int theOldLayoutSpecification,
java.lang.Integer theFullLayoutSpecification)
getHorizontalMode
public int getHorizontalMode()
getVerticalMode
public int getVerticalMode()
hasHorizontalSmushingRule
public boolean hasHorizontalSmushingRule(int theSmushingRule)
hasVerticalSmushingRule
public boolean hasVerticalSmushingRule(int theSmushingRule)
Copyright © 2004 Sebastien Brunot. All Rights Reserved.