org.apache.fop.area

## Class Area

- java.lang.Object
- - org.apache.fop.area.AreaTreeObject
  - - org.apache.fop.area.Area

All Implemented Interfaces:
  Serializable, Cloneable

Direct Known Subclasses:
  BlockParent, Container, ForeignObject, Image, InlineArea, LineArea, MainReference, RegionReference, RegionViewport, Span

    public class Area
    extends AreaTreeObject
    implements Serializable

Base object for all areas.

See Also:
  Serialized Form

### Field Summary

Fields
`protected int` `bidiLevel` Resolved bidirectional level for area.
`protected int` `bpd` the area's block-progression-dimension
`static int` `CLASS_ABSOLUTE` Absolute position class
`static int` `CLASS_BEFORE_FLOAT` Before float class
`static int` `CLASS_FIXED` Fixed position class
`static int` `CLASS_FOOTNOTE` Footnote class
`static int` `CLASS_MAX` Maximum class count
`static int` `CLASS_NORMAL` Normal class
`static int` `CLASS_SIDE_FLOAT` Side float class
`protected int` `effectiveIPD`
`protected int` `ipd` the area's inline-progression-dimension
`protected static org.apache.commons.logging.Log` `log` logging instance
`static int` `ORIENT_0` Normal orientation
`static int` `ORIENT_180` Rotate 180 degrees
`static int` `ORIENT_270` Rotated 270 degrees clockwise
`static int` `ORIENT_90` Rotated 90 degrees clockwise
`protected TreeMap<Integer,Object>` `traits` Traits for this area.

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

`extensionAttachments, foreignAttributes`

### Constructor Summary

Constructors
Constructor and Description
`Area()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `activateEffectiveIPD()`
`void` `addChildArea(Area child)` Add a child to this area.
`void` `addTrait(Integer traitCode, Object prop)` Add a trait to this area.
`Object` `clone()`
`int` `getAllocBPD()` Get the allocation block progression dimension of this area.
`int` `getAllocIPD()` Get the allocation inline progression dimension of this area.
`int` `getAreaClass()` Get the area class of this area.
`int` `getBidiLevel()` Get the bidirectional embedding level.
`int` `getBorderAndPaddingWidthAfter()` Return the sum of region border- and padding-after
`int` `getBorderAndPaddingWidthBefore()` Return the sum of region border- and padding-before
`int` `getBorderAndPaddingWidthEnd()` Return the sum of region border- and padding-end
`int` `getBorderAndPaddingWidthStart()` Return the sum of region border- and padding-start
`int` `getBPD()` Get the block progression dimension of the content rectangle for this area.
`List<ChangeBar>` `getChangeBarList()` Returns the active change bar list.
`int` `getEffectiveAllocIPD()`
`int` `getEffectiveIPD()`
`int` `getIPD()` Get the inline progression dimension of the content rectangle for this area.
`int` `getSpaceAfter()` Returns the space after
`int` `getSpaceBefore()` Returns the space before
`int` `getSpaceEnd()` Returns the space end
`int` `getSpaceStart()` Returns the space start
`Object` `getTrait(Integer traitCode)` Get a trait from this area.
`boolean` `getTraitAsBoolean(Integer traitCode)` Get a boolean trait from this area.
`int` `getTraitAsInteger(Integer traitCode)` Get a trait from this area as an integer.
`Map<Integer,Object>` `getTraits()` Get the map of all traits on this area.
`boolean` `hasTrait(Integer traitCode)` Checks whether a certain trait is set on this area.
`boolean` `hasTraits()`
`void` `resetBidiLevel()` Reset the bidirectional embedding level to default value (-1).
`void` `setAreaClass(int areaClass)` Set the area class of this area.
`void` `setBidiLevel(int bidiLevel)` Set the bidirectional embedding level.
`void` `setBPD(int bpd)` Set the block progression dimension of the content rectangle for this area.
`void` `setChangeBarList(List<ChangeBar> changeBarList)` Sets the active change bar list.
`void` `setIPD(int ipd)` Set the inline progression dimension of content rectangle for this area.
`void` `setTraits(Map traits)` Set traits on this area, copying from an existing traits map.
`void` `setWritingModeTraits(WritingModeTraitsGetter wmtg)` Sets the writing mode traits for this area.
`String` `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

#### ORIENT_0

    public static final int ORIENT_0

Normal orientation

See Also:
  Constant Field Values

#### ORIENT_90

    public static final int ORIENT_90

Rotated 90 degrees clockwise

See Also:
  Constant Field Values

#### ORIENT_180

    public static final int ORIENT_180

Rotate 180 degrees

See Also:
  Constant Field Values

#### ORIENT_270

    public static final int ORIENT_270

Rotated 270 degrees clockwise

See Also:
  Constant Field Values

#### CLASS_NORMAL

    public static final int CLASS_NORMAL

Normal class

See Also:
  Constant Field Values

#### CLASS_FIXED

    public static final int CLASS_FIXED

Fixed position class

See Also:
  Constant Field Values

#### CLASS_ABSOLUTE

    public static final int CLASS_ABSOLUTE

Absolute position class

See Also:
  Constant Field Values

#### CLASS_BEFORE_FLOAT

    public static final int CLASS_BEFORE_FLOAT

Before float class

See Also:
  Constant Field Values

#### CLASS_FOOTNOTE

    public static final int CLASS_FOOTNOTE

Footnote class

See Also:
  Constant Field Values

#### CLASS_SIDE_FLOAT

    public static final int CLASS_SIDE_FLOAT

Side float class

See Also:
  Constant Field Values

#### CLASS_MAX

    public static final int CLASS_MAX

Maximum class count

See Also:
  Constant Field Values

#### ipd

    protected int ipd

the area's inline-progression-dimension

#### bpd

    protected int bpd

the area's block-progression-dimension

#### effectiveIPD

    protected int effectiveIPD

#### bidiLevel

    protected int bidiLevel

Resolved bidirectional level for area.

#### traits

    protected TreeMap<Integer,Object> traits

Traits for this area.

#### log

    protected static final org.apache.commons.logging.Log log

logging instance

### Constructor Detail

#### Area

    public Area()

### Method Detail

#### getChangeBarList

    public List<ChangeBar> getChangeBarList()

Returns the active change bar list.

Returns:
  The active change bar list

#### setChangeBarList

    public void setChangeBarList(List<ChangeBar> changeBarList)

Sets the active change bar list.

Parameters:
  `changeBarList` - The active change bar list

#### getAreaClass

    public int getAreaClass()

Get the area class of this area.

Returns:
  the area class

#### clone

    public Object clone()
                 throws CloneNotSupportedException

Overrides:
  `clone` in class `AreaTreeObject`
Throws:
  `CloneNotSupportedException`

#### setAreaClass

    public void setAreaClass(int areaClass)

Set the area class of this area.

Parameters:
  `areaClass` - the area class

#### setIPD

    public void setIPD(int ipd)

Set the inline progression dimension of content rectangle for this area.

Parameters:
  `ipd` - the new inline progression dimension
See Also:
  ipd

#### getIPD

    public int getIPD()

Get the inline progression dimension of the content rectangle for this area.

Returns:
  the inline progression dimension
See Also:
  ipd

#### setBPD

    public void setBPD(int bpd)

Set the block progression dimension of the content rectangle for this area.

Parameters:
  `bpd` - the new block progression dimension
See Also:
  bpd

#### getBPD

    public int getBPD()

Get the block progression dimension of the content rectangle for this area.

Returns:
  the block progression dimension
See Also:
  bpd

#### getAllocIPD

    public int getAllocIPD()

Get the allocation inline progression dimension of this area. This adds the content, borders and the padding to find the total allocated IPD.

Returns:
  the total IPD allocation for this area

#### getEffectiveAllocIPD

    public int getEffectiveAllocIPD()

#### getAllocBPD

    public int getAllocBPD()

Get the allocation block progression dimension of this area. This adds the content, borders, padding and spaces to find the total allocated BPD.

Returns:
  the total BPD allocation for this area

#### setBidiLevel

    public void setBidiLevel(int bidiLevel)

Set the bidirectional embedding level.

Parameters:
  `bidiLevel` - the bidirectional embedding level

#### resetBidiLevel

    public void resetBidiLevel()

Reset the bidirectional embedding level to default value (-1).

#### getBidiLevel

    public int getBidiLevel()

Get the bidirectional embedding level.

Returns:
  the bidirectional embedding level

#### getBorderAndPaddingWidthBefore

    public int getBorderAndPaddingWidthBefore()

Return the sum of region border- and padding-before

Returns:
  width in millipoints

#### getBorderAndPaddingWidthAfter

    public int getBorderAndPaddingWidthAfter()

Return the sum of region border- and padding-after

Returns:
  width in millipoints

#### getBorderAndPaddingWidthStart

    public int getBorderAndPaddingWidthStart()

Return the sum of region border- and padding-start

Returns:
  width in millipoints

#### getBorderAndPaddingWidthEnd

    public int getBorderAndPaddingWidthEnd()

Return the sum of region border- and padding-end

Returns:
  width in millipoints

#### getSpaceBefore

    public int getSpaceBefore()

Returns the space before

Returns:
  width in millipoints

#### getSpaceAfter

    public int getSpaceAfter()

Returns the space after

Returns:
  width in millipoints

#### getSpaceStart

    public int getSpaceStart()

Returns the space start

Returns:
  width in millipoints

#### getSpaceEnd

    public int getSpaceEnd()

Returns the space end

Returns:
  width in millipoints

#### addChildArea

    public void addChildArea(Area child)

Add a child to this area. The default is to do nothing. Subclasses must override to do something if they can have child areas.

Parameters:
  `child` - the child area to add

#### addTrait

    public void addTrait(Integer traitCode,
                         Object prop)

Add a trait to this area.

Parameters:
  `traitCode` - the trait key
  `prop` - the value of the trait

#### setTraits

    public void setTraits(Map traits)

Set traits on this area, copying from an existing traits map.

Parameters:
  `traits` - the map of traits

#### getTraits

    public Map<Integer,Object> getTraits()

Get the map of all traits on this area.

Returns:
  the map of traits

#### hasTraits

    public boolean hasTraits()

Returns:
  true if the area has traits

#### getTrait

    public Object getTrait(Integer traitCode)

Get a trait from this area.

Parameters:
  `traitCode` - the trait key
Returns:
  the trait value

#### hasTrait

    public boolean hasTrait(Integer traitCode)

Checks whether a certain trait is set on this area.

Parameters:
  `traitCode` - the trait key
Returns:
  true if the trait is set

#### getTraitAsBoolean

    public boolean getTraitAsBoolean(Integer traitCode)

Get a boolean trait from this area.

Parameters:
  `traitCode` - the trait key
Returns:
  the trait value

#### getTraitAsInteger

    public int getTraitAsInteger(Integer traitCode)

Get a trait from this area as an integer.

Parameters:
  `traitCode` - the trait key
Returns:
  the trait value

#### setWritingModeTraits

    public void setWritingModeTraits(WritingModeTraitsGetter wmtg)

Sets the writing mode traits for this area. Default implementation does nothing.

Parameters:
  `wmtg` - a WM traits getter

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`
Returns:
  ipd and bpd of area

#### getEffectiveIPD

    public int getEffectiveIPD()

#### activateEffectiveIPD

    public void activateEffectiveIPD()