Newsgroup: it.lavoro.professioni.webmaster
Titolo: [PHP] riconoscere orientamento immagini

Ciao a tutti
volevo sapere se e come è possibile riconoscere l'orientamento di una
foto....
praticamente devo mettere in random una foto in  homepage da una data
gallery e fin qui nessun problema...
il fatto è che la devo ridimensionare a una larghezza massima di 180 quindi:
if (funzione_orizzontale) { $larghezza = 180; $altezza = 135; }
if (funzione_verticale) { $larghezza = 180; altezza = 240; }
......
print "<img src="$immagine_random" width=$larghezza height=$altezza>";
--
        __^ ^__
 oOo (o)(_)(o) oOo
|                            |
|   
www.djcris.it
     |
| _____________ |
U                        U


E' molto semplice ottenere queste informazioni utilizzando la funzione
getimagesize.
Ti riporto un esempio semplificato ai minimi termini...
<?
$size = getimagesize($image); // dimensioni in pixel dell'immagine
$x = $size[0]; //lunghezza di x
$y = $size[1]; //lunghezza di y
if ($x > $y) {...} //immagine orrizzontale
else {...}         //immagine verticale.
?>

 getimagesize.
Cosi' non trovi l'orientamento, solo il lato piu' lungo.
-- 
I am what I am, I do what I can
L'uomo, conscio di sbagliare, persevera.

 Cosi' non trovi l'orientamento, solo il lato piu' lungo.
Da quello che avevo capito a Dj Cris interessava sapere se un'immagine era
orizzontale o verticale...e, con la funzione getimagesize, puoi saperlo
visto che il primo dato che ti fornisce è la larghezza e il secondo è
l'altezza del'immagine.
Se c'è qualocsa di errato in quello che ho detto potresti correggermi?
Grazie
ciao

 Se c'h qualocsa di errato in quello che ho detto potresti correggermi?
[mi quoto]
Cosi' non trovi l'orientamento, solo il lato piu' lungo.
[/quoto]
Per trovare il reale orientamento e' necessario implementare un
algoritmo piu' o meno complesso (es. con filtri baesiani etc.) per
maggiori dettagli rimando a google "image orientation detection".
Quello che proponi nel 50% dei casi puo' portare alla visualizzazione
di una immagine sottosopra (ossia ruotata a 180 gradi).


"Setec Astronomy" <setec@_NO_NOSPAM_freemail.it> ha scritto nel messaggio
news:5eHTc.43459$OH4.1...@twister1.libero.it...

Mah a me sembra di aver capito che al tizio interessasse sapere quale fosse
il lato piu lungo e quale il piu corto di una data immagine, che poi questa
sia capovolta o ruotata etc non credo sia quello che ha chiesto, ed è in
ogni caso un altro problema.
Cooper.
-- 
[web:]  
http://www.blueware.it
 (aggiornato!)
[icq:]  146 781 935
[msn:] 
coo...@blueware.it

 ha scritto nel messaggio
news:SjITc.141570$5D1.6...@news4.tin.it...


 era giusto sapere qual'è il lato più lungo!!!
e una volta saputo... come fai a dire se va in verticale o in orizzontale ?
-- 
Lino Mari [mod - it.economia.e-commerce]
http://www.ebow.it
 - e-business on web!
http://www.ebow.it/blog/
 - Mktg Log
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - d2D004


Questo dovrebbe saperlo lui a priori in base alla disposizione dei contenuti
della pagina dove collocare l'immagine.



cooper si parla di orientamento! Non c'e' da valutare e decidere DOVE
far vedere l'immagine, ma COME
santa paletta...


mmm non era "porca paletta" ? :P


 questo caso l'orientamento dell'immagine (inteso come contenuto) che può


 ?>
compilandolo cosě mi da perň questo errore:
Parse error: parse error, expecting `T_VARIABLE' or `'$'' in
c:\programmi\apache\htdocs\
djcris.it
\index.php on line 35
anche usando list():
 list($l, $h) = getimagesize($rnd);
 if ($l > $h) { $larg = 180; $alt = 135; }
 if ($1 < $h) { $larg = 180; $alt = 240; }

  if ($1 < $h) { $larg = 180; $alt = 240; }
Hai scritto "if dollaro uno" e non "if dollaro elle".



gia'... santa polenta e porca paletta
ho fatto un medley
:-P

Veramente è una L e cmq l'errore me lo da sia che metta quello sia che metta
qualsiasi altro nome
123 - largh <--- confronta ;-)
--
        __^ ^__
 oOo (o)(_)(o) oOo
|                            |
|   
www.djcris.it
     |
| _____________ |
U                        U
"Setec Astronomy" <setec@_NO_NOSPAM_freemail.it> ha scritto nel messaggio
news:VI%Tc.44216$OH4.1...@twister1.libero.it...


 ha scritto nel
messaggio news:h34Uc.144621$5D1.7...@news4.tin.it...

qui è lo script completo:
<?
 $rnddir = "image";
 srand((double)microtime()*1000000);
 $rnd1 = round(rand(1, $lastimg));
 $rnd = "$rnddir/$rnd1.jpg";
 list($l, $h) = getimagesize($rnd);
 if ($l > $h) { $larg = 180; $alt = 135; }
 if ($1 < $h) { $larg = 180; $alt = 240; }
 print "<span class=\"Stile3\">Foto casuale: $rnd1</span>";
 print "<img src=$rnddir/$rnd.jpg width=$larg height=$alt border='0'>";
 ?>
$lastrnd è dichiarato in un include esterno dove inserisco tutte le
variabili

 if ($1 < $h) { $larg = 180; $alt = 240; }
A dimostrazione, confronta il tuo warning con quello generato dal
seguente codice:
<?php 
	$1 = 10;
?>
Please
http://wiki.news.nic.it/QuotarBene
