- Home
- Categorie
- Coding e Sistemistica
- Coding
- recuperare width e height di una immagine sul web
- 
							
							
							
							
							
recuperare width e height di una immagine sul webCiao a tutti, 
 io continuo a sottoporvi quesiti, sperando sempre che possiate risolvere ciò che non riesco a trovare in rete.Il quesito è il seguente: 
 ho un elenco di prodotti per i quali alcune foto sono in locale, altre sono prese direttamente dal sito del produttore.
 Nel database quindi ho un campo che contiene l'url dell'immagine.Quando le vado a inserire in un tabella, però, ogni foto avrà la sua dimensione e spesso sono verticali oppure orizzontali, cioè con larghezza>altezza e viceversa. 
 Se forzo il ridimensionamento, le immagini saranno distorte, al contrario di quelle locali che sono fatte con width e height della stessa misura.Esiste quindi un modo per stabilire quindi quale delle due misure è maggiore dell'altra, in modo che posso ridimensionare solo la misura più grande? Grazie 
 Luca
 
- 
							
							
							
							
							
Non conosco Asp e non so se si possa fare con quel linguaggio. E' certo che è una cosa che si può fare, e di solito si fa, con Javascript. 
 
- 
							
							
							
							
							
Può andare bene anche javascript. 
 Magari inserisco lo script nella pagina, in modo da farmi restituire i due valori
 
- 
							
							
							
							
							
Ciao se stai lavorando in Asp.Net prova ad usare questo codice Dim bt as New Bitmap() bt = Image.FromFile(path) Dim w as Integer = bt.width Dim h as Integer = bt.HeightSe sei in Asp, purtroppo non so risponderti 
 
- 
							
							
							
							
							
Si, sono in asp classico e le immagini in realtà sono in web, non il locale 
 
- 
							
							
							
							
							
beh per il web credo che non ci sia problema, metti quello nel path e dovrebbe andare. 
 Per gli oggetti purtroppo non so se vadano bene anche per l'asp classico o se sono stati introdotti nel .net sinceramente
 
- 
							
							
							
							
							
Ciao Psicona, se può esserti d'aiuto ho trovato questo in rete: http://jsfiddle.net/jeykeu/HZPkm/1/ 
 
- 
							
							
							
							
							
è perfetto!!! 
 Grazie
 
- 
							
							
							
							
							
 
- 
							
							
							
							
							
Ho ancora un problema che non riesco a risolvere. Come devo combinare insieme javascript e asp? 
 Il primo è lato client, il secondo è lato server.Dal database carico i record (nei quali può esserci il nome del file locale oppure l'url dell'immagine remota). 
 Quindi la pagina sarà un html con i record già estratti. Ma dovrà anche già aver ridimensionato le immagini (tramite lo script).in parole semplici: 
 Do
 response.write "<img src="
 if rs("imglocale")=true then
 imglocale=rs("nomefile")
 response.write server.mappath(imglocale)
 else
 response.write rs("urlImg") & " width=""100"""
 end if
 response.write ">"
 LoopIn realtà la width (o la height) deve essere determinata nello script, a seconda di quale delle due sia quella più grande: se un'immagine remota è orizzontale mi restituirà la width, altrimenti la height. Ho già lo script nella head della pagina, ma non so inserirlo nel codice asp direttamente, perché mi esce scritto come fosse html (non so se riesco a spiegarmi). 
 
- 
							
							
							
							
							
Credo di essermi spiegato male. 
 Qui un html di esempio:<html> 
 <head>
 <title>prova dimensionamento immagini</title><script "text/javascript"> 
 function dimensioneImg(imgSrc){
 var img = new Image();
 img.onload = function() {
 if (this.width>=this.height){
 document.write(' width="50" ')
 } else {
 document.write(' height="50" ')
 }
 img.src = imgSrc;
 }
 </script></head> 
 <body><table> 
 <tr><td><img src="tuttodisegni.com/files/2012/08/semaforo.jpg"></td><td>descrizione articolo3</td></tr>
 <tr><td><img src="img.directindustry.it/images_di/photo-g/casco-protezione-60721-4994415.jpg"></td><td>descrizione articolo</td></tr>
 <tr><td><img src="vocearancio.ingdirect.it/wp-content/uploads/2014/03/bici-12.jpeg"></td><td>descrizione articolo2</td></tr>
 </table></body> 
 </html>In questo caso vengono visualizzate le immagini con dimensione reale. Ad esempio la prima è verticale, quindi la funzione dovrebbe aggiungere l'opzione 'height=50' al tag img, mentre le altre due sono orizzontali, quindi dovrebbe aggiungere l'opzione 'width=50'. 
 Ho provato con onload inserito nel tag img ma non funziona.
 
- 
							
							
							
							
							
da questo esempio 
 http://stackoverflow.com/questions/1297449/change-image-size-with-javascript
 sembra che possa funzionare anche dall'onload
 
- 
							
							
							
							
							
Grazie. 
 Proverò a implementarlo.nel frattempo ho trovato anche questo: 
 easierthan.blogspot.it/2013/02/code-tip-3-classic-asp-image-resizer.htmlIn pratica carica una pagina .net e la legge con asp Proverò entrambi e vi farò sapere