示例说明

电子表格在excel中对字段设置了自动换行后,在excel端的打印效果与在浏览器端的打印效果不一致。

如下,是电子表格报表的展示效果和将报表导出Excel之后直接打印的效果。

如下,是该电子表格报表在浏览器访问,通过工具栏上的打印按钮进行打印的效果。

我们可以通过调整设置和宏代码辅助,实现正确的打印效果。

设置方法


1、首先在Excel中,打开该电子表格。

2、对于此电子表格中,需要固定行高的行,设置一下行高。

2、设置单元格的高度、宽度 为自适应调整。如下图:

3、在浏览器的资源定制节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面

4、在报表宏界面新建服务端模块。在弹出的新建模块对话框中,选择对象为spreadSheetReport、事件为onBeforeOutput、并把下面宏代码复制到代码编辑区域。

宏类型

类型

对象

事件

ServerSide

spreadsheetReport

onBeforeOutput

 

宏代码

function main(spreadsheetReport) {
    spreadsheetReport.workbook.worksheets.get(0).autoFitRows(true);
}

 

另:如果使用上面的报表宏还无法解决,可尝试使用下面的报表宏解决。

宏类型

 

类型

对象

事件

ServerSide

spreadsheetReport

onBeforeOutput

宏代码

function main(spreadsheetReport) {
    var options = Packages.com.aspose.cells.AutoFitterOptions();
    options.setAutoFitMergedCells(true);
    spreadsheetReport.workbook.worksheets.get(0).autoFitRows(options);
}