Filoweb.it

Ridimensionare le immagini con asp.net da una pagina


FB TW whatsapp RSS FEED News letter
VB.NET
Ridimensionare le immagini con asp.net da una pagina


Per ovviare al problema è sufficiente quindi creare una pagina, ad esempio img.aspx, che contenga questo codice:



' Import necessari:

' <%@ Import Namespace=" System.Drawing" %>

' <%@ Import Namespace=" System.Drawing.Imaging" %>



Sub Page_Load()



Dim width as Integer = 0

Dim height as Integer = 0



try

' ricava dimensioni dalla richiesta

if not Request.QueryString(" width" ) is Nothing Then

width = Int32.Parse(Request.QueryString(" width" ))

End if

if not Request.QueryString(" height" ) is Nothing Then

height = Int32.Parse(Request.QueryString(" height" ))

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.Gif)

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.Gif)

end if

end if



' pulizia finale

bmp.Dispose()



End Sub





Per usare lo script è sufficiente passare il percorso virtual dell' immagine, ad esempio in questo modo:



<img src=" img.aspx?img=/logo/logo.gif"
FB TW whatsapp RSS FEED News letter

filoweb.it è il sito personale di Filippo Brunelli
(c) 2017 Filippo Brunelli
Le immagini ed i testi contenuti nel sito filoweb.it sono di proprietà di Filippo Brunelli salvo diversamente indicato.
L'uso delle immagini e del testo è gratuito per uso personale ed è subbordinato alla citazione della fonte.
Brunelli Filippo declina ogni responsabilità per l'uso che viene fatto delle informazioni presenti nel sito filoweb.it.
X
La tua privacy è importante
Utilizziamo, senza il tuo consenso, SOLO cookies necessari alla elaborazione di analisi statistiche e tecnici per l'utilizzo del sito. Chiudendo il Cookie Banner, mediante il simbolo "X" o negando il consenso, continuerai a navigare in assenza di cookie di profilazione. More info

Tutti
Cookie tecnici
I cookie tecnici sono necessari al fine di "effettuare la trasmissione di una comunicazione su una rete di comunicazione elettronica, o nella misura strettamente necessaria al fornitore di un servizio della società dell'informazione esplicitamente richiesto dal contraente o dall'utente a erogare tale servizio" (art. 122, comma 1 del Codice privacy).
Cookie analitici di terze parti
I cookie analytics sono utilizzati al fine di valutare l'efficacia di un servizio della società dell'informazione fornito da un titolare di un sito, per progettare un sito web o contribuire a misurare il "traffico" di un sito web, ovvero il numero di visitatori ripartiti per area geografica, fascia oraria della connessione o altre caratteristiche.
Cookie di profilazione
Sono cookie che creano profili personalizzati relativi all'utente per finalità di marketing, ad esempio il retargeting o advertising sui social network.

FILOWEB.it Piccolo quaderno degli appunti. Argomento: VB.NET, Titolo:Ridimensionare le immagini con asp.net da una pagina. Altri script riguardano: CSS, Jscript, .net, Classic Asp, HTML, Jquery, varie, url rewrite, pagina protetta da password, ecc. Altro su https://www.filoweb.it