Class ExcelToFoConverter

java.lang.Object
org.apache.poi.hssf.converter.AbstractExcelConverter
org.apache.poi.hssf.converter.ExcelToFoConverter

@Beta public class ExcelToFoConverter extends AbstractExcelConverter
Converts xls files (97-2007) to XSL FO.
Author:
Sergey Vladimirov (vlsergey {at} gmail {dot} com)
  • Constructor Details

    • ExcelToFoConverter

      public ExcelToFoConverter(Document document)
    • ExcelToFoConverter

      public ExcelToFoConverter(FoDocumentFacade foDocumentFacade)
  • Method Details

    • main

      public static void main(String[] args) throws Exception
      Java main() interface to interact with ExcelToFoConverter

      Usage: ExcelToHtmlConverter infile outfile

      Where infile is an input .xls file ( Word 97-2007) which will be rendered as XSL FO into outfile
      Throws:
      Exception
    • process

      public static Document process(File xlsFile) throws Exception
      Converts Excel file (97-2007) into XSL FO file.
      Parameters:
      xlsFile - file to process
      Returns:
      DOM representation of result XSL FO
      Throws:
      Exception
    • createPageMaster

      protected String createPageMaster(float tableWidthIn, String pageMasterName)
    • getDocument

      protected Document getDocument()
      Specified by:
      getDocument in class AbstractExcelConverter
    • getPageMarginInches

      public float getPageMarginInches()
    • isEmptyStyle

      protected boolean isEmptyStyle(CellStyle cellStyle)
      Returns false if cell style by itself (without text, i.e. borders, fill, etc.) worth a mention, true otherwise
      Returns:
      false if cell style by itself (without text, i.e. borders, fill, etc.) worth a mention, true otherwise
    • processCell

      protected boolean processCell(HSSFWorkbook workbook, HSSFCell cell, Element tableCellElement, int normalWidthPx, int maxSpannedWidthPx, float normalHeightPt)
    • processCellStyle

      protected void processCellStyle(HSSFWorkbook workbook, HSSFCellStyle cellStyle, Element cellTarget, Element blockTarget)
    • processCellStyleBorder

      protected void processCellStyleBorder(HSSFWorkbook workbook, Element cellTarget, String type, BorderStyle xlsBorder, short borderColor)
    • processCellStyleFont

      protected void processCellStyleFont(HSSFWorkbook workbook, Element blockTarget, HSSFFont font)
    • processColumnHeaders

      protected void processColumnHeaders(HSSFSheet sheet, int maxSheetColumns, Element table)
    • processColumnWidths

      protected float processColumnWidths(HSSFSheet sheet, int maxSheetColumns, Element table)
      Creates COLGROUP element with width specified for all columns. (Except first if AbstractExcelConverter.isOutputRowNumbers()==true)
      Returns:
      table width in inches
    • processDocumentInformation

      protected void processDocumentInformation(SummaryInformation summaryInformation)
    • processRow

      protected int processRow(HSSFWorkbook workbook, CellRangeAddress[][] mergedRanges, HSSFRow row, Element tableRowElement)
      Returns:
      maximum 1-base index of column that were rendered, zero if none
    • processRowNumber

      protected Element processRowNumber(HSSFRow row)
    • processSheet

      protected float processSheet(HSSFWorkbook workbook, HSSFSheet sheet, Element flow)
    • processSheet

      protected boolean processSheet(HSSFWorkbook workbook, int sheetIndex)
      Process single sheet (as specified by 0-based sheet index)
      Returns:
      true if result were added to FO document, false otherwise
    • processSheetName

      protected void processSheetName(HSSFSheet sheet, Element flow)
    • processWorkbook

      public void processWorkbook(HSSFWorkbook workbook)
    • setPageMarginInches

      public void setPageMarginInches(float pageMarginInches)