【问题标题】:birt-designer: dynamic image size based on xml propertybirt-designer:基于 xml 属性的动态图像大小
【发布时间】:2012-03-01 08:29:45
【问题描述】:

我正在尝试在 BIRT 报告设计器中动态设置图像的高度,我希望这可以在元素的“常规”选项卡中实现。但我只能在 px、in、% 等中设置固定大小... 例如,如果我将尺寸定义为 50%,那么它就是原始图像尺寸的 50%,而不是我的页面宽度的 50%

当某些 XML 属性为 SMALLMEDIUMLARGE 时,我有以下 javascript 将图像的大小设置为固定大小,但是当大小为 SMALL 时,我想要图像宽度页面宽度的 1/3,MEDIUM 应为 2/3,LARGE 3/3。那么是否可以从 Birt-report 设计器中的脚本选项卡中的某个变量/对象获取页面大小

if(row["size"] == "SMALL") {
    this.width = "150PX";
}
else if(row["size"] == "MEDIUM") {
    this.width = "250PX";
}
else if(row["size"] == "LARGE") {
    this.width = "350PX";
}

【问题讨论】:

  • 如果您知道您的页面将有多大,为什么不将图像宽度设置为页面宽度 * 1/3(或 2/3,或 1,视情况而定)?跨度>
  • 是的,这就是我想做的,但是我如何获得页面宽度?
  • 你不知道你的页面有多大吗?或者您打算在不同大小的页面中重用代码?
  • 我只想尽可能正确和灵活,因此我想避免硬编码宽度。

标签: javascript birt


【解决方案1】:

要获取页面的宽度,请使用以下脚本:

var width = reportContext.getDesignHandle().getMasterPages().get(0).getProperty("width");

假设您的报告中只有一个母版页。

【讨论】:

    猜你喜欢
    • 2017-11-04
    • 2017-10-20
    • 2020-07-01
    • 1970-01-01
    • 2011-10-29
    • 1970-01-01
    • 2021-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多