【问题标题】:birt report tables not displaying in PDFbirt 报告表未以 PDF 显示
【发布时间】:2014-05-02 04:27:32
【问题描述】:

我使用 BIRT v 4.2 在 Eclipse (Juno) 中创建了一个 BIRT 报告。该报告有四个表格,所有表格都包含在网格中。当我预览报告时,所有数据都正确显示,但如果我选择以 .pdf 格式运行,则每个表仅显示 2-3 行。我可以将报告导出为 html、xls 并在 Web 查看器中查看,没有问题。有没有其他人经历过这个? (我已经验证了网格和表格的大小)。

【问题讨论】:

  • 这里没有足够的线索来确定问题的原因。但是看看this answer,看看它是否能帮你解决问题。

标签: eclipse pdf birt


【解决方案1】:

我遇到了同样的问题,为了解决这个问题,我只是手动增加了网格的大小以适应页面。

如果您的行将转到另一个页面,您需要编写脚本来解决该问题,您可以在此处找到解决方案:

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 资源:

【讨论】:

  • 能否请您在这里总结一下解决方案,所以如果链接源无法访问,您的答案仍然有用。
  • 好观察,目前正在更新。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-06
  • 1970-01-01
  • 2013-12-04
  • 1970-01-01
  • 2012-05-15
  • 2019-07-30
相关资源
最近更新 更多