org.apache.poi.xslf.usermodel

## Class XSLFTableCell

- java.lang.Object
- - org.apache.poi.xslf.usermodel.XSLFShape
  - - org.apache.poi.xslf.usermodel.XSLFSimpleShape
    - - org.apache.poi.xslf.usermodel.XSLFTextShape
      - - org.apache.poi.xslf.usermodel.XSLFTableCell

- All Implemented Interfaces:
    java.lang.Iterable<XSLFTextParagraph>, IAdjustableShape, PlaceableShape<XSLFShape,XSLFTextParagraph>, Shape<XSLFShape,XSLFTextParagraph>, SimpleShape<XSLFShape,XSLFTextParagraph>, TableCell<XSLFShape,XSLFTextParagraph>, TextShape<XSLFShape,XSLFTextParagraph>, TextContainer

      public class XSLFTableCell
      extends XSLFTextShape
      implements TableCell<XSLFShape,XSLFTextParagraph>

  Represents a cell of a table in a .pptx presentation

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.poi.xslf.usermodel.XSLFShape

      `XSLFShape.ReparseFactory<T extends org.apache.xmlbeans.XmlObject>`

    - ### Nested classes/interfaces inherited from interface org.apache.poi.sl.usermodel.TableCell

      `TableCell.BorderEdge`

    - ### Nested classes/interfaces inherited from interface org.apache.poi.sl.usermodel.TextShape

      `TextShape.TextAutofit, TextShape.TextDirection, TextShape.TextPlaceholder`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.awt.geom.Rectangle2D` | `getAnchor()` Returns the anchor (the bounding box rectangle) of this shape.
    `StrokeStyle.LineCap` | `getBorderCap(TableCell.BorderEdge edge)`
    `java.awt.Color` | `getBorderColor(TableCell.BorderEdge edge)`
    `StrokeStyle.LineCompound` | `getBorderCompound(TableCell.BorderEdge edge)`
    `StrokeStyle.LineDash` | `getBorderDash(TableCell.BorderEdge edge)`
    `StrokeStyle` | `getBorderStyle(TableCell.BorderEdge edge)` Return line style of given edge or `null` if border is not defined
    `java.lang.Double` | `getBorderWidth(TableCell.BorderEdge edge)`
    `protected org.openxmlformats.schemas.drawingml.x2006.main.CTTableCellProperties` | `getCellProperties(boolean create)`
    `java.awt.Color` | `getFillColor()` Returns the solid color fill.
    `PaintStyle` | `getFillPaint()`
    `int` | `getGridSpan()` Get the number of columns to be spanned/merged
    `int` | `getRowSpan()` Get the number of rows to be spanned/merged
    `protected org.apache.xmlbeans.XmlObject` | `getShapeProperties()` Return the shape specific (visual) properties
    `protected org.openxmlformats.schemas.drawingml.x2006.main.CTTextBody` | `getTextBody(boolean create)`
    `TextShape.TextDirection` | `getTextDirection()`
    `VerticalAlignment` | `getVerticalAlignment()` Returns the type of vertical alignment for the text.
    `protected org.openxmlformats.schemas.drawingml.x2006.main.CTTransform2D` | `getXfrm()` Return a fake-xfrm which is used for calculating the text height
    `boolean` | `isMerged()` Return if this cell is part of a merged cell.
    `protected org.apache.poi.xslf.usermodel.XSLFTableCell.XSLFCellTextParagraph` | `newTextParagraph(org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraph p)` Helper method to allow subclasses to provide their own text paragraph
    `void` | `removeBorder(TableCell.BorderEdge edge)` Remove all line attributes of the given border edge
    `void` | `setAnchor(java.awt.geom.Rectangle2D anchor)` There's no real anchor for table cells - this method is used to temporarily store the location of the cell for a later retrieval, e.g.
    `void` | `setBorderCap(TableCell.BorderEdge edge, StrokeStyle.LineCap cap)`
    `void` | `setBorderColor(TableCell.BorderEdge edge, java.awt.Color color)` Convenience method for setting the border color.
    `void` | `setBorderCompound(TableCell.BorderEdge edge, StrokeStyle.LineCompound compound)` Convenience method for setting the border line compound.
    `void` | `setBorderDash(TableCell.BorderEdge edge, StrokeStyle.LineDash dash)` Convenience method for setting the border line dash.
    `void` | `setBorderStyle(TableCell.BorderEdge edge, StrokeStyle style)` Sets the `StrokeStyle` of the given border edge.
    `void` | `setBorderWidth(TableCell.BorderEdge edge, double width)` Convenience method for setting the border width.
    `void` | `setBottomInset(double margin)` Sets the bottom margin.
    `void` | `setFillColor(java.awt.Color color)` Specifies a solid color fill.
    `void` | `setLeftInset(double margin)` Sets the left margin.
    `void` | `setRightInset(double margin)` Sets the right margin.
    `void` | `setTextDirection(TextShape.TextDirection orientation)` sets the vertical orientation
    `void` | `setTopInset(double margin)` Sets the top margin.
    `void` | `setVerticalAlignment(VerticalAlignment anchor)` Sets the type of vertical alignment for the text.

    - ### Methods inherited from class org.apache.poi.xslf.usermodel.XSLFTextShape

      `addNewTextParagraph, appendText, clearText, findDefinedParagraphProperty, findDefinedRunProperty, getBottomInset, getInsets, getLeftInset, getRightInset, getText, getTextAutofit, getTextBody, getTextBodyPr, getTextBodyPr, getTextHeight, getTextHeight, getTextParagraphs, getTextPlaceholder, getTextRotation, getTextType, getTopInset, getWordWrap, isHorizontalCentered, iterator, resizeToFitText, resizeToFitText, setHorizontalCentered, setInsets, setPlaceholder, setText, setTextAutofit, setTextPlaceholder, setTextRotation, setWordWrap`

    - ### Methods inherited from class org.apache.poi.xslf.usermodel.XSLFSimpleShape

      `createHyperlink, getAdjustValue, getFillStyle, getFlipHorizontal, getFlipVertical, getGeometry, getHyperlink, getLineCap, getLineColor, getLineCompound, getLineDash, getLineDecoration, getLineHeadDecoration, getLineHeadLength, getLineHeadWidth, getLinePaint, getLineTailDecoration, getLineTailLength, getLineTailWidth, getLineWidth, getRotation, getShadow, getShapeType, getStrokeStyle, getXfrm, setFlipHorizontal, setFlipVertical, setLineCap, setLineColor, setLineCompound, setLineDash, setLineHeadDecoration, setLineHeadLength, setLineHeadWidth, setLineTailDecoration, setLineTailLength, setLineTailWidth, setLineWidth, setRotation, setShapeType, setStrokeStyle`

    - ### Methods inherited from class org.apache.poi.xslf.usermodel.XSLFShape

      `draw, fetchShapeProperty, getBgPr, getBgRef, getChild, getCNvPr, getGrpSpPr, getParent, getPlaceholder, getPlaceholderDetails, getShapeId, getShapeName, getSheet, getSpStyle, getXmlObject, isPlaceholder, selectPaint, selectPaint, selectPaint, selectPaint, selectPaint, selectProperty, selectProperty, setParent`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.TextShape

      `appendText, getInsets, getText, getTextHeight, getTextHeight, getTextParagraphs, getTextPlaceholder, getTextRotation, getWordWrap, isHorizontalCentered, resizeToFitText, resizeToFitText, setHorizontalCentered, setInsets, setText, setTextPlaceholder, setTextRotation, setWordWrap`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.SimpleShape

      `createHyperlink, getFillStyle, getGeometry, getHyperlink, getLineDecoration, getPlaceholder, getPlaceholderDetails, getShadow, getShapeType, getStrokeStyle, isPlaceholder, setPlaceholder, setShapeType, setStrokeStyle`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.Shape

      `draw, getParent, getShapeId, getShapeName, getSheet`

    - ### Methods inherited from interface org.apache.poi.sl.draw.geom.IAdjustableShape

      `getAdjustValue`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.PlaceableShape

      `getFlipHorizontal, getFlipVertical, getParent, getRotation, getSheet, setFlipHorizontal, setFlipVertical, setRotation`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, iterator, spliterator`

- - ### Method Detail

    - #### getTextBody

          protected org.openxmlformats.schemas.drawingml.x2006.main.CTTextBody getTextBody(boolean create)

      Specified by:
        `getTextBody` in class `XSLFTextShape`

    - #### getCellProperties

          protected org.openxmlformats.schemas.drawingml.x2006.main.CTTableCellProperties getCellProperties(boolean create)

    - #### setLeftInset

          public void setLeftInset(double margin)

      Description copied from class: `XSLFTextShape`
      Sets the left margin.
      Overrides:
        `setLeftInset` in class `XSLFTextShape`
      Parameters:
        `margin` - the left margin
      See Also:
        `XSLFTextShape.getLeftInset()`

    - #### setRightInset

          public void setRightInset(double margin)

      Description copied from class: `XSLFTextShape`
      Sets the right margin.
      Overrides:
        `setRightInset` in class `XSLFTextShape`
      Parameters:
        `margin` - the right margin
      See Also:
        `XSLFTextShape.getRightInset()`

    - #### setTopInset

          public void setTopInset(double margin)

      Description copied from class: `XSLFTextShape`
      Sets the top margin.
      Overrides:
        `setTopInset` in class `XSLFTextShape`
      Parameters:
        `margin` - the top margin
      See Also:
        `XSLFTextShape.getTopInset()`

    - #### setBottomInset

          public void setBottomInset(double margin)

      Description copied from class: `XSLFTextShape`
      Sets the bottom margin.
      Overrides:
        `setBottomInset` in class `XSLFTextShape`
      Parameters:
        `margin` - the bottom margin
      See Also:
        `XSLFTextShape.getBottomInset()`

    - #### removeBorder

          public void removeBorder(TableCell.BorderEdge edge)

      Description copied from interface: `TableCell`
      Remove all line attributes of the given border edge
      Specified by:
        `removeBorder` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - the border edge to be cleared

    - #### getBorderStyle

          public StrokeStyle getBorderStyle(TableCell.BorderEdge edge)

      Description copied from interface: `TableCell`
      Return line style of given edge or `null` if border is not defined
      Specified by:
        `getBorderStyle` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - the border edge
      Returns:
        line style of given edge or `null` if border is not defined

    - #### setBorderStyle

          public void setBorderStyle(TableCell.BorderEdge edge,
                                     StrokeStyle style)

      Description copied from interface: `TableCell`
      Sets the `StrokeStyle` of the given border edge. A `null` property of the style is ignored.
      Specified by:
        `setBorderStyle` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - border edge
        `style` - the new stroke style

    - #### getBorderWidth

          public java.lang.Double getBorderWidth(TableCell.BorderEdge edge)

    - #### setBorderWidth

          public void setBorderWidth(TableCell.BorderEdge edge,
                                     double width)

      Description copied from interface: `TableCell`
      Convenience method for setting the border width.
      Specified by:
        `setBorderWidth` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - border edge
        `width` - the new border width

    - #### setBorderColor

          public void setBorderColor(TableCell.BorderEdge edge,
                                     java.awt.Color color)

      Description copied from interface: `TableCell`
      Convenience method for setting the border color.
      Specified by:
        `setBorderColor` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - border edge
        `color` - the new border color

    - #### getBorderColor

          public java.awt.Color getBorderColor(TableCell.BorderEdge edge)

    - #### getBorderCompound

          public StrokeStyle.LineCompound getBorderCompound(TableCell.BorderEdge edge)

    - #### setBorderCompound

          public void setBorderCompound(TableCell.BorderEdge edge,
                                        StrokeStyle.LineCompound compound)

      Description copied from interface: `TableCell`
      Convenience method for setting the border line compound.
      Specified by:
        `setBorderCompound` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - border edge
        `compound` - the new border line compound

    - #### getBorderDash

          public StrokeStyle.LineDash getBorderDash(TableCell.BorderEdge edge)

    - #### setBorderDash

          public void setBorderDash(TableCell.BorderEdge edge,
                                    StrokeStyle.LineDash dash)

      Description copied from interface: `TableCell`
      Convenience method for setting the border line dash.
      Specified by:
        `setBorderDash` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Parameters:
        `edge` - border edge
        `dash` - the new border line dash

    - #### getBorderCap

          public StrokeStyle.LineCap getBorderCap(TableCell.BorderEdge edge)

    - #### setBorderCap

          public void setBorderCap(TableCell.BorderEdge edge,
                                   StrokeStyle.LineCap cap)

    - #### setFillColor

          public void setFillColor(java.awt.Color color)

      Specifies a solid color fill. The shape is filled entirely with the specified color.
      Specified by:
        `setFillColor` in interface `SimpleShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `setFillColor` in class `XSLFSimpleShape`
      Parameters:
        `color` - the solid color fill. The value of `null` unsets the solidFIll attribute from the underlying xml

    - #### getFillColor

          public java.awt.Color getFillColor()

      Description copied from interface: `SimpleShape`
      Returns the solid color fill.
      Specified by:
        `getFillColor` in interface `SimpleShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `getFillColor` in class `XSLFSimpleShape`
      Returns:
        solid fill color of null if not set

    - #### getFillPaint

          public PaintStyle getFillPaint()

      Overrides:
        `getFillPaint` in class `XSLFShape`

    - #### getGridSpan

          public int getGridSpan()

      Description copied from interface: `TableCell`
      Get the number of columns to be spanned/merged
      Specified by:
        `getGridSpan` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Returns:
        the grid span

    - #### getRowSpan

          public int getRowSpan()

      Description copied from interface: `TableCell`
      Get the number of rows to be spanned/merged
      Specified by:
        `getRowSpan` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Returns:
        the row span

    - #### setVerticalAlignment

          public void setVerticalAlignment(VerticalAlignment anchor)

      Description copied from interface: `TextShape`
      Sets the type of vertical alignment for the text.
      Specified by:
        `setVerticalAlignment` in interface `TextShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `setVerticalAlignment` in class `XSLFTextShape`
      Parameters:
        `anchor` - - the type of alignment. A `null` values unsets this property.

    - #### getVerticalAlignment

          public VerticalAlignment getVerticalAlignment()

      Description copied from interface: `TextShape`
      Returns the type of vertical alignment for the text.
      Specified by:
        `getVerticalAlignment` in interface `TextShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `getVerticalAlignment` in class `XSLFTextShape`
      Returns:
        the type of vertical alignment

    - #### setTextDirection

          public void setTextDirection(TextShape.TextDirection orientation)

      Description copied from interface: `TextShape`
      sets the vertical orientation
      Specified by:
        `setTextDirection` in interface `TextShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `setTextDirection` in class `XSLFTextShape`
      Parameters:
        `orientation` - vertical orientation of the text
      Since:
        POI 3.15-beta2

    - #### getTextDirection

          public TextShape.TextDirection getTextDirection()

      Specified by:
        `getTextDirection` in interface `TextShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `getTextDirection` in class `XSLFTextShape`
      Returns:
        vertical orientation of the text
      Since:
        POI 3.15-beta2

    - #### getXfrm

          protected org.openxmlformats.schemas.drawingml.x2006.main.CTTransform2D getXfrm()

      Return a fake-xfrm which is used for calculating the text height

    - #### setAnchor

          public void setAnchor(java.awt.geom.Rectangle2D anchor)

      There's no real anchor for table cells - this method is used to temporarily store the location of the cell for a later retrieval, e.g. for rendering
      Specified by:
        `setAnchor` in interface `PlaceableShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `setAnchor` in class `XSLFSimpleShape`
      Parameters:
        `anchor` - the position of this shape within the drawing canvas. The coordinates are expressed in points
      Since:
        POI 3.15-beta2

    - #### getAnchor

          public java.awt.geom.Rectangle2D getAnchor()

      Description copied from interface: `Shape`
      Returns the anchor (the bounding box rectangle) of this shape. All coordinates are expressed in points (72 dpi).
      Specified by:
        `getAnchor` in interface `PlaceableShape<XSLFShape,XSLFTextParagraph>`
      Specified by:
        `getAnchor` in interface `Shape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `getAnchor` in class `XSLFSimpleShape`
      Returns:
        the anchor of this shape
      Since:
        POI 3.15-beta2

    - #### isMerged

          public boolean isMerged()

      Description copied from interface: `TableCell`
      Return if this cell is part of a merged cell. The top/left cell of a merged region is not regarded as merged - its grid and/or row span is greater than one.
      Specified by:
        `isMerged` in interface `TableCell<XSLFShape,XSLFTextParagraph>`
      Returns:
        true if this a merged cell
      Since:
        POI 3.15-beta2

    - #### newTextParagraph

          protected org.apache.poi.xslf.usermodel.XSLFTableCell.XSLFCellTextParagraph newTextParagraph(org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraph p)

      Description copied from class: `XSLFTextShape`
      Helper method to allow subclasses to provide their own text paragraph
      Overrides:
        `newTextParagraph` in class `XSLFTextShape`
      Parameters:
        `p` - the xml reference
      Returns:
        a new text paragraph
      Since:
        POI 3.15-beta2

    - #### getShapeProperties

          protected org.apache.xmlbeans.XmlObject getShapeProperties()

      Description copied from class: `XSLFShape`
      Return the shape specific (visual) properties
      Overrides:
        `getShapeProperties` in class `XSLFShape`
      Returns:
        the shape specific properties

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.