Come posso fare in modo dinamico centro di un'immagine in un MS Reporting Services?

StackOverflow https://stackoverflow.com/questions/5264

  •  08-06-2019
  •  | 
  •  

Domanda

Out of the box, in MS Reporting Services, l'elemento dell'immagine non permette la centratura dell'immagine stessa, quando le dimensioni sono sconosciuti in fase di progettazione.In altre parole, l'immagine (anche se più piccolo rispetto alle dimensioni aggiudicate il design di superficie) sarà ancorata all'angolo in alto a sinistra, non al centro.

La mia relazione si conosce l'URL dell'immagine in fase di runtime, e ho bisogno di essere in grado di centrare quest'immagine se è più piccolo di dimensioni specificate nella mia progettazione.

È stato utile?

Soluzione

Ecco come mi è stato in grado di realizzare questo.Con l'aiuto di Chris Hays

Le dimensioni dell'immagine per essere grande come si desidera che sul report, modificare il "Dimensionamento" proprietà "Clip".

Impostare dinamicamente l'immagine a sinistra, imbottitura con un'espressione:

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

Impostare dinamicamente l'immagine del top padding utilizzando un'espressione:

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

La prima modifica di Chris codice di stato per cambiare le dimensioni della mia immagine, elemento del report (la mia immagine era 4.625x1.125 - vedere i numeri di cui sopra).

Ho scelto anche di ottenere il flusso da un URL invece di il database.Ho usato WebRequest.Creare.GetResponse.GetResponseStream per tale.

Finora tutto bene - mi Auguro che aiuta!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top