Class ExcelAutoColumnSizer

java.lang.Object
io.jmix.gridexportflowui.exporter.excel.ExcelAutoColumnSizer

public class ExcelAutoColumnSizer extends Object
Calculates the width of a column, based on the values within it.

For each new value added to the column, call isNotificationRequired(int). If the result is true, call notifyCellValue(java.lang.String, org.apache.poi.ss.usermodel.Font).

  • Field Details

    • WIDTH_MIN

      protected static final short WIDTH_MIN
      See Also:
    • WIDTH_MAX

      protected static final short WIDTH_MAX
      See Also:
    • WIDTH_PADDING

      protected static final short WIDTH_PADDING
      See Also:
    • ROW_BAND

      protected static final int[] ROW_BAND
    • ROW_BAND_SAMPLE_FREQUENCY

      protected static final int[] ROW_BAND_SAMPLE_FREQUENCY
    • graphics

      protected Graphics2D graphics
      Graphics context used for obtaining FontMetrics objects
    • fontMetrics

      protected Map<Short,FontMetrics> fontMetrics
      Maps a Short (HSSF font index) to a FontMetrics object
    • currentWidth

      protected short currentWidth
  • Constructor Details

    • ExcelAutoColumnSizer

      public ExcelAutoColumnSizer()
  • Method Details

    • getFontMetrics

      protected FontMetrics getFontMetrics(org.apache.poi.ss.usermodel.Font hf)
    • isNotificationRequired

      public boolean isNotificationRequired(int row)
      When you add a new value to a column, call this method to ask whether the AutoColumnSizer is interested in it.
    • notifyCellValue

      public void notifyCellValue(String val, org.apache.poi.ss.usermodel.Font font)
    • getWidth

      public short getWidth()
    • dispose

      public void dispose()