2008-08-07 46 views
13

在MS Reporting Services中,当设计时未知尺寸时,图像元素不允许图像本身的居中。换句话说,图像(如果小于设计表面上分配的尺寸)将固定在左上角,而不是中心。如何在MS Reporting Services报表中动态调整图像的中心位置?

我的报告就知道了图像在运行时的URL,我需要能够,如果它是不是在我的设计中规定的尺寸更小,中心这一形象。

回答

8

这是我能够做到的。从Chris Hays

尺寸帮助图像是一样大的,你会想它的“调整”属性“剪辑”报告,变更。

动态使用表达式设置图像的左填充:

=CStr(Round((4.625-System.Drawing.Image.FromStream(System.Net.WebRequest.Create(Parameters!LogoURL.Value).GetResponse().GetResponseStream()).Width/96)/2,2)) & "in" 

动态使用表达式设置图像的顶部填充:

=CStr(Round((1.125-System.Drawing.Image.FromStream(System.Net.WebRequest.Create(Parameters!LogoURL.Value).GetResponse().GetResponseStream()).Height/96)/2,2)) & "in" 

克里斯的代码所做的第一个修改是换出我的图像元素在报告中的维度(我的图像是4.625x1.125 - 请参阅上面的数字)。

我还选择从URL获取流而不是数据库。我使用了WebRequest.Create.GetResponse。 GetResponseStream这样做。

到目前为止这么好 - 我希望有所帮助!

+0

你是如何使用嵌入式图像做到这一点的?我一直无法弄清楚如何在表达式中引用嵌入式图像。 – skeletank 2014-05-05 13:11:15

相关问题