JasperReports:xls格式单元格宽度问题

时间:2012-07-05 06:18:06

标签: java jasper-reports

我有一个A4尺寸格式的报告,可生成Excel报告。问题是,在excel生成时,细胞不会水平扩展。当文本大于单元格宽度时,即使Excel表格仍保持A4大小。

我尝试使用以下代码修改页面高度和宽度:

if (this.jasperPrint != null) {
    this.jasperPrint.setPageHeight(10000);
    this.jasperPrint.setPageWidth(100000);
    jasperPrint.setOrientation(jasperReport.ORIENTATION_LANDSCAPE);

    xlsexporter.setParameter(JRXlsExporterParameter.JASPER_PRINT, this.jasperPrint);
    xlsexporter.setParameter(JRXlsExporterParameter.OUTPUT_STREAM, exceloutputStream); //and output stream
    xlsexporter.setParameter(JRXlsExporterParameter.MAXIMUM_ROWS_PER_SHEET, 65536);
    xlsexporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
    xlsexporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
    xlsexporter.setParameter(JRXlsExporterParameter.IGNORE_PAGE_MARGINS, Boolean.TRUE);
    xlsexporter.setParameter(JRXlsExporterParameter.IS_IGNORE_CELL_BORDER, Boolean.TRUE);
    xlsexporter.setParameter(JRXlsAbstractExporterParameter.IS_COLLAPSE_ROW_SPAN, Boolean.FALSE);
    xlsexporter.setParameter(JRXlsAbstractExporterParameter.IS_FONT_SIZE_FIX_ENABLED, Boolean.TRUE);
    xlsexporter.setParameter(JRXlsAbstractExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE);

    try {
        xlsexporter.exportReport();
    } catch (JRException e) {
        logger.error("generateExcel():Exception in Exporting Excel report" + e);
    }

    this.jasperPrint = null;
}

如果有人能指导我如何实现这一点,那就太棒了 提前致谢

0 个答案:

没有答案