manipulation de photo et une autre question

beber
Invité n'ayant pas de compte PHPfrance

20 juin 2007, 23:40

Bonjour,

je voudrais faire une application qui upload des photo sur un serveur (ça c'est pas dur), qui ensuite vérifié ces dimensions et son poids( ça non plus c'est pas dur) et apres je voudrais qu'elle modifie les dimensions et le poids de la photo s'ils sont trop important (par rapport à un poids mex et à des dim maximales).
En gros, j'ai déjà réalisé un script via php et une librairie(dont j'ai perdu le nom^^). Il fonctionne très bien, on voit la photo qui n'a pas les dimensions adéquates et on change les valeurs via un formulaire, on valide et on visualise la photo aux bonnes dimensions. Jusqu'ici pas de problème...

J'aimerai maintenant, mettre en place une seconde option. Elle consisterai à de demander à l'utilisateur de selectionner une partie de la photo... j'aimerai en plus qu'il puisse le faire via la souris. On visualise la photo et à l'aide de la souris, il selectionne une partie de la photo(en traçant un rectangle par ex), il valide et on visualise la nouvelle photo...

Avez vous la moindre idée de la manière dont je dois m'y prendre?

Merci beaucoup.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9783 Messages

20 juin 2007, 23:53

Bonjour,

Voila ce que tu cherches à faire je pense:
http://www.dhtmlgoodies.com/scripts/ima ... -crop.html

Le code de ce script est fourni ici:
http://www.dhtmlgoodies.com/index.html? ... image-crop
Quand tout le reste a échoué, lisez le mode d'emploi...

Mammouth du PHP | 531 Messages

21 juin 2007, 12:43

Une fonction que j'utilise. Par contre je n'ai pas penser a un truc c'est les images en mode portrait. E,n fait je sais pas trop comment faire :D
Du coup quand c'ets en mode paysage ps de probleme la fonction redmimenssione en 800 de large, mais si c'ets un portait il faudrais que le script redimenssione a 800 de hauteur et là c'est pas le cas :
function reducimage($image,$ext_ok,$max,$dest_fichier) {
	$dimension= getimagesize($image); // prend la taille de l'image
	$ext= substr(strrchr($_FILES['photo']['name'], '.'), 1); // prend l'extension de l'image
	if($ext!=$ext_ok) { // SI extension pas OX
		echo 'Ceci n\'est pas un fichier .jpg';
		exit();
	}
		if($dimension[0]>$max) { // SI WIDTH > $max
				$reduc= $max/$dimension[0];
				$coef_l= $max;
				$coef_h= $dimension[1]*$reduc;
				$chemin = imagecreatefromjpeg($image);
				$nouvelle =imagecreatetruecolor ($coef_l, $coef_h);
				imagecopyresampled($nouvelle,$chemin,0,0,0,0,$coef_l,$coef_h,$dimension[0],$dimension[1]);
				imagejpeg($nouvelle,$image);
				imagedestroy ($chemin);
			}
		echo '<a href="gestiongalerie_ajout_etape2.php?url_image='.$dest_fichier.'">Passer à l\'étape 2</a>';
}
?>

beber
Invité n'ayant pas de compte PHPfrance

22 juin 2007, 16:37

Merci beaucoup pour ces infos...

A plus