Package org.apache.fop.fo
Class XMLWhiteSpaceHandler
java.lang.Object
org.apache.fop.fo.XMLWhiteSpaceHandler
Class encapsulating the functionality for white-space-handling
during refinement stage.
The
Each time one of the variants is called, white-space is handled for all
The iteration always starts at
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.
handleWhiteSpace()
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 all
FOText
or Character
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 at
firstTextNode
,
goes on until the last text-node is reached, and deals only
with FOText
or Character
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.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
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 final void
reset()
Reset the handler, release all references
-
Constructor Details
-
XMLWhiteSpaceHandler
public XMLWhiteSpaceHandler()
-
-
Method Details
-
handleWhiteSpace
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 -
handleWhiteSpace
Handle white-space for the fo that is passed in, starting at firstTextNode (when a nested FO is encountered)- Parameters:
fo
- the FO for which to handle white-spacefirstTextNode
- the node at which to start
-