java.awt.font
Class GlyphJustificationInfo

java.lang.Object sample code for java.lang.Object definition code for java.lang.Object 
  extended by java.awt.font.GlyphJustificationInfo

public final class GlyphJustificationInfo
extends Object sample code for java.lang.Object definition code for java.lang.Object

The GlyphJustificationInfo class represents information about the justification properties of a glyph. A glyph is the visual representation of one or more characters. Many different glyphs can be used to represent a single character or combination of characters. The four justification properties represented by GlyphJustificationInfo are weight, priority, absorb and limit.

Weight is the overall 'weight' of the glyph in the line. Generally it is proportional to the size of the font. Glyphs with larger weight are allocated a correspondingly larger amount of the change in space.

Priority determines the justification phase in which this glyph is used. All glyphs of the same priority are examined before glyphs of the next priority. If all the change in space can be allocated to these glyphs without exceeding their limits, then glyphs of the next priority are not examined. There are four priorities, kashida, whitespace, interchar, and none. KASHIDA is the first priority examined. NONE is the last priority examined.

Absorb determines whether a glyph absorbs all change in space. Within a given priority, some glyphs may absorb all the change in space. If any of these glyphs are present, no glyphs of later priority are examined.

Limit determines the maximum or minimum amount by which the glyph can change. Left and right sides of the glyph can have different limits.

Each GlyphJustificationInfo represents two sets of metrics, which are growing and shrinking. Growing metrics are used when the glyphs on a line are to be spread apart to fit a larger width. Shrinking metrics are used when the glyphs are to be moved together to fit a smaller width.


Field Summary
 boolean growAbsorb sample code for java.awt.font.GlyphJustificationInfo.growAbsorb definition code for java.awt.font.GlyphJustificationInfo.growAbsorb
          If true, this glyph absorbs all extra space at this and lower priority levels when it grows.
 float growLeftLimit sample code for java.awt.font.GlyphJustificationInfo.growLeftLimit definition code for java.awt.font.GlyphJustificationInfo.growLeftLimit
          The maximum amount by which the left side of this glyph can grow.
 int growPriority sample code for java.awt.font.GlyphJustificationInfo.growPriority definition code for java.awt.font.GlyphJustificationInfo.growPriority
          The priority level of this glyph as it is growing.
 float growRightLimit sample code for java.awt.font.GlyphJustificationInfo.growRightLimit definition code for java.awt.font.GlyphJustificationInfo.growRightLimit
          The maximum amount by which the right side of this glyph can grow.
static int PRIORITY_INTERCHAR sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_INTERCHAR definition code for java.awt.font.GlyphJustificationInfo.PRIORITY_INTERCHAR
          The second lowest justification priority.
static int PRIORITY_KASHIDA sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_KASHIDA definition code for java.awt.font.GlyphJustificationInfo.PRIORITY_KASHIDA
          The highest justification priority.
static int PRIORITY_NONE sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_NONE definition code for java.awt.font.GlyphJustificationInfo.PRIORITY_NONE
          The lowest justification priority.
static int PRIORITY_WHITESPACE sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_WHITESPACE definition code for java.awt.font.GlyphJustificationInfo.PRIORITY_WHITESPACE
          The second highest justification priority.
 boolean shrinkAbsorb sample code for java.awt.font.GlyphJustificationInfo.shrinkAbsorb definition code for java.awt.font.GlyphJustificationInfo.shrinkAbsorb
          If true,this glyph absorbs all remaining shrinkage at this and lower priority levels as it shrinks.
 float shrinkLeftLimit sample code for java.awt.font.GlyphJustificationInfo.shrinkLeftLimit definition code for java.awt.font.GlyphJustificationInfo.shrinkLeftLimit
          The maximum amount by which the left side of this glyph can shrink (a positive number).
 int shrinkPriority sample code for java.awt.font.GlyphJustificationInfo.shrinkPriority definition code for java.awt.font.GlyphJustificationInfo.shrinkPriority
          The priority level of this glyph as it is shrinking.
 float shrinkRightLimit sample code for java.awt.font.GlyphJustificationInfo.shrinkRightLimit definition code for java.awt.font.GlyphJustificationInfo.shrinkRightLimit
          The maximum amount by which the right side of this glyph can shrink (a positive number).
 float weight sample code for java.awt.font.GlyphJustificationInfo.weight definition code for java.awt.font.GlyphJustificationInfo.weight
          The weight of this glyph.
 
Constructor Summary
GlyphJustificationInfo sample code for java.awt.font.GlyphJustificationInfo.GlyphJustificationInfo(float, boolean, int, float, float, boolean, int, float, float) definition code for java.awt.font.GlyphJustificationInfo.GlyphJustificationInfo(float, boolean, int, float, float, boolean, int, float, float) (float weight, boolean growAbsorb, int growPriority, float growLeftLimit, float growRightLimit, boolean shrinkAbsorb, int shrinkPriority, float shrinkLeftLimit, float shrinkRightLimit)
          Constructs information about the justification properties of a glyph.
 
Method Summary
 
Methods inherited from class java.lang.Object sample code for java.lang.Object definition code for java.lang.Object
clone sample code for java.lang.Object.clone() definition code for java.lang.Object.clone() , equals sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) , finalize sample code for java.lang.Object.finalize() definition code for java.lang.Object.finalize() , getClass sample code for java.lang.Object.getClass() definition code for java.lang.Object.getClass() , hashCode sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() , notify sample code for java.lang.Object.notify() definition code for java.lang.Object.notify() , notifyAll sample code for java.lang.Object.notifyAll() definition code for java.lang.Object.notifyAll() , toString sample code for java.lang.Object.toString() definition code for java.lang.Object.toString() , wait sample code for java.lang.Object.wait() definition code for java.lang.Object.wait() , wait sample code for java.lang.Object.wait(long) definition code for java.lang.Object.wait(long) , wait sample code for java.lang.Object.wait(long, int) definition code for java.lang.Object.wait(long, int)
 

Field Detail

PRIORITY_KASHIDA sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_KASHIDA

public static final int PRIORITY_KASHIDA
The highest justification priority.

See Also:
Constant Field Values

PRIORITY_WHITESPACE sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_WHITESPACE

public static final int PRIORITY_WHITESPACE
The second highest justification priority.

See Also:
Constant Field Values

PRIORITY_INTERCHAR sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_INTERCHAR

public static final int PRIORITY_INTERCHAR
The second lowest justification priority.

See Also:
Constant Field Values

PRIORITY_NONE sample code for java.awt.font.GlyphJustificationInfo.PRIORITY_NONE

public static final int PRIORITY_NONE
The lowest justification priority.

See Also:
Constant Field Values

weight sample code for java.awt.font.GlyphJustificationInfo.weight

public final float weight
The weight of this glyph.


growPriority sample code for java.awt.font.GlyphJustificationInfo.growPriority

public final int growPriority
The priority level of this glyph as it is growing.


growAbsorb sample code for java.awt.font.GlyphJustificationInfo.growAbsorb

public final boolean growAbsorb
If true, this glyph absorbs all extra space at this and lower priority levels when it grows.


growLeftLimit sample code for java.awt.font.GlyphJustificationInfo.growLeftLimit

public final float growLeftLimit
The maximum amount by which the left side of this glyph can grow.


growRightLimit sample code for java.awt.font.GlyphJustificationInfo.growRightLimit

public final float growRightLimit
The maximum amount by which the right side of this glyph can grow.


shrinkPriority sample code for java.awt.font.GlyphJustificationInfo.shrinkPriority

public final int shrinkPriority
The priority level of this glyph as it is shrinking.


shrinkAbsorb sample code for java.awt.font.GlyphJustificationInfo.shrinkAbsorb

public final boolean shrinkAbsorb
If true,this glyph absorbs all remaining shrinkage at this and lower priority levels as it shrinks.


shrinkLeftLimit sample code for java.awt.font.GlyphJustificationInfo.shrinkLeftLimit

public final float shrinkLeftLimit
The maximum amount by which the left side of this glyph can shrink (a positive number).


shrinkRightLimit sample code for java.awt.font.GlyphJustificationInfo.shrinkRightLimit

public final float shrinkRightLimit
The maximum amount by which the right side of this glyph can shrink (a positive number).

Constructor Detail

GlyphJustificationInfo sample code for java.awt.font.GlyphJustificationInfo(float, boolean, int, float, float, boolean, int, float, float) definition code for java.awt.font.GlyphJustificationInfo(float, boolean, int, float, float, boolean, int, float, float)

public GlyphJustificationInfo(float weight,
                              boolean growAbsorb,
                              int growPriority,
                              float growLeftLimit,
                              float growRightLimit,
                              boolean shrinkAbsorb,
                              int shrinkPriority,
                              float shrinkLeftLimit,
                              float shrinkRightLimit)
Constructs information about the justification properties of a glyph.

Parameters:
weight - the weight of this glyph when allocating space. Must be non-negative.
growAbsorb - if true this glyph absorbs all extra space at this priority and lower priority levels when it grows
growPriority - the priority level of this glyph when it grows
growLeftLimit - the maximum amount by which the left side of this glyph can grow. Must be non-negative.
growRightLimit - the maximum amount by which the right side of this glyph can grow. Must be non-negative.
shrinkAbsorb - if true, this glyph absorbs all remaining shrinkage at this and lower priority levels when it shrinks
shrinkPriority - the priority level of this glyph when it shrinks
shrinkLeftLimit - the maximum amount by which the left side of this glyph can shrink. Must be non-negative.
shrinkRightLimit - the maximum amount by which the right side of this glyph can shrink. Must be non-negative.