Couper une partie d'une image

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Couper une partie d'une image

Re: Couper une partie d'une image

par k77 » 23 juil. 2012, 10:03

Merci pour vos réponses

Re: Couper une partie d'une image

par sirakawa » 21 juil. 2012, 18:43

Même si ce n'est pas faux, je trouve malcommode de mêler les GET et les POST au code comme tu fais.
Par ailleurs je suis un peu surpris du mélange de GET et de POST.
ok voila mon code :
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
	// Création des instances d'image
        //$src = imagecreatefromjpeg($_GET['img']);
       // ainsi on peut facilement vérifier les valeurs manipulées: 
       $jpg = ( isset ( $_GET['img'])) ? $_GET['img'] : "" ;
      // ou plutôt:
      if ( isset ( $_GET['img'])
      {
           $jpg = $_GET['img'];
           //ici il serait bien de tester l'existence de l'image 
       }
      else
      {
           // un traitement d'erreur
           die("pas de get");
      }
       $src = imagecreatefromjpeg($jpg);

        $dest = imagecreatetruecolor(100, 100);
        
        // les $_POST[ ] represente les coordeonés de l'image d'origine selectionner avec JQuery et JCROP
        // Copie
$x =  $_POST['x']; // avec des précautions que je ne développe pas
$y =  $_POST['y'];
$w = $_POST['w'];
$h = $_POST['h'];
        imagecopy($dest, $src, 0, 0,$x,, 100, 100);
        // ensuite tu copie une partie de l'image src dans l'image dest
        imagecopyresampled($dst_r,$src_r,50,50,$x,$y,100,100,$w,$h);// decaler de 50px de la gauche et 50px du haut
    
        
        // Affichage et libération de la mémoire
        header('Content-Type: image/jpeg');
        imagejpeg($dest);
        
        imagedestroy($dest);
        imagedestroy($src);

}
?>
merci pour votre aide

Re: Couper une partie d'une image

par k77 » 20 juil. 2012, 18:33

A effectivement, je ne pensais pas à ces variables. Merci je vais regarder et je vous tiens au courant :wink:

Re: Couper une partie d'une image

par xTG » 20 juil. 2012, 18:26

$dst_r et $src_r proviennent d'une autre page ?
Ce sont des ressources image donc j'en doute...

Sinon à part cela ton utilisation de imagecopyresampled() est correcte.
Donc si l'image ne s'affiche pas correctement, actives les erreurs PHP et commentes le header().

Re: Couper une partie d'une image

par k77 » 20 juil. 2012, 17:09

Si, mes variables viennent d'une autre page et sont envoyées à celle ci par formulaire.
Je dois utilisé donc soit imagecopy(), soit imagecopyresampled(), c'est ça ?

Pouvez vous me montrer un exemple afin de réussir à couper juste un carre d'une image s'il vous plait, ça fait 4 jours que je suis dessus et pas moyen de trouver.

Merci d'avance pour votre aide

Re: Couper une partie d'une image

par xTG » 20 juil. 2012, 17:00

Tu utilises des variables qui n'existent pas. ;)
Et ton imagecopy() est redondant avec le imagecopyresampled().

Re: Couper une partie d'une image

par k77 » 20 juil. 2012, 15:21

ok voila mon code :
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
	// Création des instances d'image
        $src = imagecreatefromjpeg($_GET['img']);
        $dest = imagecreatetruecolor(100, 100);
        
        // les $_POST[ ] represente les coordeonés de l'image d'origine selectionner avec JQuery et JCROP
        // Copie
        imagecopy($dest, $src, 0, 0, $_POST['x'], $_POST['y'], 100, 100);
        // ensuite tu copie une partie de l'image src dans l'image dest
        imagecopyresampled($dst_r,$src_r,50,50,$_POST['x'],$_POST['y'],100,100,$_POST['w'],$_POST['h']);// decaler de 50px de la gauche et 50px du haut
    
        
        // Affichage et libération de la mémoire
        header('Content-Type: image/jpeg');
        imagejpeg($dest);
        
        imagedestroy($dest);
        imagedestroy($src);

}
?>
merci pour votre aide

Re: Couper une partie d'une image

par xTG » 20 juil. 2012, 14:58

Montres nous ton essai qu'on te dise ce qui ne va pas.

Re: Couper une partie d'une image

par K77 » 20 juil. 2012, 14:43

Oui merci, je l'ai essayé mais je ne suis parvenu à aucun résultat.
Pouvez vous m'aider ?

Merci d'avance.

Re: Couper une partie d'une image

par xTG » 20 juil. 2012, 14:35

Regardes du côté de la librairie GD.
Il y a par exemple la fonction : http://fr.php.net/manual/en/function.imagecopy.php

Couper une partie d'une image

par k77 » 20 juil. 2012, 13:42

Bonjour, j'aimerais pouvoir découper un carré (de 100px par exemple) dans une image. Ce carré serait situé à 50px du bord gauche et 50px du haut de l'image. Savez vous comment procéder ?

Merci d'avance pour votre réponse. :wink: