Forum Clubic

Faire un crop d'une zone d'une image

Salut à tous,

Je cherche à récupèrer une portion d’image avec php en ayant les coordonnées de la zone à prendre/couper… mais je galère sec… ça me sort jamais l’encadré de l’exemple ci dessous.

http://images4.hiboox.com/images/3608/cc031b29efa35de56d411d122728e3a1.jpg

Et voici mon bout de code :

		list($w, $h) = getimagesize($_POST['url_img']);

		$simg = imagecreatefromjpeg($_POST['url_img']);
		$dimg = imagecreatetruecolor($_POST['w'], $_POST['h']);
		
		imagecopyresampled($dimg,$simg,$_POST['x1'],$_POST['y1'],$_POST['x2'],$_POST['y2'],$_POST['w'],$_POST['h'],$w,$h);
		
		imagejpeg($dimg,'a.jpg',100);
		
		echo '<img src="a.jpg" />';

Je ne veux pas redimensionner l’image, mais juste récupérer la zone encadrée (faite avec jQuery)
Soit j’utilise la mauvaise fonction, soit je comprends pas >_<…

Une petite aide ? Merci.
Edité le 05/09/2008 à 22:17

Je sais pas comment j’ai fait… j’ai utilisé la fonction imagecopy(), avec ces parametres là… et il arrive à me cropper la zone alors que je ne lui donne que les coordonnés x,y du coin en haut à gauche… et pas ceux du coin en bas à droite…

imagecopy($dimg,$simg,0,0,$_POST['x1'],$_POST['y1'],$w,$h);

Ce qui est normal

Ouaip, après une nuit de sommeil, j’ai compris… il se sert de ce bout de code :

$dimg = imagecreatetruecolor($_POST['w'], $_POST['h']);

Je sais pas comment expliquer, mais je me comprends, l’essentiel c’est que ça marche ^^

Bah ça crée une nouvelle image à la dimension du cadre, c’est tout. L’autre code ne fait que copier les pixels vers cette image.