Ciao a tutti.
Un favore .. ho scaricato lo scripto per creare le thumb al volo, da freeasp.it e funziona alla grande.
(questo:
...semplicemente perfetto...codice:<%@ Page Language="C#" %> <%@ import Namespace="System.Drawing" %> <%@ import Namespace="System.Drawing.Imaging" %> <%@ import Namespace="System.Text.RegularExpressions" %> <script runat="server"> int MaxWidth = 100; // Larghezza massima dopo il quale l'immagine viene ridimensionata int MaxHeight = 100; // Altezza massima dopo il quale l'immagine viene ridimensionata int ScaleFactor = 50; // Fattore di scala per la miniatura System.Drawing.Image oldImage, newImage; void Page_Load(Object sender, EventArgs e) { if ( Request.QueryString["FileName"] != null ) { string strFileName = Convert.ToString(Request.QueryString["FileName"]); if ( Request.QueryString["ScaleFactor"] != null && Convert.ToString(Request.QueryString["ScaleFactor"]) != "" && IsInteger(Convert.ToString(Request.QueryString["scalefactor"])) ) ScaleFactor = Convert.ToInt32(Request.QueryString["ScaleFactor"]); if ( strFileName != "" ) { try { oldImage = System.Drawing.Image.FromFile( Server.MapPath(strFileName) ); if ( oldImage.Width > MaxWidth || oldImage.Height > MaxHeight ) { // Immagine troppo grande, visualizzo la miniatura newImage = oldImage.GetThumbnailImage( (oldImage.Width*ScaleFactor/100), (oldImage.Height*ScaleFactor/100), null, IntPtr.Zero); Response.ContentType = "image/jpeg"; newImage.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg); oldImage.Dispose(); newImage.Dispose(); oldImage = null; newImage = null; } else { // Immagine piccola, non faccio nulla Response.ContentType = "image/jpeg"; oldImage.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg); oldImage.Dispose(); oldImage = null; } } catch (Exception ex) { Response.Write(ex.Message); } } } } private bool IsInteger(string strTmp) { Regex objNotIntPattern = new Regex("[^0-9-]"); Regex objIntPattern = new Regex("^-[0-9]+$|^[0-9]+$"); return !objNotIntPattern.IsMatch(strTmp) && objIntPattern.IsMatch(strTmp); } </script>![]()
![]()
Nella pagina ASP che richiama il codice, la thumb la richiamo in questo modo:
[img]thumb.aspx?FileName=images/caricate/storia/grandi/<%= rs([/img]&ScaleFactor=30" border="0" alt="Ingrandisci">
avrei bisogno di conoscere anche width e height dell'immagine originale, in modo da passarli come variabile ad uno javascript per realizzare una popup adattata.
Ciauzze!!

Rispondi quotando
