Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Aituo script ASP.NET

  1. #1
    Utente di HTML.it L'avatar di fungo
    Registrato dal
    Jul 2000
    residenza
    Caorle
    Messaggi
    726

    Aituo script ASP.NET

    Ciao a tutti, ho un problema con lo script per visualizzare delle miniature.

    Il codice sotto :

    Per mezzo di questo codice è possibile visualizzare una miniatura dell'immagine indicata via GET:


    <%@ 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 = 20; // 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.WidthScaleFactor/100), (oldImage.HeightScaleFactor/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>

    Questo codice andrà salvato come file ASPX e dovrà essere richiamato semplicemente con:


    [img]Pagina.aspx?FileName=Immagine.jpg&ScaleFactor=20[/img]

    Tutto funziona bene, solamente che io le immagini che voglio visualizzare in miniatura sono all'interno di una cartella.

    Se io scrivo cosi src="Pagina.aspx?FileName=cartella1/caretlla2/Immagine.jpg&ScaleFactor=20"

    lo script non mi visualizza niente, presumo che il problema sia dovuto al passaggio della stringa FILENAME che viene convertita string strFileName = Convert.ToString(Request.QueryString["FileName"'>);, chi mi aiuta ?


    Grazie e buonagiornata.
    Mungo Mauro

  2. #2
    Utente di HTML.it L'avatar di fungo
    Registrato dal
    Jul 2000
    residenza
    Caorle
    Messaggi
    726

    RE

    Scusate, ma adesso funziona.

    Grazie lo stesso
    Mungo Mauro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.