Java Platform 1.2
Beta 4

Class java.awt.font.GlyphJustificationInfo

java.lang.Object
  |
  +--java.awt.font.GlyphJustificationInfo

public final class GlyphJustificationInfo
extends Object
GlyphJustificationInfo represents information about the justification properties of a glyph.

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.

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 will be examined.

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

Each justification info represents two sets of metrics, 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
          If true, when growing this glyph absorbs all extra space at this and lower priority levels.
 float growLeftLimit
          The maximum amount by which the left side of this glyph can grow.
 int growPriority
          The priority level of this glyph when growing.
 float growRightLimit
          The maximum amount by which the right side of this glyph can grow.
static int PRIORITY_INTERCHAR
          The second lowest justification priority.
static int PRIORITY_KASHIDA
          The highest justification priority.
static int PRIORITY_NONE
          The lowest justification priority.
static int PRIORITY_WHITESPACE
          The second highest justification priority.
 boolean shrinkAbsorb
          If true, when shrinking this glyph absorbs all remaining shrinkage at this and lower priority levels.
 float shrinkLeftLimit
          The maximum amount by which the left side of this glyph can shrink (a positive number).
 int shrinkPriority
          The priority level of this glyph when shrinking.
 float shrinkRightLimit
          The maximum amount by which the right side of this glyph can shrink (a positive number).
 float weight
          The weight of this glyph.
 
Constructor Summary
GlyphJustificationInfo(float weight, boolean growAbsorb, int growPriority, float growLeftLimit, float growRightLimit, boolean shrinkAbsorb, int shrinkPriority, float shrinkLeftLimit, float shrinkRightLimit)
          Construct information about the justification properties of a glyph.
 
Methods inherited from class java.lang.Object
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

Field Detail

PRIORITY_KASHIDA

public static final int PRIORITY_KASHIDA
The highest justification priority.

PRIORITY_WHITESPACE

public static final int PRIORITY_WHITESPACE
The second highest justification priority.

PRIORITY_INTERCHAR

public static final int PRIORITY_INTERCHAR
The second lowest justification priority.

PRIORITY_NONE

public static final int PRIORITY_NONE
The lowest justification priority.

weight

public final float weight
The weight of this glyph.

growPriority

public final int growPriority
The priority level of this glyph when growing.

growAbsorb

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

growLeftLimit

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

growRightLimit

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

shrinkPriority

public final int shrinkPriority
The priority level of this glyph when shrinking.

shrinkAbsorb

public final boolean shrinkAbsorb
If true, when shrinking this glyph absorbs all remaining shrinkage at this and lower priority levels.

shrinkLeftLimit

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

shrinkRightLimit

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

GlyphJustificationInfo

public GlyphJustificationInfo(float weight,
                              boolean growAbsorb,
                              int growPriority,
                              float growLeftLimit,
                              float growRightLimit,
                              boolean shrinkAbsorb,
                              int shrinkPriority,
                              float shrinkLeftLimit,
                              float shrinkRightLimit)
Construct information about the justification properties of a glyph.
Parameters:
weight - the weight of this glyph when allocating space
growAbsorb - if true, when growing this glyph absorbs all extra space at this and lower priority levels
growPriority - the priority level of this glyph when growing
growLeftLimit - the maximum amount by which the left side of this glyph can grow
growRightLimit - the maximum amount by which the right side of this glyph can grow
shrinkAbsorb - if true, when shrinking this glyph absorbs all remaining shrinkage at this and lower priority levels
shrinkPriority - the priority level of this glyph when shrinking
shrinkLeftLimit - the maximum amount by which the left side of this glyph can shrink (a positive number)
shrinkRightLimit - the maximum amoun by which the right side of this glyph can shrink (a postive number)

Java Platform 1.2
Beta 4

Submit a bug or feature
Submit comments/suggestions about new javadoc look
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.
This documentation was generated with a post-Beta4 version of Javadoc.