Package org.apache.fop.fo
Class XMLWhiteSpaceHandler
- java.lang.Object
-
- org.apache.fop.fo.XMLWhiteSpaceHandler
-
public class XMLWhiteSpaceHandler extends java.lang.Object
Class encapsulating the functionality for white-space-handling during refinement stage. ThehandleWhiteSpace()
methods are called during FOTree-building and marker-cloning:
- from
FObjMixed.addChildNode()
- from
FObjMixed.endOfNode()
- from
FObjMixed.handleWhiteSpaceFor()
Each time one of the variants is called, white-space is handled for allFOText
orCharacter
nodes that were added:
- either prior to
newChild
(and after the previous non-text child node) - or, if
newChild
isnull
, after the previous non-text child
The iteration always starts atfirstTextNode
, goes on until the last text-node is reached, and deals only withFOText
orCharacter
nodes.
Note: if the method is called from an inline's endOfNode(), there is too little context to decide whether trailing white-space may be removed, so the pending inline is stored in a List, together with an iterator for which the next() method returns the first in the trailing sequence of white- space characters. This List is processed again at the end of the ancestor block. - from
-
-
Constructor Summary
Constructors Constructor Description XMLWhiteSpaceHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
handleWhiteSpace(FObjMixed fo, FONode firstTextNode)
Handle white-space for the fo that is passed in, starting at firstTextNode (when a nested FO is encountered)void
handleWhiteSpace(FObjMixed fo, FONode firstTextNode, FONode nextChild)
Handle white-space for the fo that is passed in, starting at firstTextNodeprotected void
reset()
Reset the handler, release all references
-
-
-
Method Detail
-
handleWhiteSpace
public void handleWhiteSpace(FObjMixed fo, FONode firstTextNode, FONode nextChild)
Handle white-space for the fo that is passed in, starting at firstTextNode- Parameters:
fo
- the FO for which to handle white-spacefirstTextNode
- the node at which to startnextChild
- the node that will be added to the list after firstTextNode
-
reset
protected final void reset()
Reset the handler, release all references
-
-