subinforme services imagenes externas dinamicas reporting-services

reporting-services - externas - reporting services imagenes dinamicas



¿Cómo puedo centrar dinámicamente una imagen en un informe de MS Reporting Services? (1)

Fuera de la caja, en MS Reporting Services, el elemento de imagen no permite el centrado de la imagen, cuando las dimensiones son desconocidas en el momento del diseño. En otras palabras, la imagen (si es más pequeña que las dimensiones asignadas en la superficie de diseño) se anclará en la esquina superior izquierda, no en el centro.

Mi informe conocerá la URL de la imagen en tiempo de ejecución, y necesito poder centrar esta imagen si es más pequeña que las dimensiones especificadas en mi diseñador.


Así es como pude lograr esto. Con la ayuda de Chris Hays

Tamaño de la imagen para que sea tan grande como lo desearía en el informe, cambie la propiedad "Tamaño" a "Clip" .

Establezca dinámicamente el relleno izquierdo de la imagen con una expresión:

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

Establezca dinámicamente el relleno superior de la imagen con una expresión:

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

La primera modificación realizada en el código de Chris fue cambiar las dimensiones de mi elemento de imagen en el informe (mi imagen era 4.625x1.125 - vea los números anteriores).

También elegí obtener la transmisión de una URL en lugar de la base de datos . Usé WebRequest.Create.GetResponse. GetResponseStream haz eso.

Hasta ahora todo bien - ¡Espero que eso ayude!