org.apache.fop.area

Class LineArea

Implemented Interfaces:
Serializable

public class LineArea
extends Area

The line area. This is a line area that contains inline areas.

Field Summary

Fields inherited from class org.apache.fop.area.Area

BT, CLASS_ABSOLUTE, CLASS_BEFORE_FLOAT, CLASS_FIXED, CLASS_FOOTNOTE, CLASS_MAX, CLASS_NORMAL, CLASS_SIDE_FLOAT, LR, ORIENT_0, ORIENT_180, ORIENT_270, ORIENT_90, RL, TB, bpd, ipd, log, props

Fields inherited from class org.apache.fop.area.AreaTreeObject

foreignAttributes

Constructor Summary

LineArea()
default constructor: nothing to do
LineArea(int alignment, int diff, int stretch, int shrink)
constructor with extra parameters: a new LineAdjustingInfo object is created

Method Summary

void
addChildArea(Area childArea)
Add a child area to this line area.
void
addInlineArea(InlineArea area)
Add an inline child area to this line area.
void
finalise()
apply the variation factor to all descendant areas and destroy the AdjustingInfo object if there are no UnresolvedAreas left
List
getInlineAreas()
Get the inline child areas of this line area.
int
getStartIndent()
Get the start indent of this line area.
void
handleIPDVariation(int ipdVariation)
receive notification about the ipd variation of a descendant area and perform the needed adjustment, according to the alignment; in particular:
  • left-aligned text needs no adjustement;
  • right-aligned text and centered text are handled locally, adjusting the indent of this LineArea;
  • justified text requires a more complex adjustment, as the variation factor computed on the basis of the total stretch and shrink of the line must be applied in every descendant leaf areas (text areas and leader areas).
void
updateExtentsFromChildren()
Updates the extents of the line area from its children.

Methods inherited from class org.apache.fop.area.Area

addChildArea, addTrait, addTrait, getAllocBPD, getAllocIPD, getAreaClass, getBPD, getBooleanTrait, getBorderAndPaddingWidthAfter, getBorderAndPaddingWidthBefore, getBorderAndPaddingWidthEnd, getBorderAndPaddingWidthStart, getIPD, getSpaceAfter, getSpaceBefore, getSpaceEnd, getSpaceStart, getTrait, getTraitAsInteger, getTraits, hasTrait, hasTraits, setAreaClass, setBPD, setIPD, toString

Methods inherited from class org.apache.fop.area.AreaTreeObject

getForeignAttributeValue, getForeignAttributes, setForeignAttribute, setForeignAttributes

Constructor Details

LineArea

public LineArea()
default constructor: nothing to do

LineArea

public LineArea(int alignment,
                int diff,
                int stretch,
                int shrink)
constructor with extra parameters: a new LineAdjustingInfo object is created
Parameters:
alignment - alignment of this line
diff - difference between content width and line width
stretch - the available stretch for any adjustments
shrink - the available shrink for any adjustments

Method Details

addChildArea

public void addChildArea(Area childArea)
Add a child area to this line area.
Overrides:
addChildArea in interface Area
Parameters:
childArea - the inline child area to add

addInlineArea

public void addInlineArea(InlineArea area)
Add an inline child area to this line area.
Parameters:
area - the inline child area to add

finalise

public void finalise()
apply the variation factor to all descendant areas and destroy the AdjustingInfo object if there are no UnresolvedAreas left

getInlineAreas

public List getInlineAreas()
Get the inline child areas of this line area.
Returns:
the list of inline areas

getStartIndent

public int getStartIndent()
Get the start indent of this line area. The start indent is used for offsetting the start of the inline areas for alignment or other indents.
Returns:
the start indent value

handleIPDVariation

public void handleIPDVariation(int ipdVariation)
receive notification about the ipd variation of a descendant area and perform the needed adjustment, according to the alignment; in particular:
  • left-aligned text needs no adjustement;
  • right-aligned text and centered text are handled locally, adjusting the indent of this LineArea;
  • justified text requires a more complex adjustment, as the variation factor computed on the basis of the total stretch and shrink of the line must be applied in every descendant leaf areas (text areas and leader areas).
Parameters:
ipdVariation - the difference between old and new ipd

updateExtentsFromChildren

public void updateExtentsFromChildren()
Updates the extents of the line area from its children.

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