2009-06-30 11 views
0

Ich benutze ASP.NET 2.0. Ich versuche, die Höhe & Breite einer Bilddatei zu erhalten, die ich mit dem FileUpload-Steuerelement hochgeladen habe. Nach dem Hochladen wird das Image in der Datei db, nicht gespeichert. Es scheint, dass ich in der Lage sein sollte, etwas wie den folgenden Code zu verwenden, aber ich kann es nicht zum Laufen bringen.Wie bekomme ich Höhe und Breite von einer hochgeladenen Bilddatei

Dim strm As Stream = oPostedFile.InputStream 
dim i as image 
i = System.Drawing.Image.FromStream(strm) 
+2

Ihre Tags sind ziemlich ungeeignet. Versuchen: ASP InputStream Bilder statt? – Pod

Antwort

4

Ich habe die Lösung gefunden.

Dim s As Stream = oPostedFile.InputStream 
Dim i As Image = System.Drawing.Image.FromStream(s) 

intFileWidth = i.PhysicalDimension.Width 
intFileHeight = i.PhysicalDimension.Height 
0

Erhalten Sie die Höhe und Breite der Bildtyp-Datei durch den folgenden Code

System.Drawing.Image imgFile = 
System.Drawing.Image.FromStream(fupDeviceImage.PostedFile.InputStream); 
    if (imgFile.PhysicalDimension.Width > 500 || imgFile.PhysicalDimension.Height > 500) 
    { 
     cvDeviceImage.IsValid = false; 
     fupDeviceImage.Focus(); 
     return; 
    } 
0

In diesem Code, der Sie, dass hochgeladene Bild mit ihrer Höhe und Breite und in bis 400 bis 800 Konvertieren sehen Pixel ungefähre *

! [zu allererst Sie diese Server-Steuerelemente Bild zum hochladen und Anzeige müssen ... also zeigen in diesem link] [1]

[1]: http://i.stack.imgur.com/X0wNJ.png

Sie auch ein Panel-Server-Steuerelement müssen dynamisch Bild in Seite hinzuzufügen;

<asp:Panel ID="Panel1" runat="server"> 
    </asp:Panel> 

Dann fügen Sie in der Asp.cs Klassencode für Button1_Click:

protected void Button1_Click(object sender, EventArgs e) 
    { 
     Label1.Text = FileUpload1.FileName + "<br>" + FileUpload1.PostedFile.ContentType + "<br>" + FileUpload1.PostedFile.ContentLength; 
     string s = Request.MapPath(Request.ApplicationPath + "/upload/" + FileUpload1.FileName); 
     try 
     { 
      FileUpload1.SaveAs(s); 
      Label1.Text += "<br>file upload success.."; 
      //For Get Uploaded Image height and Width :- 
      System.Drawing.Image im = System.Drawing.Image.FromStream(FileUpload1.PostedFile.InputStream); 
      double h = im.PhysicalDimension.Height; 
      double w = im.PhysicalDimension.Width; 
      Label2.Text = "Height:" + h + "...Widht: " + w; 
      //For Display a Image in Panal control and set it height and width:- 
      Image img = new Image(); 
      img.ImageUrl = "/upload/" + FileUpload1.FileName; 
      if (h > w) 
      { 
       while (h > 800) 
       { 
        h = h * 0.5; 
       } 
      } 
      else 
      { 
       while (h > 400) 
       { 
        h = h * 0.5; 
       } 
      } 
      img.Height = new Unit(h); 
      if (w > h) 
      { 
       while (w > 800) 
       { 
        w = w * 0.5; 
       } 
      } 
      else 
      { 
       while (w > 400) 
       { 
        w = w * 0.5; 
       } 
      } 
      img.Width = new Unit(w); 
      Panel1.Controls.Add(img); 
      Label2.Text += "<br>Now..Height:" + h + "...Widht: " + w; 
     } 
     catch 
     { 
      Label2.Text = "<br>choose your file.."; 
      Label1.Text = ""; 
     } 
    } 
Verwandte Themen