Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| fop 2.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.fop.area.inline
Class WordArea

    java.lang.Object
      org.apache.fop.area.AreaTreeObject
          org.apache.fop.area.Area
              org.apache.fop.area.inline.InlineArea
                  org.apache.fop.area.inline.WordArea

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable

    public class WordArea

extends InlineArea

A string of characters without spaces

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.fop.area.inline.InlineArea
`InlineArea.InlineAdjustingInfo`

Field Summary
`protected int[][]` | `gposAdjustments` An array of glyph positioning adjustments to apply to each glyph 'char' in word (optional)
`protected int[]` | `letterAdjust` An array of width for adjusting the individual letters (optional)
`protected int[]` | `levels` An array of resolved bidirectional levels corresponding to each character in word (optional)
`protected boolean` | `reversed` A flag indicating whether the content of word is reversed in relation to its original logical order.
`protected java.lang.String` | `word` The text for this word area

Fields inherited from class org.apache.fop.area.inline.InlineArea
`adjustingInfo, blockProgressionOffset`

Fields inherited from class org.apache.fop.area.Area
`bidiLevel, bpd, CLASS_ABSOLUTE, CLASS_BEFORE_FLOAT, CLASS_FIXED, CLASS_FOOTNOTE, CLASS_MAX, CLASS_NORMAL, CLASS_SIDE_FLOAT, effectiveIPD, ipd, log, ORIENT_0, ORIENT_180, ORIENT_270, ORIENT_90, traits`

Fields inherited from class org.apache.fop.area.AreaTreeObject
`extensionAttachments, foreignAttributes`

Constructor Summary
`WordArea(int blockProgressionOffset, int level, java.lang.String word, int[] letterAdjust, int[] levels, int[][] gposAdjustments)` Create a word area
`WordArea(int blockProgressionOffset, int level, java.lang.String word, int[] letterAdjust, int[] levels, int[][] gposAdjustments, boolean reversed)` Create a word area

Method Summary
`int` | `bidiLevelAt(int position)` Obtain per-character (glyph) level at a specified index position.
`java.util.List` | `collectInlineRuns(java.util.List runs)` Collection bidi inline runs.
`int[]` | `getBidiLevels()` Obtain per-character (glyph) bidi levels.
`int[]` | `getBidiLevels(int start, int end)` Obtain per-character (glyph) bidi levels over a specified subsequence.
`int[][]` | `getGlyphPositionAdjustments()` Obtain per-character (glyph) position adjustments.
`int[]` | `getLetterAdjustArray()`
`java.lang.String` | `getWord()`
`int[]` | `glyphPositionAdjustmentsAt(int position)` Obtain per-character (glyph) position adjustments at a specified index position.
`boolean` | `isReversed()` Determined if word has been reversed (in relation to original logical order).
`void` | `mirror()` Perform mirroring on mirrorable characters.
`void` | `reverse(boolean mirror)` Reverse characters and corresponding per-character levels and glyph position adjustments.

Methods inherited from class org.apache.fop.area.inline.InlineArea
`addChildArea, applyVariationFactor, getAdjustingInfo, getBlockProgressionOffset, getParentArea, handleIPDVariation, hasLineThrough, hasOverline, hasUnderline, increaseIPD, isAncestor, isAncestorOrSelf, isBlinking, notifyIPDVariation, setAdjustingInfo, setAdjustingInfo, setAdjustment, setBlockProgressionOffset, setParentArea`

Methods inherited from class org.apache.fop.area.Area
`activateEffectiveIPD, addTrait, clone, getAllocBPD, getAllocIPD, getAreaClass, getBidiLevel, getBorderAndPaddingWidthAfter, getBorderAndPaddingWidthBefore, getBorderAndPaddingWidthEnd, getBorderAndPaddingWidthStart, getBPD, getEffectiveAllocIPD, getEffectiveIPD, getIPD, getSpaceAfter, getSpaceBefore, getSpaceEnd, getSpaceStart, getTrait, getTraitAsBoolean, getTraitAsInteger, getTraits, hasTrait, hasTraits, resetBidiLevel, setAreaClass, setBidiLevel, setBPD, setIPD, setTraits, setWritingModeTraits, toString`

Methods inherited from class org.apache.fop.area.AreaTreeObject
`addExtensionAttachment, getExtensionAttachments, getForeignAttributes, getForeignAttributeValue, hasExtensionAttachments, setExtensionAttachments, setForeignAttribute, setForeignAttributes`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### word

    protected java.lang.String word

  The text for this word area

### letterAdjust

    protected int[] letterAdjust

  An array of width for adjusting the individual letters (optional)

### levels

    protected int[] levels

  An array of resolved bidirectional levels corresponding to each character in word (optional)

### gposAdjustments

    protected int[][] gposAdjustments

  An array of glyph positioning adjustments to apply to each glyph 'char' in word (optional)

### reversed

    protected boolean reversed

  A flag indicating whether the content of word is reversed in relation to its original logical order.

Constructor Detail

### WordArea

    public WordArea(int blockProgressionOffset,
                    int level,
                    java.lang.String word,
                    int[] letterAdjust,
                    int[] levels,
                    int[][] gposAdjustments,
                    boolean reversed)

  Create a word area

  Parameters:
    `blockProgressionOffset` - the offset for this area
    `level` - the bidirectional embedding level (or -1 if not defined) for word as a group
    `word` - the word string
    `letterAdjust` - the letter adjust array (may be null)
    `levels` - array of per-character (glyph) bidirectional levels, in case word area is heterogenously leveled
    `gposAdjustments` - array of general position adjustments or null if none apply
    `reversed` - true if word is known to be reversed at construction time

### WordArea

    public WordArea(int blockProgressionOffset,
                    int level,
                    java.lang.String word,
                    int[] letterAdjust,
                    int[] levels,
                    int[][] gposAdjustments)

  Create a word area

  Parameters:
    `blockProgressionOffset` - the offset for this area
    `level` - the bidirectional embedding level (or -1 if not defined) for word as a group
    `word` - the word string
    `letterAdjust` - the letter adjust array (may be null)
    `levels` - array of per-character (glyph) bidirectional levels, in case word area is heterogenously leveled
    `gposAdjustments` - array of general position adjustments or null if none apply

Method Detail

### getWord

    public java.lang.String getWord()

  Returns:
    Returns the word.

### getLetterAdjustArray

    public int[] getLetterAdjustArray()

  Returns:
    the array of letter adjust widths

### getBidiLevels

    public int[] getBidiLevels()

  Obtain per-character (glyph) bidi levels.

  Returns:
    a (possibly empty) array of levels or null (if none resolved)

### getBidiLevels

    public int[] getBidiLevels(int start,
                               int end)

  Obtain per-character (glyph) bidi levels over a specified subsequence.

  If word has been reversed, then the subsequence is over the reversed word.

  Parameters:
    `start` - starting (inclusive) index of subsequence
    `end` - ending (exclusive) index of subsequence
  Returns:
    a (possibly null) array of per-character (glyph) levels over the specified sequence

### bidiLevelAt

    public int bidiLevelAt(int position)

  Obtain per-character (glyph) level at a specified index position.

  If word has been reversed, then the position is relative to the reversed word.

  Parameters:
    `position` - the index of the (possibly reversed) character from which to obtain the level
  Returns:
    a resolved bidirectional level or, if not specified, then -1

### collectInlineRuns

    public java.util.List collectInlineRuns(java.util.List runs)

  Description copied from class: `InlineArea`
  Collection bidi inline runs.

  Overrides:
    `collectInlineRuns` in class `InlineArea`
  Parameters:
    `runs` - current list of inline runs
  Returns:
    modified list of inline runs, having appended new run

### getGlyphPositionAdjustments

    public int[][] getGlyphPositionAdjustments()

  Obtain per-character (glyph) position adjustments.

  Returns:
    a (possibly empty) array of adjustments, each having four elements, or null if no adjustments apply

### glyphPositionAdjustmentsAt

    public int[] glyphPositionAdjustmentsAt(int position)

  Obtain per-character (glyph) position adjustments at a specified index position.

  If word has been reversed, then the position is relative to the reversed word.

  Parameters:
    `position` - the index of the (possibly reversed) character from which to obtain the level
  Returns:
    an array of adjustments or null if none applies

### reverse

    public void reverse(boolean mirror)

  Reverse characters and corresponding per-character levels and glyph position adjustments.

  Parameters:
    `mirror` - if true, then perform mirroring if mirrorred characters

### mirror

    public void mirror()

  Perform mirroring on mirrorable characters.

### isReversed

    public boolean isReversed()

  Determined if word has been reversed (in relation to original logical order).

  If a word is reversed, then both its characters (glyphs) and corresponding per-character levels are in reverse order.

  Note: this information is used in order to process non-spacing marks during rendering as well as provide hints for caret direction.

  Returns:
    true if word is reversed

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| fop 2.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 1999-2017 The Apache Software Foundation. All Rights Reserved.