我使用BIRT v 4.2在Eclipse(Juno)中创建了一个BIRT报告。该报告有四个表,所有表都包含在网格中。当我预览报告时,所有数据都会正确显示,但如果我选择以.pdf运行,则每个表只显示2-3行。我可以将报告导出为html,xls并在Web查看器中查看它而不会出现问题。还有其他人经历过这个吗? (我已经验证了网格和表格的大小)。
答案 0 :(得分:0)
我遇到了同样的问题并且为了克服这个问题,我只是增加了网格的大小以手动适应页面。
如果你的行要转到另一个页面,你需要围绕这个问题编写脚本,你可以在这里找到解决方案:
data cut when exporting as PDF
更新以覆盖断开的链接:
引用迈克尔威利安:
由于固定大小限制,PDF不会像GUI那样进行调整。要获得一个长而不间断的字符串,您必须在计算列中添加自己的中断字符,或者使用动态文本框来编写脚本以打破长文本。一旦你打破了长文本,它应该包装到PDF中的多行。
例如,你可以在计算列中执行类似的操作,将“data1”替换为列名:
temp = "";
i=0;
while (i<row["data1"].length){
if (row["data1"].length - 10 < i){
temp = temp + row["data1"].substring(i,row["data1"].length);
}
else{
temp = temp + row["data1"].substring(i,i+10) + "\n";
}
i += 10;
}
temp;
要在整个报表中应用更改,您可以在beforeFactory方法中执行脚本,逐步执行数据元素,更改其表达式。最简单的方法是在属性编辑器中命名数据元素element1,element2,element2等。然后,您可以在脚本中按名称轻松访问它们。
以下是您可以编辑beforeFactory方法或其他任何方法:
您还可以使用所有更改维护单独的脚本,如资源目录中所示:
请记住将其添加为Javascript资源: