Class Character

All Implemented Interfaces:
Cloneable, Constants, StructureTreeElementHolder

public class Character extends FObj implements StructureTreeElementHolder
Class modelling the fo:character object.
  • Field Details

    • OK

      public static final int OK
      constant indicating that the character is OK
      See Also:
    • DOESNOT_FIT

      public static final int DOESNOT_FIT
      constant indicating that the character does not fit
      See Also:
  • Constructor Details

    • Character

      public Character(FONode parent)
      Parameters:
      parent - FONode that is the parent of this object
  • Method Details

    • bind

      public void bind(PropertyList pList) throws FOPException
      Bind property values from the property list to the FO node. Must be overridden in all FObj subclasses that have properties applying to it.
      Overrides:
      bind in class FObj
      Parameters:
      pList - the PropertyList where the properties can be found.
      Throws:
      FOPException - if there is a problem binding the values
    • startOfNode

      public void startOfNode() throws FOPException
      Called after processNode() is called. Subclasses can do additional processing.
      Overrides:
      startOfNode in class FObj
      Throws:
      FOPException - FOP Exception
    • validateChildNode

      protected void validateChildNode(Locator loc, String nsURI, String localName) throws ValidationException
      Checks to make sure, during SAX processing of input document, that the incoming node is valid for this (parent) node (e.g., checking to see that fo:table is not an immediate child of fo:root) called from FOTreeBuilder.startElement(String, String, String, Attributes) before constructing the child FObj.
      XSL Content Model: empty
      Overrides:
      validateChildNode in class FONode
      Parameters:
      loc - location in the FO source file
      nsURI - namespace of incoming node
      localName - name of the incoming node (without namespace prefix)
      Throws:
      ValidationException - if incoming node not valid for parent
    • charIterator

      public CharIterator charIterator()
      Return a CharIterator over all characters in this node
      Overrides:
      charIterator in class FONode
      Returns:
      an iterator for the characters in this node
    • getCommonBorderPaddingBackground

      public CommonBorderPaddingBackground getCommonBorderPaddingBackground()
      Returns:
      the Common Border, Padding, and Background Properties
    • getCommonFont

      public CommonFont getCommonFont()
      Returns:
      the Common Font Properties
    • getCommonHyphenation

      public CommonHyphenation getCommonHyphenation()
      Returns:
      the Common Hyphenation Properties
    • getCharacter

      public char getCharacter()
      Returns:
      the "character" property
    • getColor

      public Color getColor()
      Returns:
      the "color" property
    • getAlignmentAdjust

      public Length getAlignmentAdjust()
      Returns:
      the "alignment-adjust" property
    • getAlignmentBaseline

      public int getAlignmentBaseline()
      Returns:
      the "alignment-baseline" property
    • getBaselineShift

      public Length getBaselineShift()
      Returns:
      the "baseline-shift" property
    • getDominantBaseline

      public int getDominantBaseline()
      Returns:
      the "dominant-baseline" property
    • getLetterSpacing

      public Property getLetterSpacing()
      Returns:
      the "letter-spacing" property
    • getLineHeight

      public SpaceProperty getLineHeight()
      Returns:
      the "line-height" property
    • getTextDecoration

      public CommonTextDecoration getTextDecoration()
      Returns:
      the "text-decoration" property.
    • getWordSpacing

      public Property getWordSpacing()
      Returns:
      the "word-spacing" property
    • getKeepWithNext

      public KeepProperty getKeepWithNext()
      Returns:
      the "keep-with-next" property
    • getKeepWithPrevious

      public KeepProperty getKeepWithPrevious()
      Returns:
      the "keep-with-previous" property
    • setStructureTreeElement

      public void setStructureTreeElement(StructureTreeElement structureTreeElement)
      Description copied from class: FONode
      Sets the structure tree element.
      Overrides:
      setStructureTreeElement in class FONode
      Parameters:
      structureTreeElement - set.
    • getStructureTreeElement

      public StructureTreeElement getStructureTreeElement()
      Description copied from class: FONode
      Returns the structure tree element associated to this object.
      Specified by:
      getStructureTreeElement in interface StructureTreeElementHolder
      Overrides:
      getStructureTreeElement in class FONode
      Returns:
      the structure tree element
    • getLocalName

      public String getLocalName()
      Returns the local name (i.e. without namespace prefix) of the node
      Specified by:
      getLocalName in class FONode
      Returns:
      the local name of this node
    • getNameId

      public int getNameId()
      Returns the Constants class integer value of this node
      Overrides:
      getNameId in class FONode
      Returns:
      Constants.FO_CHARACTER
    • isDelimitedTextRangeBoundary

      public boolean isDelimitedTextRangeBoundary(int boundary)
      Description copied from class: FONode
      Determine if node has a delimited text range boundary. N.B. that we report this to be true by default, while specific subclasses override this method to report false.
      Overrides:
      isDelimitedTextRangeBoundary in class FONode
      Parameters:
      boundary - one of {EN_BEFORE, EN_AFTER, or EN_BOTH} enumeration constants
      Returns:
      true if indicated boundary (or boundaries) constitute a delimited text range boundary.
    • collectDelimitedTextRanges

      protected Stack<DelimitedTextRange> collectDelimitedTextRanges(Stack<DelimitedTextRange> ranges, DelimitedTextRange currentRange)
      Description copied from class: FONode
      Collect the sequence of delimited text ranges, where each new range is pushed onto RANGES, where default implementation collects ranges of child nodes.
      Overrides:
      collectDelimitedTextRanges in class FONode
      Parameters:
      ranges - a stack of delimited text ranges
      currentRange - the current range or null (if none)
      Returns:
      the (possibly) updated stack of delimited text ranges