2012-03-28 6 views
-1

Ich habe einen img-TagBild Resize Ausgabe in asp.net

<asp:Image ID="imgCatalog" ImageAlign="middle" Height='<%#GetImageWidth(Eval("PictureName")) %>' ImageUrl='<%#GetImageUrl(Eval("PictureName")) %>' runat="server"/> 

ich will beim Laden der Seite jedes Bild, um die Größe und i verwenden getImageWidth Funktion.

public Unit GetImageWidth(object ImageName) 
{ 
    string strimagename = Convert.ToString(ImageName); 
    //string strimagewidth = ""; 
    int width = 0; 
    if (System.IO.File.Exists(Server.MapPath(GetImageUrl(strimagename)))) 
    { 
     System.Drawing.Image img = System.Drawing.Image.FromFile(Server.MapPath(GetImageUrl(strimagename))); 
     if (img.Height > 1000) 
     { 
      //strimagewidth = "535px"; 
      **width = 535;** 
      ------------ 
     } 
     else 
     { 
      //strimagewidth = img.Width.ToString() + "px"; 
      width = img.Width; 
     } 
     img.Dispose(); 
    } 

    return Unit.Pixel(width); 
} 

Ich möchte die Bildhöhe einstellen nicht Bild width.but i did not Höhe Eigenschaft innerhalb der function.Can jeder Körper Hilfe

Antwort

0

Vielleicht zu tun haben, dass Sie die Height gesetzt, aber rufen Sie die width .

Height=getWidth() 
1

Verwendung:

Image.GetThumbnailImage(width, height, null, IntPtr.Zero) 

Hier können Sie sowohl die Höhe und Breite des Bildes angeben.

1

Für den Wert der Height-Eigenschaft rufen Sie die GetImageWidth-Funktion auf, die derzeit die Breite zurückgibt. Haben Sie eine ähnliche Methode, die die Höhe zurückgibt? etwas, das die Höhe des Bildes basierend auf Ihren benutzerdefinierten Bedingungen zurückgibt? Etwas wie das ?

public Unit GetImageHeight(string ImageName) 
{ 
    int height= 0; 
    if (System.IO.File.Exists(Server.MapPath(GetImageUrl(ImageName)) 
    { 
     System.Drawing.Image img = System.Drawing.Image.FromFile(Server.MapPath(GetImageUrl(ImageName))); 
     if (img.Width > 1000)      
      height = 535;   
     else 
      height= img.height; 

     img.Dispose(); 
    } 
    return Unit.Pixel(height); 
}