com.lowagie.text

Class Cell

Implemented Interfaces:
Element, MarkupAttributes, TextElementArray
Known Direct Subclasses:
RtfCell, RtfTableCell

public class Cell
extends Rectangle
implements TextElementArray

A Cell is a Rectangle containing other Elements.

A Cell must be added to a Table. The Table will place the Cell in a Row.

Example:

 Table table = new Table(3);
 table.setBorderWidth(1);
 table.setBorderColor(new Color(0, 0, 255));
 table.setCellpadding(5);
 table.setCellspacing(5);
 Cell cell = new Cell("header");
 cell.setHeader(true);
 cell.setColspan(3);
 table.addCell(cell);
 cell = new Cell("example cell with colspan 1 and rowspan 2");
 cell.setRowspan(2);
 cell.setBorderColor(new Color(255, 0, 0));
 table.addCell(cell);
 table.addCell("1.1");
 table.addCell("2.1");
 table.addCell("1.2");
 table.addCell("2.2");
 
See Also:
Rectangle, Element, Table, Row

Field Summary

protected ArrayList
arrayList
This is the ArrayList of Elements.
protected int
colspan
This is the colspan.
protected boolean
groupChange
Does this Cell force a group change?
protected boolean
header
Is this Cell a header?
protected int
horizontalAlignment
This is the horizontal alignment.
(package private) float
leading
This is the leading.
protected int
maxLines
Maximum number of lines allowed in the cell.
protected int
rowspan
This is the rowspan.
(package private) String
showTruncation
If a truncation happens due to the maxLines property, then this text will be added to indicate a truncation has happened.
protected boolean
useAscender
Indicates that the largest ascender height should be used to determine the height of the first line.
protected boolean
useBorderPadding
Adjusts the cell contents to compensate for border widths.
protected boolean
useDescender
Indicates that the largest descender height should be added to the height of the last line (so characters like y don't dip into the border).
protected int
verticalAlignment
This is the vertical alignment.
protected String
width
This is the vertical alignment.

Fields inherited from class com.lowagie.text.Rectangle

BOTTOM, BOX, LEFT, NO_BORDER, RIGHT, TOP, UNDEFINED, background, border, borderColorBottom, borderColorLeft, borderColorRight, borderColorTop, borderWidth, borderWidthBottom, borderWidthLeft, borderWidthRight, borderWidthTop, color, grayFill, llx, lly, markupAttributes, rotation, urx, ury, useVariableBorders

Fields inherited from interface com.lowagie.text.Element

ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITTG3_1D, CCITTG3_2D, CCITTG4, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, GRAPHIC, HEADER, IMGRAW, IMGTEMPLATE, JPEG, KEYWORDS, LIST, LISTITEM, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE

Constructor Summary

Cell()
Constructs an empty Cell.
Cell(Properties attributes)
Returns a Cell that has been constructed taking in account the value of some attributes.
Cell(String content)
Constructs a Cell with a certain content.
Cell(boolean dummy)
Constructs an empty Cell (for internal use only).
Cell(Element element)
Constructs a Cell with a certain Element.

Method Summary

boolean
add(Object o)
Add an Object to this cell.
void
addElement(Element element)
Adds an element to this Cell.
float
bottom()
This method throws an UnsupportedOperationException.
float
bottom(int margin)
This method throws an UnsupportedOperationException.
String
cellWidth()
Gets the width.
void
clear()
Clears all the Elements of this Cell.
int
colspan()
Gets the colspan.
(package private) void
fill()
Makes sure there is at least 1 object in the Cell.
ArrayList
getChunks()
Gets all the chunks in this element.
static Cell
getDummyCell()
Get dummy cell used when merging inner tables.
Iterator
getElements()
Gets an iterator of Elements.
boolean
getGroupChange()
Does this Cell force a group change?
int
getMaxLines()
Getter for maxLines
String
getShowTruncation()
Getter for showTruncation
boolean
header()
Is this Cell a header?
int
horizontalAlignment()
Gets the horizontal alignment.
boolean
isEmpty()
Checks if the Cell is empty.
boolean
isTable()
Checks if the Cell is empty.
static boolean
isTag(String tag)
Checks if a given tag corresponds with this object.
boolean
isUseAscender()
Gets the value of useAscender
boolean
isUseBorderPadding()
Gets the value of useBorderPadding.
boolean
isUseDescender()
gets the value of useDescender
float
leading()
Gets the leading.
float
left()
This method throws an UnsupportedOperationException.
float
left(int margin)
This method throws an UnsupportedOperationException.
boolean
noWrap()
Get nowrap.
boolean
process(ElementListener listener)
Processes the element by adding it (or the different parts) to an ElementListener.
float
right()
This method throws an UnsupportedOperationException.
float
right(int margin)
This method throws an UnsupportedOperationException.
int
rowspan()
Gets the rowspan.
void
setBottom(int value)
This method throws an UnsupportedOperationException.
void
setColspan(int value)
Sets the colspan.
void
setGroupChange(boolean value)
Sets group change.
void
setHeader(boolean value)
Sets header.
void
setHorizontalAlignment(String alignment)
Sets the alignment of this cell.
void
setHorizontalAlignment(int value)
Sets the horizontal alignment.
void
setLeading(float value)
Sets the leading.
void
setLeft(int value)
This method throws an UnsupportedOperationException.
void
setMaxLines(int value)
Setter for maxLines
void
setNoWrap(boolean value)
Set nowrap.
void
setRight(int value)
This method throws an UnsupportedOperationException.
void
setRowspan(int value)
Sets the rowspan.
void
setShowTruncation(String value)
Setter for showTruncation
void
setTop(int value)
This method throws an UnsupportedOperationException.
void
setUseAscender(boolean use)
Sets the value of useAscender.
void
setUseBorderPadding(boolean use)
Sets the value of useBorderPadding.
void
setUseDescender(boolean use)
Sets the value of useDescender.
void
setVerticalAlignment(String alignment)
Sets the alignment of this paragraph.
void
setVerticalAlignment(int value)
Sets the vertical alignment.
void
setWidth(String value)
Sets the width.
int
size()
Gets the number of Elements in the Cell.
float
top()
This method throws an UnsupportedOperationException.
float
top(int margin)
This method throws an UnsupportedOperationException.
int
type()
Gets the type of the text element.
int
verticalAlignment()
Gets the vertical alignment.

Methods inherited from class com.lowagie.text.Rectangle

backgroundColor, border, borderColor, borderWidth, bottom, bottom, cloneNonPositionParameters, disableBorderSide, enableBorderSide, getBorderColorBottom, getBorderColorLeft, getBorderColorRight, getBorderColorTop, getBorderWidthBottom, getBorderWidthLeft, getBorderWidthRight, getBorderWidthTop, getChunks, getMarkupAttribute, getMarkupAttributeNames, getMarkupAttributes, getRotation, getVariableBorderWidth, grayFill, hasBorder, hasBorders, height, isUseVariableBorders, left, left, normalize, process, rectangle, right, right, rotate, setBackgroundColor, setBorder, setBorderColor, setBorderColorBottom, setBorderColorLeft, setBorderColorRight, setBorderColorTop, setBorderWidth, setBorderWidthBottom, setBorderWidthLeft, setBorderWidthRight, setBorderWidthTop, setBottom, setGrayFill, setLeft, setMarkupAttribute, setMarkupAttributes, setRight, setTop, setUseVariableBorders, top, top, type, updateBorderBasedOnWidth, width

Field Details

arrayList

protected ArrayList arrayList
This is the ArrayList of Elements.

colspan

protected int colspan
This is the colspan.

groupChange

protected boolean groupChange
Does this Cell force a group change?

header

protected boolean header
Is this Cell a header?

horizontalAlignment

protected int horizontalAlignment
This is the horizontal alignment.

leading

(package private)  float leading
This is the leading.

maxLines

protected int maxLines
Maximum number of lines allowed in the cell. The default value of this property is not to limit the maximum number of lines (contributed by dperezcar@fcc.es)

rowspan

protected int rowspan
This is the rowspan.

showTruncation

(package private)  String showTruncation
If a truncation happens due to the maxLines property, then this text will be added to indicate a truncation has happened. Default value is null, and means avoiding marking the truncation. A useful value of this property could be e.g. "..." (contributed by dperezcar@fcc.es)

useAscender

protected boolean useAscender
Indicates that the largest ascender height should be used to determine the height of the first line. Note that this only has an effect when rendered to PDF. Setting this to true can help with vertical alignment problems.

useBorderPadding

protected boolean useBorderPadding
Adjusts the cell contents to compensate for border widths. Note that this only has an effect when rendered to PDF.

useDescender

protected boolean useDescender
Indicates that the largest descender height should be added to the height of the last line (so characters like y don't dip into the border). Note that this only has an effect when rendered to PDF.

verticalAlignment

protected int verticalAlignment
This is the vertical alignment.

width

protected String width
This is the vertical alignment.

Constructor Details

Cell

public Cell()
Constructs an empty Cell.

Cell

public Cell(Properties attributes)
Returns a Cell that has been constructed taking in account the value of some attributes.
Parameters:
attributes - Some attributes

Cell

public Cell(String content)
Constructs a Cell with a certain content.

The String will be converted into a Paragraph.

Parameters:
content - a String

Cell

public Cell(boolean dummy)
Constructs an empty Cell (for internal use only).
Parameters:
dummy - a dummy value

Cell

public Cell(Element element)
            throws BadElementException
Constructs a Cell with a certain Element.

if the element is a ListItem, Row or Cell, an exception will be thrown.

Parameters:
element - the element
Throws:
BadElementException - when the creator was called with a ListItem, Row or Cell

Method Details

add

public boolean add(Object o)
Add an Object to this cell.
Specified by:
add in interface TextElementArray
Parameters:
o - the object to add
Returns:
always true

addElement

public void addElement(Element element)
            throws BadElementException
Adds an element to this Cell.

Remark: you can't add ListItems, Rows, Cells, JPEGs, GIFs or PNGs to a Cell.

Parameters:
element - The Element to add
Throws:
BadElementException - if the method was called with a ListItem, Row or Cell

bottom

public float bottom()
This method throws an UnsupportedOperationException.
Overrides:
bottom in interface Rectangle
Returns:
NA

bottom

public float bottom(int margin)
This method throws an UnsupportedOperationException.
Parameters:
margin -
Returns:
NA

cellWidth

public String cellWidth()
Gets the width.
Returns:
a value

clear

public void clear()
Clears all the Elements of this Cell.

colspan

public int colspan()
Gets the colspan.
Returns:
a value

fill

(package private)  void fill()
Makes sure there is at least 1 object in the Cell. Otherwise it might not be shown in the table.

getChunks

public ArrayList getChunks()
Gets all the chunks in this element.
Specified by:
getChunks in interface Element
Overrides:
getChunks in interface Rectangle
Returns:
an ArrayList

getDummyCell

public static Cell getDummyCell()
Get dummy cell used when merging inner tables.
Returns:
a cell with colspan 3 and no border

getElements

public Iterator getElements()
Gets an iterator of Elements.
Returns:
an Iterator.

getGroupChange

public boolean getGroupChange()
Does this Cell force a group change?
Returns:
a value

getMaxLines

public int getMaxLines()
Returns:
the maxLines value

getShowTruncation

public String getShowTruncation()
Returns:
the showTruncation value

header

public boolean header()
Is this Cell a header?
Returns:
a value

horizontalAlignment

public int horizontalAlignment()
Gets the horizontal alignment.
Returns:
a value

isEmpty

public boolean isEmpty()
Checks if the Cell is empty.
Returns:
false if there are non-empty Elements in the Cell.

isTable

public boolean isTable()
Checks if the Cell is empty.
Returns:
false if there are non-empty Elements in the Cell.

isTag

public static boolean isTag(String tag)
Checks if a given tag corresponds with this object.
Parameters:
tag - the given tag
Returns:
true if the tag corresponds

isUseAscender

public boolean isUseAscender()
Returns:
useAscender

isUseBorderPadding

public boolean isUseBorderPadding()
Returns:
useBorderPadding

isUseDescender

public boolean isUseDescender()
Returns:
useDescender

leading

public float leading()
Gets the leading.
Returns:
a value

left

public float left()
This method throws an UnsupportedOperationException.
Overrides:
left in interface Rectangle
Returns:
NA

left

public float left(int margin)
This method throws an UnsupportedOperationException.
Parameters:
margin -
Returns:
NA

noWrap

public boolean noWrap()
Get nowrap.
Returns:
a value

process

public boolean process(ElementListener listener)
Processes the element by adding it (or the different parts) to an ElementListener.
Specified by:
process in interface Element
Overrides:
process in interface Rectangle
Parameters:
listener - an ElementListener
Returns:
true if the element was processed successfully

right

public float right()
This method throws an UnsupportedOperationException.
Overrides:
right in interface Rectangle
Returns:
NA

right

public float right(int margin)
This method throws an UnsupportedOperationException.
Parameters:
margin - NA
Returns:
NA

rowspan

public int rowspan()
Gets the rowspan.
Returns:
a value

setBottom

public void setBottom(int value)
This method throws an UnsupportedOperationException.
Parameters:
value - NA

setColspan

public void setColspan(int value)
Sets the colspan.
Parameters:
value - the new value

setGroupChange

public void setGroupChange(boolean value)
Sets group change.
Parameters:
value - the new value

setHeader

public void setHeader(boolean value)
Sets header.
Parameters:
value - the new value

setHorizontalAlignment

public void setHorizontalAlignment(String alignment)
Sets the alignment of this cell.
Parameters:
alignment - the new alignment as a String

setHorizontalAlignment

public void setHorizontalAlignment(int value)
Sets the horizontal alignment.
Parameters:
value - the new value

setLeading

public void setLeading(float value)
Sets the leading.
Parameters:
value - the new value

setLeft

public void setLeft(int value)
This method throws an UnsupportedOperationException.
Parameters:
value - NA

setMaxLines

public void setMaxLines(int value)
Parameters:
value - the maximum number of lines

setNoWrap

public void setNoWrap(boolean value)
Set nowrap.
Parameters:
value - the new value

setRight

public void setRight(int value)
This method throws an UnsupportedOperationException.
Parameters:
value - NA

setRowspan

public void setRowspan(int value)
Sets the rowspan.
Parameters:
value - the new value

setShowTruncation

public void setShowTruncation(String value)
Parameters:
value - Can be null for avoiding marking the truncation.

setTop

public void setTop(int value)
This method throws an UnsupportedOperationException.
Parameters:
value - NA

setUseAscender

public void setUseAscender(boolean use)
Parameters:
use - use ascender height if true

setUseBorderPadding

public void setUseBorderPadding(boolean use)
Parameters:
use - adjust layour for borders if true

setUseDescender

public void setUseDescender(boolean use)
Parameters:
use - use descender height if true

setVerticalAlignment

public void setVerticalAlignment(String alignment)
Sets the alignment of this paragraph.
Parameters:
alignment - the new alignment as a String

setVerticalAlignment

public void setVerticalAlignment(int value)
Sets the vertical alignment.
Parameters:
value - the new value

setWidth

public void setWidth(String value)
Sets the width.
Parameters:
value - the new value

size

public int size()
Gets the number of Elements in the Cell.
Returns:
a size.

top

public float top()
This method throws an UnsupportedOperationException.
Overrides:
top in interface Rectangle
Returns:
NA

top

public float top(int margin)
This method throws an UnsupportedOperationException.
Parameters:
margin -
Returns:
NA

type

public int type()
Gets the type of the text element.
Specified by:
type in interface Element
Overrides:
type in interface Rectangle
Returns:
a type

verticalAlignment

public int verticalAlignment()
Gets the vertical alignment.
Returns:
a value