Class ExcelToFoConverter


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

      • ExcelToFoConverter

        public ExcelToFoConverter​(org.w3c.dom.Document document)
      • ExcelToFoConverter

        public ExcelToFoConverter​(FoDocumentFacade foDocumentFacade)
    • Method Detail

      • main

        public static void main​(java.lang.String[] args)
                         throws java.lang.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:
        java.lang.Exception
      • process

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

        protected java.lang.String createPageMaster​(float tableWidthIn,
                                                    java.lang.String pageMasterName)
      • 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,
                                      org.w3c.dom.Element tableCellElement,
                                      int normalWidthPx,
                                      int maxSpannedWidthPx,
                                      float normalHeightPt)
      • processCellStyle

        protected void processCellStyle​(HSSFWorkbook workbook,
                                        HSSFCellStyle cellStyle,
                                        org.w3c.dom.Element cellTarget,
                                        org.w3c.dom.Element blockTarget)
      • processCellStyleBorder

        protected void processCellStyleBorder​(HSSFWorkbook workbook,
                                              org.w3c.dom.Element cellTarget,
                                              java.lang.String type,
                                              BorderStyle xlsBorder,
                                              short borderColor)
      • processCellStyleFont

        protected void processCellStyleFont​(HSSFWorkbook workbook,
                                            org.w3c.dom.Element blockTarget,
                                            HSSFFont font)
      • processColumnHeaders

        protected void processColumnHeaders​(HSSFSheet sheet,
                                            int maxSheetColumns,
                                            org.w3c.dom.Element table)
      • processColumnWidths

        protected float processColumnWidths​(HSSFSheet sheet,
                                            int maxSheetColumns,
                                            org.w3c.dom.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,
                                 org.w3c.dom.Element tableRowElement)
        Returns:
        maximum 1-base index of column that were rendered, zero if none
      • processRowNumber

        protected org.w3c.dom.Element processRowNumber​(HSSFRow row)
      • processSheet

        protected float processSheet​(HSSFWorkbook workbook,
                                     HSSFSheet sheet,
                                     org.w3c.dom.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,
                                        org.w3c.dom.Element flow)
      • processWorkbook

        public void processWorkbook​(HSSFWorkbook workbook)
      • setPageMarginInches

        public void setPageMarginInches​(float pageMarginInches)