JasperReport:是否可以在PDF中设置初始缩放?

时间:2012-01-24 08:55:14

标签: javascript pdf-generation jasper-reports

我有一个导出为PDF的JasperPrint,它显示嵌入到网页中。

是否可以以任何方式设置初始缩放?

我知道如何使用POI(通过javascript),但我找不到在Jasper中添加JavaScript代码的方法......

编辑:

感谢@ AlexK 的链接,我找到了解决方案:)

public ByteArrayOutputStream fillPDF(JasperPrint jasperPrint) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();

    try{
        JRPdfExporter exporter = new  JRPdfExporter();
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
        exporter.setParameter(JRPdfExporterParameter.PDF_JAVASCRIPT, "this.zoom = 70;");
        exporter.setParameter(JRPdfExporterParameter.OUTPUT_STREAM,baos); 
        exporter.exportReport(); 
    }catch (Throwable e){
    }
    return baos;
}

1 个答案:

答案 0 :(得分:0)

@ganzux的回答。可以在JavaScript的帮助下设置缩放比例。

表达式将为:this.zoom = 70;

代码段是:

public ByteArrayOutputStream fillPDF(JasperPrint jasperPrint) {
    ByteArrayOutputStream baos = new ByteArrayOutputStream();

    try{
        JRPdfExporter exporter = new  JRPdfExporter();
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
        exporter.setParameter(JRPdfExporterParameter.PDF_JAVASCRIPT, "this.zoom = 70;");
        exporter.setParameter(JRPdfExporterParameter.OUTPUT_STREAM,baos); 
        exporter.exportReport(); 
    }catch (Throwable e){
    }
    return baos;
}