public final class GlyphJustificationInfo extends Object
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.
| Modifier and Type | Field | Description | 
|---|---|---|
| boolean | growAbsorb | If  true, this glyph absorbs all extra
 space at this and lower priority levels when it grows. | 
| float | growLeftLimit | The maximum amount by which the left side of this glyph can grow. | 
| int | growPriority | The priority level of this glyph as it is 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,this glyph absorbs all remaining shrinkage at
 this and lower priority levels as it shrinks. | 
| 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 as it is 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 | Description | 
|---|---|
| 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. | 
public static final int PRIORITY_KASHIDA
public static final int PRIORITY_WHITESPACE
public static final int PRIORITY_INTERCHAR
public static final int PRIORITY_NONE
public final float weight
public final int growPriority
public final boolean growAbsorb
true, this glyph absorbs all extra
 space at this and lower priority levels when it grows.public final float growLeftLimit
public final float growRightLimit
public final int shrinkPriority
public final boolean shrinkAbsorb
true,this glyph absorbs all remaining shrinkage at
 this and lower priority levels as it shrinks.public final float shrinkLeftLimit
public final float shrinkRightLimit
public GlyphJustificationInfo(float weight,
                              boolean growAbsorb,
                              int growPriority,
                              float growLeftLimit,
                              float growRightLimit,
                              boolean shrinkAbsorb,
                              int shrinkPriority,
                              float shrinkLeftLimit,
                              float shrinkRightLimit)
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
 growsgrowPriority - the priority level of this glyph when it
 growsgrowLeftLimit - 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
 shrinksshrinkPriority - the priority level of this glyph when
 it shrinksshrinkLeftLimit - 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. Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.