Page 1 sur 1

Code de redimmensionnement

Posté : 01 mars 2011, 12:12
par Pandaluna illustrateur
Salut les codeurs.

Je viens poster sur ce forum pour une simple et innocente question.

Je suis en train de réaliser une interface client en flash , et j'utilise un code php pour télécharger et retailler une image, or le code ne marche qu' une fois sur 4:

Dans mon code je demande avec la librairie gd de me retailler et cropper l'image, selon des paramètres de taille (avec ratio) , mais au téléchargement 1 fois sur 2 ça m'applati l'image.

Quelqu'un aurais une ch'tite solution?

Merci à ceux qui aurons eut la gentillesse de me lire.

le code :
<?php
$source = imagecreatefromjpeg($_FILES['Filedata']['tmp_name']); // La photo est la source
$destination = imagecreatetruecolor(190, 170); // On crée la miniature vide

// Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
$largeur_source = imagesx($source);
$hauteur_source = imagesy($source);

$ratio = imagesx($source)/imagesy($source);

$ratio_w = imagesx($source)/imagesy($source);

$ratio_h = imagesy($source)/imagesx($source);

if($ratio<1){
  $largeur_destination = imagesx($destination);
  $hauteur_destination = imagesy($destination)*($ratio_h);
}else if($ratio>1){
  $largeur_destination = imagesx($destination)*($ratio_w);
  $hauteur_destination = imagesy($destination);
}else{
  $largeur_destination = imagesx($destination);
  $hauteur_destination = imagesy($destination);
}
// On crée la miniature
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);

// On enregistre la miniature sous le nom "mini_couchersoleil.jpg"
imagejpeg($destination, "img/small/" .$_FILES['Filedata']['name']);
?>

Re: Code de redimmensionnement

Posté : 01 mars 2011, 12:21
par stealth35
Pourquoi ne pas le faire direct en flash ca serait plus simple.

Re: Code de redimmensionnement

Posté : 01 mars 2011, 12:24
par Invité
Effectivement, mais bon .... j'avais en fait tout réalisé (interface) quand je me suis aperçu de ce ... petit problème (et pour tout avouer, je ne pense pas savoir comment le faire ...)

Donc tout reprendre au début m'embête un peut.

Re: Code de redimmensionnement

Posté : 01 mars 2011, 13:50
par xTG
En Flash dans mes souvenirs c'est assez simple de manipuler les images.
Toutes les propriétés concernées sont en lecture/écriture.
Don tu peux adapter l'algorythme en Flash en utilisant une syntaxe du genre image.width (ou tout du moins l'équivalent flash, à trouver dans la doc ;) )