Package com.aowagie.text
Class Cell
- java.lang.Object
-
- com.aowagie.text.Rectangle
-
- com.aowagie.text.Cell
-
- All Implemented Interfaces:
Element
,TextElementArray
public class Cell extends Rectangle implements TextElementArray
ACell
is aRectangle
containing otherElement
s.A
Cell
must be added to aTable
. TheTable
will place theCell
in aRow
.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");
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayList
arrayList
TheArrayList
ofElement
s that are part of the content of the Cell.private int
colspan
The colspan of the cell.private boolean
groupChange
Does thisCell
force a group change?private boolean
header
Is thisCell
a header?private int
horizontalAlignment
The horizontal alignment of the cell content.private float
leading
The leading of the content inside the cell.private int
maxLines
Maximum number of lines allowed in the cell.private boolean
percentage
private int
rowspan
The rowspan of the cell.private java.lang.String
showTruncation
If a truncation happens due to the maxLines property, then this text will be added to indicate a truncation has happened.private boolean
useAscender
Indicates that the largest ascender height should be used to determine the height of the first line.private boolean
useBorderPadding
Adjusts the cell contents to compensate for border widths.private 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).private int
verticalAlignment
The vertical alignment of the cell content.private float
width
The width of the cell as a String.-
Fields inherited from class com.aowagie.text.Rectangle
border, borderWidth, BOTTOM, BOX, LEFT, llx, lly, NO_BORDER, RIGHT, rotation, TOP, UNDEFINED, urx, ury
-
Fields inherited from interface com.aowagie.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, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, HEADER, IMGRAW, IMGTEMPLATE, JBIG2, JPEG, JPEG2000, KEYWORDS, LIST, LISTITEM, MARKED, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE, YMARK
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(java.lang.Object o)
Add anObject
to this cell.private void
addElement(Element element)
Adds an element to thisCell
.private void
clear()
Clears all theElement
s of thisCell
.(package private) PdfPCell
createPdfPCell()
Creates a PdfPCell based on this Cell object.(package private) void
fill()
Makes sure there is at least 1 object in the Cell.float
getBottom()
This method throws anUnsupportedOperationException
.java.util.ArrayList
getChunks()
Gets all the chunks in this element.int
getColspan()
Gets the colspan.private static Cell
getDummyCell()
Get dummy cell used when merging inner tables.java.util.Iterator
getElements()
Gets an iterator ofElement
s.boolean
getGroupChange()
Does thisCell
force a group change?int
getHorizontalAlignment()
Gets the horizontal alignment.float
getLeading()
Gets the leading.float
getLeft()
This method throws anUnsupportedOperationException
.int
getMaxLines()
Getter for maxLinesfloat
getRight()
This method throws anUnsupportedOperationException
.int
getRowspan()
Gets the rowspan.java.lang.String
getShowTruncation()
Getter for showTruncationfloat
getTop()
This method throws anUnsupportedOperationException
.int
getVerticalAlignment()
Gets the vertical alignment.float
getWidth()
Gets the width.java.lang.String
getWidthAsString()
Gets the width as a String.boolean
isEmpty()
Checks if theCell
is empty.boolean
isHeader()
Is thisCell
a header?boolean
isTable()
Checks if thisCell
is a placeholder for a (nested) table.boolean
isUseAscender()
Gets the value of useAscenderboolean
isUseBorderPadding()
Gets the value of useBorderPadding.boolean
isUseDescender()
gets the value of useDescenderboolean
process(ElementListener listener)
Processes the element by adding it (or the different parts) to anElementListener
.void
setBottom(int value)
This method throws anUnsupportedOperationException
.void
setColspan(int value)
Sets the colspan.void
setGroupChange(boolean value)
Sets group change.void
setHeader(boolean value)
Sets header.void
setHorizontalAlignment(int value)
Sets the horizontal alignment.void
setHorizontalAlignment(java.lang.String alignment)
Sets the alignment of this cell.void
setLeading(float value)
Sets the leading.void
setLeft(int value)
This method throws anUnsupportedOperationException
.void
setMaxLines(int value)
Setter for maxLinesvoid
setRight(int value)
This method throws anUnsupportedOperationException
.void
setRowspan(int value)
Sets the rowspan.void
setShowTruncation(java.lang.String value)
Setter for showTruncationvoid
setTop(int value)
This method throws anUnsupportedOperationException
.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(int value)
Sets the vertical alignment.void
setVerticalAlignment(java.lang.String alignment)
Sets the alignment of this paragraph.void
setWidth(float value)
Sets the width.void
setWidth(java.lang.String value)
Sets the width.private int
size()
Gets the number ofElement
s in the Cell.int
type()
Gets the type of the text element.-
Methods inherited from class com.aowagie.text.Rectangle
cloneNonPositionParameters, disableBorderSide, enableBorderSide, getBackgroundColor, getBorder, getBorderColor, getBorderColorBottom, getBorderColorLeft, getBorderColorRight, getBorderColorTop, getBorderWidth, getBorderWidthBottom, getBorderWidthLeft, getBorderWidthRight, getBorderWidthTop, getBottom, getGrayFill, getHeight, getLeft, getRight, getRotation, getTop, hasBorder, hasBorders, isContent, isNestable, isUseVariableBorders, normalize, rectangle, rotate, setBackgroundColor, setBorder, setBorderColor, setBorderColorBottom, setBorderColorLeft, setBorderColorRight, setBorderColorTop, setBorderWidth, setBorderWidthBottom, setBorderWidthLeft, setBorderWidthRight, setBorderWidthTop, setBottom, setGrayFill, setLeft, setRight, setTop, setUseVariableBorders, softCloneNonPositionParameters, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.aowagie.text.Element
isContent, isNestable, toString
-
-
-
-
Field Detail
-
arrayList
private java.util.ArrayList arrayList
TheArrayList
ofElement
s that are part of the content of the Cell.
-
horizontalAlignment
private int horizontalAlignment
The horizontal alignment of the cell content.
-
verticalAlignment
private int verticalAlignment
The vertical alignment of the cell content.
-
width
private float width
The width of the cell as a String. It can be an absolute value "100" or a percentage "20%".
-
percentage
private boolean percentage
-
colspan
private int colspan
The colspan of the cell.
-
rowspan
private int rowspan
The rowspan of the cell.
-
leading
private float leading
The leading of the content inside the cell.
-
header
private boolean header
Is thisCell
a header?
-
maxLines
private 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)
-
showTruncation
private java.lang.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
private 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.
-
useDescender
private 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.
-
useBorderPadding
private boolean useBorderPadding
Adjusts the cell contents to compensate for border widths. Note that this only has an effect when rendered to PDF.
-
groupChange
private boolean groupChange
Does thisCell
force a group change?
-
-
Constructor Detail
-
Cell
public Cell()
Constructs an emptyCell
.
-
Cell
Cell(boolean dummy)
Constructs an emptyCell
(for internal use only).- Parameters:
dummy
- a dummy value
-
Cell
Cell(Element element) throws BadElementException
Constructs aCell
with a certainElement
.if the element is a
ListItem
,Row
orCell
, an exception will be thrown.- Parameters:
element
- the element- Throws:
BadElementException
- when the creator was called with aListItem
,Row
orCell
-
-
Method Detail
-
process
public boolean process(ElementListener listener)
Processes the element by adding it (or the different parts) to anElementListener
.
-
type
public int type()
Gets the type of the text element.
-
getChunks
public java.util.ArrayList getChunks()
Gets all the chunks in this element.
-
getHorizontalAlignment
public int getHorizontalAlignment()
Gets the horizontal alignment.- Returns:
- a value
-
setHorizontalAlignment
public void setHorizontalAlignment(int value)
Sets the horizontal alignment.- Parameters:
value
- the new value
-
setHorizontalAlignment
public void setHorizontalAlignment(java.lang.String alignment)
Sets the alignment of this cell. This methods allows you to set the alignment as a String.- Parameters:
alignment
- the new alignment as aString
-
getVerticalAlignment
public int getVerticalAlignment()
Gets the vertical alignment.- Returns:
- a value
-
setVerticalAlignment
public void setVerticalAlignment(int value)
Sets the vertical alignment.- Parameters:
value
- the new value
-
setVerticalAlignment
public void setVerticalAlignment(java.lang.String alignment)
Sets the alignment of this paragraph.- Parameters:
alignment
- the new alignment as aString
-
setWidth
public void setWidth(float value)
Sets the width.- Parameters:
value
- the new value
-
setWidth
public void setWidth(java.lang.String value)
Sets the width. It can be an absolute value "100" or a percentage "20%"- Parameters:
value
- the new value
-
getWidth
public float getWidth()
Gets the width.
-
getWidthAsString
public java.lang.String getWidthAsString()
Gets the width as a String.- Returns:
- a value
-
setColspan
public void setColspan(int value)
Sets the colspan.- Parameters:
value
- the new value
-
getColspan
public int getColspan()
Gets the colspan.- Returns:
- a value
-
setRowspan
public void setRowspan(int value)
Sets the rowspan.- Parameters:
value
- the new value
-
getRowspan
public int getRowspan()
Gets the rowspan.- Returns:
- a value
-
setLeading
public void setLeading(float value)
Sets the leading.- Parameters:
value
- the new value
-
getLeading
public float getLeading()
Gets the leading.- Returns:
- a value
-
setHeader
public void setHeader(boolean value)
Sets header.- Parameters:
value
- the new value
-
isHeader
public boolean isHeader()
Is thisCell
a header?- Returns:
- a value
-
setMaxLines
public void setMaxLines(int value)
Setter for maxLines- Parameters:
value
- the maximum number of lines
-
getMaxLines
public int getMaxLines()
Getter for maxLines- Returns:
- the maxLines value
-
setShowTruncation
public void setShowTruncation(java.lang.String value)
Setter for showTruncation- Parameters:
value
- Can be null for avoiding marking the truncation.
-
getShowTruncation
public java.lang.String getShowTruncation()
Getter for showTruncation- Returns:
- the showTruncation value
-
setUseAscender
public void setUseAscender(boolean use)
Sets the value of useAscender.- Parameters:
use
- use ascender height if true
-
isUseAscender
public boolean isUseAscender()
Gets the value of useAscender- Returns:
- useAscender
-
setUseDescender
public void setUseDescender(boolean use)
Sets the value of useDescender.- Parameters:
use
- use descender height if true
-
isUseDescender
public boolean isUseDescender()
gets the value of useDescender- Returns:
- useDescender
-
setUseBorderPadding
public void setUseBorderPadding(boolean use)
Sets the value of useBorderPadding.- Parameters:
use
- adjust layout for borders if true
-
isUseBorderPadding
public boolean isUseBorderPadding()
Gets the value of useBorderPadding.- Returns:
- useBorderPadding
-
getGroupChange
public boolean getGroupChange()
Does thisCell
force a group change?- Returns:
- a value
-
setGroupChange
public void setGroupChange(boolean value)
Sets group change.- Parameters:
value
- the new value
-
size
private int size()
Gets the number ofElement
s in the Cell.- Returns:
- a
size
.
-
getElements
public java.util.Iterator getElements()
Gets an iterator ofElement
s.- Returns:
- an
Iterator
.
-
clear
private void clear()
Clears all theElement
s of thisCell
.
-
isEmpty
public boolean isEmpty()
Checks if theCell
is empty.- Returns:
false
if there are non-emptyElement
s in theCell
.
-
fill
void fill()
Makes sure there is at least 1 object in the Cell. Otherwise it might not be shown in the table.
-
isTable
public boolean isTable()
Checks if thisCell
is a placeholder for a (nested) table.- Returns:
- true if the only element in this cell is a table
-
addElement
private void addElement(Element element) throws BadElementException
Adds an element to thisCell
.Remark: you can't add
ListItem
s,Row
s,Cell
s,JPEG
s,GIF
s orPNG
s to aCell
.- Parameters:
element
- TheElement
to add- Throws:
BadElementException
- if the method was called with aListItem
,Row
orCell
-
add
public boolean add(java.lang.Object o)
Add anObject
to this cell.- Specified by:
add
in interfaceTextElementArray
- Parameters:
o
- the object to add- Returns:
- always
true
-
getDummyCell
private static Cell getDummyCell()
Get dummy cell used when merging inner tables.- Returns:
- a cell with colspan 3 and no border
-
createPdfPCell
PdfPCell createPdfPCell() throws BadElementException
Creates a PdfPCell based on this Cell object.- Returns:
- a PdfPCell
- Throws:
BadElementException
- on error
-
getTop
public float getTop()
This method throws anUnsupportedOperationException
.
-
getBottom
public float getBottom()
This method throws anUnsupportedOperationException
.
-
getLeft
public float getLeft()
This method throws anUnsupportedOperationException
.
-
getRight
public float getRight()
This method throws anUnsupportedOperationException
.
-
setTop
public void setTop(int value)
This method throws anUnsupportedOperationException
.- Parameters:
value
- NA
-
setBottom
public void setBottom(int value)
This method throws anUnsupportedOperationException
.- Parameters:
value
- NA
-
setLeft
public void setLeft(int value)
This method throws anUnsupportedOperationException
.- Parameters:
value
- NA
-
setRight
public void setRight(int value)
This method throws anUnsupportedOperationException
.- Parameters:
value
- NA
-
-