Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    18

    Ridimensionamento Immagini

    Qualcuno sa dirmi come posso fare questa cosa:
    Ho una cartella di immagini.
    Vorrei creare in automatico, su una pagina.asp, delle miniature con una dimensione ridotta in percentuale (in modo che l'immagine non si distorcia) rispetto all'originale, dandogli solo il percorso dell'immagine.
    Cliccando sopra la miniatura, mi si deve aprire la relativa pop up con l'immagine in dimensione originale.

    Sapete lo script?

  2. #2
    Non puopi farlo in puro asp.
    Devi usare un componente e quindi avere acceso al server per poter registrarci componenti sopra.

    Dopo di che la sintassi dipende dal componente che usi.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    18
    l'accesso al server, ce l'ho.
    Cosa devo fare?

  4. #4
    Trovare un componente che faccia al caso tuo ed installarlo.
    Alcuni sono gratis, altri a pagamento.

    Se non erro uno tra i più usati è ASPimage.

  5. #5
    oppure asp.net ...
    php anche?!

  6. #6
    Originariamente inviato da cicciopie
    oppure asp.net ...
    php anche?!
    Sì, che io sappia sia asp.net che php hanno il supporto nativo.
    Php credo sia necessario avere installare delle librerie che però sono previster da 99% degli hoster.

  7. #7
    Utente di HTML.it L'avatar di heroes3
    Registrato dal
    Aug 2001
    Messaggi
    2,483
    oppure usare il il componente presente in firma

    gratis e molto potente


  8. #8
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    Io mi ritrovo spesso ad usare questo codice quando il server supporta asp.net
    codice:
    Public Sub ImgRedim(immagine as String, width as Integer, height as Integer, num as string, ext as string, size_img as string, cartella as string) 
    	Dim bmp as System.Drawing.Bitmap = CType(System.Drawing.Image.FromFile(immagine), System.Drawing.Bitmap) 
    	Dim name_thumb as string = num 
    	
    	if Convert.ToInt32(bmp.Height) > Height then 
    	
    		if height = 0 Then 
    			height = Convert.ToInt32(width / bmp.Width * bmp.Height) 
    		End if 
    		if width = 0 Then 
    			width = Convert.ToInt32(height / bmp.Height * bmp.Width) 
    		End if 
    		
    ' CHECK DELLE DIMENSIONI DI INPUT ( MAXWIDTH 600, MAXHEIGHT 400
    		if width <= 600 and height > 400 then 	  'redimnesiona il width su height 400
    			height	= 400
    			width 	= Convert.ToInt32(height/ bmp.Height * bmp.Width)
    		elseif width > 600 and height <= 400 then 'redimnesiona il width su height 400
    			width 	=	600
    			height 	= Convert.ToInt32(width / bmp.Width * bmp.Height) 
    		end if 
    
    
    
    		Dim miniaturabmp as New System.Drawing.Bitmap(bmp, width, height) 
    		
    		if immagine.EndsWith(".jpg") Then 
    			miniaturabmp.Save(Server.MapPath("../writable/public/" & cartella & "/" & name_thumb  & ".jpg"), System.Drawing.Imaging.ImageFormat.Jpeg) 
    		else 
    			miniaturabmp.Save(Server.MapPath("../writable/public/" & cartella & "/" & name_thumb  & ".gif"), System.Drawing.Imaging.ImageFormat.Gif) 
    		end if 
    		miniaturabmp.Dispose() 
    
    	else 
    
    		if immagine.EndsWith(".jpg") Then 
    			bmp.Save(Server.MapPath("../writable/public/" & cartella & "/" & name_thumb  & ".jpg"), System.Drawing.Imaging.ImageFormat.Jpeg) 
    		else 
    			bmp.Save(Server.MapPath("../writable/public/" & cartella & "/" & name_thumb & ".gif"), System.Drawing.Imaging.ImageFormat.Gif) 
    		end if 
    
    	end if
    	   
    	Dim f As New FileInfo(server.MapPath("../writable/public/" & cartella & "/" & name_thumb & ext))		
    	Dim info_bmp as System.Drawing.Bitmap = CType(System.Drawing.Image.FromFile(server.MapPath("../writable/public/" & cartella & "/" & name_thumb & ext)), System.Drawing.Bitmap) 
    	Height = Convert.ToInt32(info_bmp.Height)
    	Width =  Convert.ToInt32(info_bmp.Width)
       	info_bmp.Dispose()  
    	 if cartella = "grande" then 
    		 Dim_grande.text = "" & name_thumb & ext & " - Dimensioni: " & Width & "x" & Height & " Peso: " & FormatNumber(f.Length/1024, 1, , ,TriState.True) & " Kb"	
    	 elseif cartella = "piccola" then		 
    		 Dim_piccola.text = "" & name_thumb & ext & " - Dimensioni: " & Width & "x" & Height & " Peso: " & FormatNumber(f.Length/1024, 1, , ,TriState.True) & " Kb"
    	 end if 
    	 
       	bmp.Dispose()  
    End Sub 
    'Esempio di chiamata
    inputFile.PostedFile.SaveAs(Server.MapPath("../writable/public/" & num & ext)) 'num  è un random per evitare che esista il file (magari un controllo  + scrupoloso non guasterebbe :)
    		Dim size_img = inputFile.PostedFile.ContentLength
     call ImgRedim(immagine, 100, 0, num, ext, size_img,"piccola") 
     call ImgRedim(immagine, 600, 0, num, ext, size_img,"grande")
    Questo perchè nel backoffice delle persone invece di fargli creare
    una miniatura (che salvo nell'esempio in writable/public/piccola/) ed una foto vera (che salvo nell'esempio in writable/public/grande/)
    gli fai caricare una foto anche grossolana (sempre cmq jpg o gif) e poi ne creo una miniatura ed una che abbia i limiti imposti dal layout del sito (nel codice sopra cambia c'è un controlla che impone come massimo with 600 e height a 400)

  9. #9
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    O.T per il forum ASP?
    chiedo scusa ai mod , non lo faccio + lo giuro

  10. #10
    Scuasate l'intromissione...
    io uso asp, ma su un server win2003 che dovrebbe supportare .net (se non erro...)
    posso richiamare una funzione o una pagina asp.net per risolvere il problema dell'immagine piccola?
    Altra domanda, ma le DLL se le metto nella cartella BIN non le posso richiamare? Le devo registrare a forza?
    Rino

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.