Class HSSFCellStyle

java.lang.Object
org.apache.poi.hssf.usermodel.HSSFCellStyle
All Implemented Interfaces:
CellStyle

public final class HSSFCellStyle extends Object implements CellStyle
High level representation of the style of a cell in a sheet of a workbook.
See Also:
  • Constructor Details

  • Method Details

    • getIndex

      public short getIndex()
      get the index within the HSSFWorkbook (sequence within the collection of ExtnededFormat objects)
      Specified by:
      getIndex in interface CellStyle
      Returns:
      unique index number of the underlying record this style represents (probably you don't care unless you're comparing which one is which)
    • getParentStyle

      public HSSFCellStyle getParentStyle()
      Return the parent style for this cell style. In most cases this will be null, but in a few cases there'll be a fully defined parent.
    • setDataFormat

      public void setDataFormat(short fmt)
      set the data format (must be a valid format)
      Specified by:
      setDataFormat in interface CellStyle
      See Also:
    • getDataFormat

      public short getDataFormat()
      get the index of the format
      Specified by:
      getDataFormat in interface CellStyle
      See Also:
    • getDataFormatString

      public String getDataFormatString()
      Get the contents of the format string, by looking up the DataFormat against the bound workbook
      Specified by:
      getDataFormatString in interface CellStyle
      Returns:
      the format string or "General" if not found
      See Also:
    • getDataFormatString

      public String getDataFormatString(Workbook workbook)
      Get the contents of the format string, by looking up the DataFormat against the supplied workbook
      Returns:
      the format string or "General" if not found
      See Also:
    • getDataFormatString

      public String getDataFormatString(InternalWorkbook workbook)
      Get the contents of the format string, by looking up the DataFormat against the supplied low level workbook
      See Also:
    • setFont

      public void setFont(Font font)
      set the font for this style
      Specified by:
      setFont in interface CellStyle
      Parameters:
      font - a font object created or retrieved from the HSSFWorkbook object
      See Also:
    • setFont

      public void setFont(HSSFFont font)
    • getFontIndex

      @Deprecated public short getFontIndex()
      Deprecated.
      gets the index of the font for this style
      Specified by:
      getFontIndex in interface CellStyle
      See Also:
    • getFontIndexAsInt

      public int getFontIndexAsInt()
      gets the index of the font for this style
      Specified by:
      getFontIndexAsInt in interface CellStyle
      Since:
      4.0.0
      See Also:
    • getFont

      public HSSFFont getFont(Workbook parentWorkbook)
      gets the font for this style
      Parameters:
      parentWorkbook - The HSSFWorkbook that this style belongs to
      See Also:
    • setHidden

      public void setHidden(boolean hidden)
      set the cell's using this style to be hidden
      Specified by:
      setHidden in interface CellStyle
      Parameters:
      hidden - - whether the cell using this style should be hidden
    • getHidden

      public boolean getHidden()
      get whether the cell's using this style are to be hidden
      Specified by:
      getHidden in interface CellStyle
      Returns:
      hidden - whether the cell using this style should be hidden
    • setLocked

      public void setLocked(boolean locked)
      set the cell's using this style to be locked
      Specified by:
      setLocked in interface CellStyle
      Parameters:
      locked - - whether the cell using this style should be locked
    • getLocked

      public boolean getLocked()
      get whether the cell's using this style are to be locked
      Specified by:
      getLocked in interface CellStyle
      Returns:
      hidden - whether the cell using this style should be locked
    • setQuotePrefixed

      public void setQuotePrefixed(boolean quotePrefix)
      Turn on or off "Quote Prefix" or "123 Prefix" for the style, which is used to tell Excel that the thing which looks like a number or a formula shouldn't be treated as on.
      Specified by:
      setQuotePrefixed in interface CellStyle
    • getQuotePrefixed

      public boolean getQuotePrefixed()
      Is "Quote Prefix" or "123 Prefix" enabled for the cell?
      Specified by:
      getQuotePrefixed in interface CellStyle
    • setAlignment

      public void setAlignment(HorizontalAlignment align)
      set the type of horizontal alignment for the cell
      Specified by:
      setAlignment in interface CellStyle
      Parameters:
      align - - the type of alignment
    • getAlignment

      public HorizontalAlignment getAlignment()
      Description copied from interface: CellStyle
      get the type of horizontal alignment for the cell
      Specified by:
      getAlignment in interface CellStyle
      Returns:
      align - the type of alignment
    • getAlignmentEnum

      public HorizontalAlignment getAlignmentEnum()
      Description copied from interface: CellStyle
      get the type of horizontal alignment for the cell
      Specified by:
      getAlignmentEnum in interface CellStyle
      Returns:
      align - the type of alignment
    • setWrapText

      public void setWrapText(boolean wrapped)
      set whether the text should be wrapped
      Specified by:
      setWrapText in interface CellStyle
      Parameters:
      wrapped - wrap text or not
    • getWrapText

      public boolean getWrapText()
      get whether the text should be wrapped
      Specified by:
      getWrapText in interface CellStyle
      Returns:
      wrap text or not
    • setVerticalAlignment

      public void setVerticalAlignment(VerticalAlignment align)
      set the type of vertical alignment for the cell
      Specified by:
      setVerticalAlignment in interface CellStyle
      Parameters:
      align - the type of alignment
    • getVerticalAlignment

      public VerticalAlignment getVerticalAlignment()
      Description copied from interface: CellStyle
      get the type of vertical alignment for the cell
      Specified by:
      getVerticalAlignment in interface CellStyle
      Returns:
      align the type of alignment
    • getVerticalAlignmentEnum

      public VerticalAlignment getVerticalAlignmentEnum()
      Description copied from interface: CellStyle
      get the type of vertical alignment for the cell
      Specified by:
      getVerticalAlignmentEnum in interface CellStyle
      Returns:
      align the type of alignment
    • setRotation

      public void setRotation(short rotation)
      set the degree of rotation for the text in the cell Note: HSSF uses values from -90 to 90 degrees, whereas XSSF uses values from 0 to 180 degrees. The implementations of this method will map between these two value-ranges accordingly, however the corresponding getter is returning values in the range mandated by the current type of Excel file-format that this CellStyle is applied to.
      Specified by:
      setRotation in interface CellStyle
      Parameters:
      rotation - degrees (between -90 and 90 degrees, of 0xff for vertical)
    • getRotation

      public short getRotation()
      get the degree of rotation for the text in the cell
      Specified by:
      getRotation in interface CellStyle
      Returns:
      rotation degrees (between -90 and 90 degrees, or 0xff for vertical)
    • setIndention

      public void setIndention(short indent)
      set the number of spaces to indent the text in the cell
      Specified by:
      setIndention in interface CellStyle
      Parameters:
      indent - - number of spaces
    • getIndention

      public short getIndention()
      get the number of spaces to indent the text in the cell
      Specified by:
      getIndention in interface CellStyle
      Returns:
      indent - number of spaces
    • setBorderLeft

      public void setBorderLeft(BorderStyle border)
      set the type of border to use for the left border of the cell
      Specified by:
      setBorderLeft in interface CellStyle
      Parameters:
      border - type
      Since:
      POI 3.15
    • getBorderLeft

      public BorderStyle getBorderLeft()
      Description copied from interface: CellStyle
      get the type of border to use for the left border of the cell
      Specified by:
      getBorderLeft in interface CellStyle
      Returns:
      border type
    • getBorderLeftEnum

      public BorderStyle getBorderLeftEnum()
      Description copied from interface: CellStyle
      get the type of border to use for the left border of the cell
      Specified by:
      getBorderLeftEnum in interface CellStyle
      Returns:
      border type
    • setBorderRight

      public void setBorderRight(BorderStyle border)
      set the type of border to use for the right border of the cell
      Specified by:
      setBorderRight in interface CellStyle
      Parameters:
      border - type
      Since:
      POI 3.15
    • getBorderRight

      public BorderStyle getBorderRight()
      Description copied from interface: CellStyle
      get the type of border to use for the right border of the cell
      Specified by:
      getBorderRight in interface CellStyle
      Returns:
      border type
    • getBorderRightEnum

      public BorderStyle getBorderRightEnum()
      Description copied from interface: CellStyle
      get the type of border to use for the right border of the cell
      Specified by:
      getBorderRightEnum in interface CellStyle
      Returns:
      border type
    • setBorderTop

      public void setBorderTop(BorderStyle border)
      set the type of border to use for the top border of the cell
      Specified by:
      setBorderTop in interface CellStyle
      Parameters:
      border - type
      Since:
      POI 3.15
    • getBorderTop

      public BorderStyle getBorderTop()
      Description copied from interface: CellStyle
      get the type of border to use for the top border of the cell
      Specified by:
      getBorderTop in interface CellStyle
      Returns:
      border type
    • getBorderTopEnum

      public BorderStyle getBorderTopEnum()
      Description copied from interface: CellStyle
      get the type of border to use for the top border of the cell
      Specified by:
      getBorderTopEnum in interface CellStyle
      Returns:
      border type
    • setBorderBottom

      public void setBorderBottom(BorderStyle border)
      set the type of border to use for the bottom border of the cell
      Specified by:
      setBorderBottom in interface CellStyle
      Parameters:
      border - type
      Since:
      3.15 beta 2
    • getBorderBottom

      public BorderStyle getBorderBottom()
      Description copied from interface: CellStyle
      get the type of border to use for the bottom border of the cell
      Specified by:
      getBorderBottom in interface CellStyle
      Returns:
      border type
    • getBorderBottomEnum

      public BorderStyle getBorderBottomEnum()
      Description copied from interface: CellStyle
      get the type of border to use for the bottom border of the cell
      Specified by:
      getBorderBottomEnum in interface CellStyle
      Returns:
      border type
    • setLeftBorderColor

      public void setLeftBorderColor(short color)
      set the color to use for the left border
      Specified by:
      setLeftBorderColor in interface CellStyle
      Parameters:
      color - The index of the color definition
    • getLeftBorderColor

      public short getLeftBorderColor()
      get the color to use for the left border
      Specified by:
      getLeftBorderColor in interface CellStyle
      Returns:
      The index of the color definition
      See Also:
    • setRightBorderColor

      public void setRightBorderColor(short color)
      set the color to use for the right border
      Specified by:
      setRightBorderColor in interface CellStyle
      Parameters:
      color - The index of the color definition
    • getRightBorderColor

      public short getRightBorderColor()
      get the color to use for the left border
      Specified by:
      getRightBorderColor in interface CellStyle
      Returns:
      The index of the color definition
      See Also:
    • setTopBorderColor

      public void setTopBorderColor(short color)
      set the color to use for the top border
      Specified by:
      setTopBorderColor in interface CellStyle
      Parameters:
      color - The index of the color definition
    • getTopBorderColor

      public short getTopBorderColor()
      get the color to use for the top border
      Specified by:
      getTopBorderColor in interface CellStyle
      Returns:
      The index of the color definition
      See Also:
    • setBottomBorderColor

      public void setBottomBorderColor(short color)
      set the color to use for the bottom border
      Specified by:
      setBottomBorderColor in interface CellStyle
      Parameters:
      color - The index of the color definition
    • getBottomBorderColor

      public short getBottomBorderColor()
      get the color to use for the left border
      Specified by:
      getBottomBorderColor in interface CellStyle
      Returns:
      The index of the color definition
      See Also:
    • setFillPattern

      public void setFillPattern(FillPatternType fp)
      setting to one fills the cell with the foreground color... No idea about other values
      Specified by:
      setFillPattern in interface CellStyle
      Parameters:
      fp - fill pattern (set to FillPatternType.SOLID_FOREGROUND to fill w/foreground color)
    • getFillPattern

      public FillPatternType getFillPattern()
      Description copied from interface: CellStyle
      Get the fill pattern
      Specified by:
      getFillPattern in interface CellStyle
      Returns:
      the fill pattern, default value is FillPatternType.NO_FILL
    • getFillPatternEnum

      public FillPatternType getFillPatternEnum()
      Description copied from interface: CellStyle
      Get the fill pattern
      Specified by:
      getFillPatternEnum in interface CellStyle
      Returns:
      the fill pattern, default value is FillPatternType.NO_FILL
    • setFillBackgroundColor

      public void setFillBackgroundColor(short bg)
      set the background fill color.

      For example:

       cs.setFillPattern(HSSFCellStyle.FINE_DOTS );
       cs.setFillBackgroundColor(new HSSFColor.RED().getIndex());
       
      optionally a Foreground and background fill can be applied: Note: Ensure Foreground color is set prior to background
       cs.setFillPattern(HSSFCellStyle.FINE_DOTS );
       cs.setFillForegroundColor(new HSSFColor.BLUE().getIndex());
       cs.setFillBackgroundColor(new HSSFColor.RED().getIndex());
       
      or, for the special case of SOLID_FILL:
       cs.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND );
       cs.setFillForegroundColor(new HSSFColor.RED().getIndex());
       
      It is necessary to set the fill style in order for the color to be shown in the cell.
      Specified by:
      setFillBackgroundColor in interface CellStyle
      Parameters:
      bg - color
    • getFillBackgroundColor

      public short getFillBackgroundColor()
      Get the background fill color. Note - many cells are actually filled with a foreground fill, not a background fill - see getFillForegroundColor()
      Specified by:
      getFillBackgroundColor in interface CellStyle
      Returns:
      fill color
      See Also:
    • getFillBackgroundColorColor

      public HSSFColor getFillBackgroundColorColor()
      Description copied from interface: CellStyle
      Gets the color object representing the current background fill, resolving indexes using the supplied workbook. This will work for both indexed and rgb defined colors.
      Specified by:
      getFillBackgroundColorColor in interface CellStyle
    • setFillForegroundColor

      public void setFillForegroundColor(short bg)
      set the foreground fill color Note: Ensure Foreground color is set prior to background color.
      Specified by:
      setFillForegroundColor in interface CellStyle
      Parameters:
      bg - color
    • getFillForegroundColor

      public short getFillForegroundColor()
      Get the foreground fill color. Many cells are filled with this, instead of a background color (getFillBackgroundColor())
      Specified by:
      getFillForegroundColor in interface CellStyle
      Returns:
      fill color
      See Also:
    • getFillForegroundColorColor

      public HSSFColor getFillForegroundColorColor()
      Description copied from interface: CellStyle
      Gets the color object representing the current foreground fill, resolving indexes using the supplied workbook. This will work for both indexed and rgb defined colors.
      Specified by:
      getFillForegroundColorColor in interface CellStyle
    • getUserStyleName

      public String getUserStyleName()
      Gets the name of the user defined style. Returns null for built in styles, and styles where no name has been defined
    • setUserStyleName

      public void setUserStyleName(String styleName)
      Sets the name of the user defined style. Will complain if you try this on a built in style.
    • setShrinkToFit

      public void setShrinkToFit(boolean shrinkToFit)
      Controls if the Cell should be auto-sized to shrink to fit if the text is too long
      Specified by:
      setShrinkToFit in interface CellStyle
    • getShrinkToFit

      public boolean getShrinkToFit()
      Should the Cell be auto-sized by Excel to shrink it to fit if this text is too long?
      Specified by:
      getShrinkToFit in interface CellStyle
    • getReadingOrder

      public short getReadingOrder()
      Get the reading order, for RTL/LTR ordering of the text.

      0 means Context (Default), 1 means Left To Right, and 2 means Right to Left

      Returns:
      order - the reading order (0,1,2)
    • setReadingOrder

      public void setReadingOrder(short order)
      Sets the reading order, for RTL/LTR ordering of the text.

      0 means Context (Default), 1 means Left To Right, and 2 means Right to Left

      Parameters:
      order - - the reading order (0,1,2)
    • verifyBelongsToWorkbook

      public void verifyBelongsToWorkbook(HSSFWorkbook wb)
      Verifies that this style belongs to the supplied Workbook. Will throw an exception if it belongs to a different one. This is normally called when trying to assign a style to a cell, to ensure the cell and the style are from the same workbook (if they're not, it won't work)
      Throws:
      IllegalArgumentException - if there's a workbook mis-match
    • cloneStyleFrom

      public void cloneStyleFrom(CellStyle source)
      Clones all the style information from another HSSFCellStyle, onto this one. This HSSFCellStyle will then have all the same properties as the source, but the two may be edited independently. Any stylings on this HSSFCellStyle will be lost! The source HSSFCellStyle could be from another HSSFWorkbook if you like. This allows you to copy styles from one HSSFWorkbook to another.
      Specified by:
      cloneStyleFrom in interface CellStyle
    • cloneStyleFrom

      public void cloneStyleFrom(HSSFCellStyle source)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object