Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Images > GD
GD Forum d'entraide pour l'extension GD permettant de manipuler des images en PHP. Avant de poster -> tutoriels GD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/07/2007, 21h35   #1
Candidat au titre de Membre du Club
 
Inscription : mai 2007
Messages : 19
Détails du profil
Informations personnelles :
Âge : 23

Informations forums :
Inscription : mai 2007
Messages : 19
Points : 14
Points : 14
Par défaut Ma miniature est toute noire !?!?

Bonjours,

J'ai réalisé un formulaire avec un champs de type file, mon fichier (jpeg) est transferer sur mon serveur sans problème. Ensuite, je fait une miniature et pour finir je supprime l'image d'origine (si biensur l'images est trop grande).
La miniatur est bien créé (les dimentions son bonne) mais le problème, c'est qu'elle est toute noire ?!?!?

Je vous met le code :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
$limite = 180; // Je défini la taille maxi de l'image
 
$size = getimagesize($DESTINATION_FOLDER.$nom2); // je recupère les dimensions de l'image
$hauteur = $size[1]; // la hauteur de l'image uploader
$largeur = $size[0]; // la largeur de l'image uploader
 
if ($hauteur >= $limite || $largeur >= $limite) // On compare les dimensions de façon à voir si il faut redimentionner
{
	$source = imagecreatefromjpeg($DESTINATION_FOLDER.$nom2); //on recupère l'image
 
	if ($hauteur >= $limite && $hauteur >> $largeur) // On calcule les nouvelles dimensions
	{
		$hauteur = $hauteur / ($largeur / $limite);
		$largeur = $limite;
	}
	else
	{
		$largeur = $largeur / ($hauteur / $limite);  // On calcule les nouvelles dimensions
		$hauteur = $limite;
	}
}
 
$destination = imagecreatetruecolor($largeur, $hauteur); // Création de l'image redimentionner vide
 
$largeur_source = imagesx($source); // largeur de l'image source
$hauteur_source = imagesy($source); // hauteur de l'image source
$largeur_destination = imagesx($destination);
$hauteur_destination = imagesy($destination);
 
$nomMiniature = 'img_'.$nom2; // je nomme la nouvelle image
 
imagecopyresampled ($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_desination, $largeur_source, $hauteur_source);
imagejpeg($destination, $DESTINATION_FOLDER.$nomMiniature);
 
unlink($DESTINATION_FOLDER.$nom2); // et je supprime
Je vous en remercie d'avance
dutbas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 00h14   #2
vic
Membre éprouvé
 
Inscription : août 2002
Messages : 430
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 430
Points : 408
Points : 408
Envoyer un message via MSN à vic
Hello,

il y a une typo : $hauteur_desination au lieu de $hauteur_destination lors de l'appel de imagecopyresampled.
vic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 07h43   #3
Candidat au titre de Membre du Club
 
Inscription : mai 2007
Messages : 19
Détails du profil
Informations personnelles :
Âge : 23

Informations forums :
Inscription : mai 2007
Messages : 19
Points : 14
Points : 14
Merci Vic !

A dire que ça fait 2 jours que je lis et relis ce code!
Tout ça pour un fichu "T"

Encore merci Vic

@ bientôt
dutbas est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h06.


 
 
 
 
Partenaires

Hébergement Web