Traitement d'image
Pièces détachées Forum Contact

Traitement d'image

Nous rachetons vos PC portables (et MAC) HS
jacque99

Traitement d'image

Bonjour tout le monde,
Au fait, j'ai deux scripts qui fonctionnent bien, la première :
En choisi une image via un formulaire, puis en redimensionne l'image et finalement en enregistre avec un nouveau nom saisie par l'utilisateur.
Le 2e script :
En prend une partie d'une image.
Ce que j'ai essayé de faire :
Modifier le 2e scripte pour me permettre de :
Choisir l'image via un formulaire
Prendre la partie d'image
Enregistrer l'image avec un nouveau nom saisi par l'utilisateur.
J'ai essayé plusieurs fois pour mélanger les deux scripts, mais je ss tout le temps bloqué.
Je suis à l'écoute de vos conseils
Merci
Voici  mes scriptes

//**************************************************************************************Premier script
//****************************************index.php

<html>
<head></head>
<body>
    <!--On affiche le formulaire d'envoi d'une image-->
    <center>
    <br /><hr />

    <form method="post" enctype="multipart/form-data" action="upload.php">
    <p>
   
   
   
       Le nom de l'image redimensionner avec 95 ,95
       <input type="text" name="video"><br><br>
      
      
      
    <input type="file" name="fichier" size="30">
    <input type="submit" name="upload" value="Uploader">
    </p>
    </form>
    </center>
   
  </body>
  </html>


//****************************************upload.php

<?php


$nomImage=$_POST['video'];

if( isset($_POST['upload']) ) // si formulaire soumis
{
    $content_dir = 'upload/'; // dossier où sera déplacé le fichier

    $tmp_file = $_FILES['fichier']['tmp_name'];

    if( !is_uploaded_file($tmp_file) )
    {
        exit("Le fichier est introuvable");
    }

    // on vérifie maintenant l'extension
    $type_file = $_FILES['fichier']['type'];

    if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'png') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') )
    {
        exit("Le fichier n'est pas une image");
    }

    // on copie le fichier dans le dossier de destination
   
    $ext = substr($_FILES['fichier']['name'], strrpos($_FILES['fichier']['name'], '.'));

    $name_file = $nomImage.$ext;
    echo $name_file;


    //fonction pour changer les dimentions des fichiers
  function redimensionner($file, $maxwidth, $maxheight) {

list($rawwidth, $rawheight, $type) = @getimagesize($file);

  if ($maxwidth < $rawwidth && $rawwidth >= $rawheight) {

    $width = $maxwidth;

    $height = ($width / $rawwidth) * $rawheight;

  }

  elseif ($maxheight < $rawheight && $rawheight >= $rawwidth) {

    $height = $maxheight;

    $width = ($height /$rawheight) * $rawwidth;

  }

  else {

    $height = $rawheight;

    $width = $rawwidth;

  }

  $imgbuffer = imagecreatetruecolor($width, $height);

  switch($type) {

    case 1: $image = imagecreatefromgif($file); break;

    case 2: $image = imagecreatefromjpeg($file); break;

    case 3: $image = imagecreatefrompng($file); break;

    case 4: $image = imagecreatefrombmp($file); break;

    default: exit("Tried to create thumbnail from $file: not a valid image");

  }

  if (!$image) exit("Image creation from $file failed for an unknown reason. Probably not a valid image.");

  else {

    imagecopyresampled($imgbuffer, $image, 0, 0, 0, 0, $width, $height, $rawwidth, $rawheight);

    imageinterlace($imgbuffer);

    switch($type) {

   
   
   
      case 1: $image = imagegif($imgbuffer, $file, 80); break;

      case 2: $image = imagejpeg($imgbuffer, $file, 80); break;

      case 3: $image = imagepng($imgbuffer, $file, 7); break;

 

    }

  }

}


if( preg_match('#[\x00-\x1F\x7F-\x9F/\\\\]#', $name_file) )

{

  exit("Nom de fichier non valide");

}

  else if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )

{

  exit("Impossible de copier le fichier dans $content_dir");

}

redimensionner($content_dir.$name_file,95, 95);

}
?>


//***************************************************************************************Deuxième scripte : Prendre une partie de l'image
index.php

<?php
function CroppedThumbnail($imgSrc,$thumbnail_width,$thumbnail_height) { //$imgSrc is a FILE - Returns an image resource.
    //getting the image dimensions 
    list($width_orig, $height_orig) = getimagesize($imgSrc);   
    $myImage = imagecreatefrompng($imgSrc);
    $ratio_orig = $width_orig/$height_orig;
   
    if ($thumbnail_width/$thumbnail_height > $ratio_orig) {
       $new_height = $thumbnail_width/$ratio_orig;
       $new_width = $thumbnail_width;
    } else {
       $new_width = $thumbnail_height*$ratio_orig;
       $new_height = $thumbnail_height;
    }
   
    $x_mid = $new_width/2;  //horizontal middle
    $y_mid = $new_height/2; //vertical middle
   
    $process = imagecreatetruecolor(round($new_width), round($new_height));
   
    imagecopyresampled($process, $myImage, 0, 0, 0, 0, $new_width, $new_height, $width_orig, $height_orig);
    $thumb = imagecreatetruecolor($thumbnail_width, $thumbnail_height);
    imagecopyresampled($thumb, $process, 0, 0, ($x_mid-($thumbnail_width/2)), ($y_mid-($thumbnail_height/2)), $thumbnail_width, $thumbnail_height, $thumbnail_width, $thumbnail_height);

    imagedestroy($process);
    imagedestroy($myImage);
    return $thumb;
}

//Create the thumbnail
$newThumb = CroppedThumbnail("monImage.png",200,200);

// And display the image...
header('Content-type: image/jpeg');
imagejpeg($newThumb);
?>



  



Réponse rapide

forum Répondez et participez librement forum
Services informatiques Merci d'écrire un message de plus de 10 mots en français correct. (Tout message mal rédigé sera effacé.)

Produits en vente en relation avec le sujet :

Pied de page des forums

Forum : Réseau - Sécurité - Materiel
Php - Référencement - Serveurs - Divers
Windows - Internet - Logiciels - Communication
SARL Brakstar / 485 013 809 R.C.S. BOURGES
2 rue de coulon. 18310 Graçay
Mail : societe@brakstar.com
USA EN ES BR PO DE NL IT SU DN HU JP TE RU PL FI NO GR SE SL ET TH UK SL IN LH RO LE HE BG CZ MS CAT IR CR