报表知识库
我要提问

API设置报表导出excel的显示比例

报表导出excel时默认的是以75%的比例导出的,这是因为75%的显示比例最接近页面展现的效果,但是有时用户在导出excel的时候可能需要将显示比例设置成100%的。而通用报表展现页面的导出程序已经封装好,没有办法去调整导出的比例,所以需要采用API来控制导出excel的显示比例,下面就介绍一下设置的方法。

首先读入一个报表模板:

String filePath = readPath;//设置报表的路径

System.out.println(“<<<<<<<<<<<<<<<<<”+filePath);

intdispratio = ratio;//设置显示比例,如75%那么就是75

try{

//读取报表模板

ReportDefinerd = (ReportDefine) ReportUtils.read(filePath );

然后构造报表的计算引擎:

Context context = newContext();

Engine enging = new Engine( rd, context);//构造报表计算引擎

导出excel的方法:

ReportUtils.exportToExcel(exportPath, iReport, bool,dispratio);

上面方法的是个参数分别为:导出的路径,ireport报表对象,是否分页,导出的比例,其中最后一个参数就是控制导出比例的。

完整的代码封装到一个方法中后,代码如下:

packagecom.zhengzhong.practise;

import com.runqian.report4.usermodel.*;

import com.runqian.base4.util.*;

import com.runqian.report4.model.*;

import com.runqian.report4.util.*;

import com.runqian.report4.cache.CacheManager;

import java.io.*;

public class ExportExcel {

public String getFilePath(String readPath,StringexportPath,Booleanbool,int ratio) {

String filePath = readPath;

System.out.println(“<<<<<<<<<<<<<<<<<”+filePath);

intdispratio = ratio;

try{

//读取报表模板

Context context = new Context();

ReportDefinerd = (ReportDefine) ReportUtils.read(filePath );

//运算报表

//创建要导出的excel报表

//计算前,设置参数

//ParamMetaDatapmd = rd.getParamMetaData();

Engine enging = new Engine(rd, context);

IReportiReport = enging.calc();

//String ename = name.replace(“.raq”, ”.xls”);

System.out.println(“>>>>>>>>>>>>>>>>>>>>>>>>>>[ToExcelServlet] - 运算报表结束!”);

ReportUtils.exportToExcel(exportPath, iReport, bool,dispratio);

} catch(Exception e ){

e.printStackTrace();

} catch (Throwable e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

}

returnexportPath;

}

}

调用上面的方法导出excel,设置导出的比例为100,调用的方法如下:

packagecom.zhengzhong.practise;

publicclassExportExcelMain {

/**

*@paramargs

*/

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

ExportExcelee = newExportExcel();

ee.getFilePath(“F:\\qwer.raq”, ”F:\\qwer.xls”, false, 100);

}

}

执行过后,可以查看excel,效果如下:

 

可以看到显示比例变成100%了,这样API设置报表导出excel比例的需求就实现了。

标签: