Uso questo codice per il resize delle immagini in ASP.net
Funziona bene, niente da dire.codice:<%@ Import Namespace="System.Drawing"%> <%@ Import Namespace="System.Drawing.Imaging"%> <SCRIPT RUNAT="SERVER"> Sub Page_Load() Dim width as Integer = 0 Dim height as Integer = 0 try ' ricava dimensioni dalla richiesta if not Request.QueryString("nwidth") is Nothing Then width = Int32.Parse(Request.QueryString("nwidth")) End if if not Request.QueryString("nheight") is Nothing Then height = Int32.Parse(Request.QueryString("nheight")) End if catch ex as Exception End Try ' ridimensiona l'immagine se specificato Dim immagine as String = Server.MapPath(Request("img")) if Not System.Io.File.Exists(immagine) then immagine = Server.MapPath("/immagini/nondisponibile.jpg") end if call ImgRedim(immagine, width, height) ' fermo il resto della risposta Response.End() End Sub ' Funzione di redim Public Sub ImgRedim(immagine as String, width as Integer, height as Integer) Dim bmp as System.Drawing.Bitmap = CType(System.Drawing.Image.FromFile(immagine), System.Drawing.Bitmap) ' c'è da ridimensionare? if width>0 or height>0 then ' se è specificata solo la larghezza, calcola l'altezza if height = 0 Then height = Convert.ToInt32(width / bmp.Width * bmp.Height) End if ' (e viceversa) if width = 0 Then width = Convert.ToInt32(height / bmp.Height * bmp.Width) End if ' creo la Thumbnail con i parametri impostati Dim miniaturabmp as New System.Drawing.Bitmap(bmp, width, height) ' salvo sullo stream di output if immagine.EndsWith(".jpg") Then miniaturabmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) else miniaturabmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) end if ' pulizia miniaturabmp.Dispose() else ' salvo sullo stream di output if immagine.EndsWith(".jpg") Then bmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) else bmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) end if end if ' pulizia finale bmp.Dispose() End Sub </SCRIPT>
Vorrei però "perfezionarlo" con l'aggiunta di una scritta sull'immagine generata.
E' possibile? Qualcuno mi aiuta ad integrare il codice che manca o mi dà qualche dritta?
In ASP.net non sono un granchè, sto cercando di raccapezzarmi!
![]()

Rispondi quotando
