org.apache.poi.xwpf.usermodel
Class XWPFTable

java.lang.Object
  extended by org.apache.poi.xwpf.usermodel.XWPFTable
All Implemented Interfaces:
IBodyElement, ISDTContents

public class XWPFTable
extends java.lang.Object
implements IBodyElement, ISDTContents

Sketch of XWPFTable class. Only table's text is being hold.

Specifies the contents of a table present in the document. A table is a set of paragraphs (and other block-level content) arranged in rows and columns.


Nested Class Summary
static class XWPFTable.XWPFBorderType
           
 
Field Summary
protected  IBody part
           
protected  java.util.List<XWPFTableRow> tableRows
           
protected  java.lang.StringBuffer text
           
 
Constructor Summary
XWPFTable(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl table, IBody part)
           
XWPFTable(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl table, IBody part, int row, int col)
           
 
Method Summary
 void addNewCol()
          add a new column for each row in this table
 void addNewRowBetween(int start, int end)
           
 void addRow(XWPFTableRow row)
          add a new Row to the table
 boolean addRow(XWPFTableRow row, int pos)
          add a new Row to the table at position pos
 XWPFTableRow createRow()
          create a new XWPFTableRow object with as many cells as the number of columns defined in that moment
 IBody getBody()
           
 int getCellMarginBottom()
           
 int getCellMarginLeft()
           
 int getCellMarginRight()
           
 int getCellMarginTop()
           
 int getColBandSize()
           
 org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl getCTTbl()
           
 BodyElementType getElementType()
          returns the type of the BodyElement Table
 java.lang.String getInsideHBorderColor()
           
 int getInsideHBorderSize()
           
 int getInsideHBorderSpace()
           
 XWPFTable.XWPFBorderType getInsideHBorderType()
           
 java.lang.String getInsideVBorderColor()
           
 int getInsideVBorderSize()
           
 int getInsideVBorderSpace()
           
 XWPFTable.XWPFBorderType getInsideVBorderType()
           
 int getNumberOfRows()
           
 POIXMLDocumentPart getPart()
          returns the part of the bodyElement
 BodyType getPartType()
          returns the partType of the bodyPart which owns the bodyElement
 XWPFTableRow getRow(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTRow row)
          returns the XWPFRow which belongs to the CTRow row if this row is not existing in the table null will be returned
 XWPFTableRow getRow(int pos)
           
 int getRowBandSize()
           
 java.util.List<XWPFTableRow> getRows()
           
 java.lang.String getStyleID()
          get the StyleID of the table
 java.lang.String getText()
          Convenience method to extract text in cells.
 int getWidth()
           
 XWPFTableRow insertNewTableRow(int pos)
          inserts a new tablerow
 boolean removeRow(int pos)
          Remove a row at position pos from the table
 void setCellMargins(int top, int left, int bottom, int right)
           
 void setColBandSize(int size)
           
 void setInsideHBorder(XWPFTable.XWPFBorderType type, int size, int space, java.lang.String rgbColor)
           
 void setInsideVBorder(XWPFTable.XWPFBorderType type, int size, int space, java.lang.String rgbColor)
           
 void setRowBandSize(int size)
           
 void setStyleID(java.lang.String styleName)
          Set the table style.
 void setWidth(int width)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

text

protected java.lang.StringBuffer text

tableRows

protected java.util.List<XWPFTableRow> tableRows

part

protected IBody part
Constructor Detail

XWPFTable

public XWPFTable(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl table,
                 IBody part,
                 int row,
                 int col)

XWPFTable

public XWPFTable(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl table,
                 IBody part)
Method Detail

getCTTbl

@Internal
public org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl getCTTbl()
Returns:
ctTbl object

getText

public java.lang.String getText()
Convenience method to extract text in cells. This does not extract text recursively in cells, and it does not currently include text in SDT (form) components.

To get all text within a table, see XWPFWordExtractor's appendTableText as an example.

Returns:
text

addNewRowBetween

public void addNewRowBetween(int start,
                             int end)

addNewCol

public void addNewCol()
add a new column for each row in this table


createRow

public XWPFTableRow createRow()
create a new XWPFTableRow object with as many cells as the number of columns defined in that moment

Returns:
tableRow

getRow

public XWPFTableRow getRow(int pos)
Parameters:
pos - - index of the row
Returns:
the row at the position specified or null if no rows is defined or if the position is greather than the max size of rows array

getWidth

public int getWidth()
Returns:
width value

setWidth

public void setWidth(int width)
Parameters:
width -

getNumberOfRows

public int getNumberOfRows()
Returns:
number of rows in table

getStyleID

public java.lang.String getStyleID()
get the StyleID of the table

Returns:
style-ID of the table

setStyleID

public void setStyleID(java.lang.String styleName)
Set the table style. If the style is not defined in the document, MS Word will set the table style to "Normal".

Parameters:
styleName - - the style name to apply to this table

getInsideHBorderType

public XWPFTable.XWPFBorderType getInsideHBorderType()

getInsideHBorderSize

public int getInsideHBorderSize()

getInsideHBorderSpace

public int getInsideHBorderSpace()

getInsideHBorderColor

public java.lang.String getInsideHBorderColor()

getInsideVBorderType

public XWPFTable.XWPFBorderType getInsideVBorderType()

getInsideVBorderSize

public int getInsideVBorderSize()

getInsideVBorderSpace

public int getInsideVBorderSpace()

getInsideVBorderColor

public java.lang.String getInsideVBorderColor()

getRowBandSize

public int getRowBandSize()

setRowBandSize

public void setRowBandSize(int size)

getColBandSize

public int getColBandSize()

setColBandSize

public void setColBandSize(int size)

setInsideHBorder

public void setInsideHBorder(XWPFTable.XWPFBorderType type,
                             int size,
                             int space,
                             java.lang.String rgbColor)

setInsideVBorder

public void setInsideVBorder(XWPFTable.XWPFBorderType type,
                             int size,
                             int space,
                             java.lang.String rgbColor)

getCellMarginTop

public int getCellMarginTop()

getCellMarginLeft

public int getCellMarginLeft()

getCellMarginBottom

public int getCellMarginBottom()

getCellMarginRight

public int getCellMarginRight()

setCellMargins

public void setCellMargins(int top,
                           int left,
                           int bottom,
                           int right)

addRow

public void addRow(XWPFTableRow row)
add a new Row to the table

Parameters:
row - the row which should be added

addRow

public boolean addRow(XWPFTableRow row,
                      int pos)
add a new Row to the table at position pos

Parameters:
row - the row which should be added

insertNewTableRow

public XWPFTableRow insertNewTableRow(int pos)
inserts a new tablerow

Parameters:
pos -
Returns:
the inserted row

removeRow

public boolean removeRow(int pos)
                  throws java.lang.IndexOutOfBoundsException
Remove a row at position pos from the table

Parameters:
pos - position the Row in the Table
Throws:
java.lang.IndexOutOfBoundsException

getRows

public java.util.List<XWPFTableRow> getRows()

getElementType

public BodyElementType getElementType()
returns the type of the BodyElement Table

Specified by:
getElementType in interface IBodyElement
See Also:
IBodyElement.getElementType()

getBody

public IBody getBody()
Specified by:
getBody in interface IBodyElement

getPart

public POIXMLDocumentPart getPart()
returns the part of the bodyElement

Specified by:
getPart in interface IBodyElement
See Also:
IBody.getPart()

getPartType

public BodyType getPartType()
returns the partType of the bodyPart which owns the bodyElement

Specified by:
getPartType in interface IBodyElement
See Also:
IBody.getPartType()

getRow

public XWPFTableRow getRow(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTRow row)
returns the XWPFRow which belongs to the CTRow row if this row is not existing in the table null will be returned