Bonjour à tous,
Je souhaite savoir comment je peux appeler une fonction de traitement avant le chargement de l'image dans le contrôle image d'un datalist. Cette fonction permettra un crop de l'image avant le chargement.
Ci-dessous le code asp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<asp:ImageButton ID="ImageButton1" CssClass="Photo" runat="server" ImageUrl='<%# XPath("@PhotoName") %>' CommandName="Select" />
Dans la propriété ImageUrl, je vais charger un element xml (xpath). J'aimerai seulement traiter la photo avant de la charger...
En fait, qlq chose comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<asp:ImageButton ID="ImageButton1" CssClass="Photo" runat="server" ImageUrl='<%# MaFonction(XPath("@PhotoName")) %>' CommandName="Select" />
La fonction serai comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Private Function CropImage(ByVal OriginalImage As Bitmap, ByVal TopLeft As Point, ByVal BottomRight As Point) As Bitmap
    Dim btmCropped As New Bitmap((BottomRight.Y - TopLeft.Y), (BottomRight.X - TopLeft.X))
    Dim grpOriginal As Graphics = Graphics.FromImage(btmCropped)
    grpOriginal.DrawImage(OriginalImage, New Rectangle(0, 0, btmCropped.Width, btmCropped.Height), _
        TopLeft.X, TopLeft.Y, btmCropped.Width, btmCropped.Height, GraphicsUnit.Pixel)
    grpOriginal.Dispose()
    Return btmCropped
End Function
Là en plus la fonction renvoie un BITMAP et pas une Url... !
Une idée ?
Patrick