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 20/04/2007, 09h34   #1
Membre du Club
 
Inscription : mars 2004
Messages : 208
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 208
Points : 63
Points : 63
Par défaut Problème de syntaxe imagecopyresized

Bonjour,
Je suis en train de me tirer es cheuveux depuis un certain temps un sur un petit morceau de code que j'ai récupérér sur un code fonctionnel que j'avais créé précédement.
Donc voilà mon bout de code:
Code :
1
2
3
4
5
6
7
8
$uploaddir = './images/'.$_POST['txt'].'.jpeg';
$newtaillex=120;
$newtailley=90;
 
$thumb = imagecreatetruecolor($newtaillex, $newtailley);
$source = imagecreatefromjpeg($uploaddir);
 
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newtaillex, $newtailley, $taillex, $tailley);
et mon problème c'est qu'il me cré bien ma copie d'image dans le bon dossier mais il conserve les dimension d'origine (800*600)
shelko est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 09h37   #2
Fabouney
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Salut,

$tailleX et $tailleY valent quoi ?

Cordialement.
  Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 09h40   #3
Membre du Club
 
Inscription : mars 2004
Messages : 208
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 208
Points : 63
Points : 63
Desole j'avais oublie ce morceau
Code :
1
2
3
4
5
6
7
8
9
10
11
$size=getimagesize($uploaddir);
$taillex=$size[0];
$tailley=$size[1];
$uploaddir = './images/'.$_POST['txt'].'.jpeg';
$newtaillex=120;
$newtailley=90;
 
$thumb = imagecreatetruecolor($newtaillex, $newtailley);
$source = imagecreatefromjpeg($uploaddir);
 
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newtaillex, $newtailley, $taillex, $tailley);
shelko est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 10h56   #4
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Bonjour,

Je pense que cela devrait fonctionner car les paramètres semblent correct et bien instanciés.

Edit : Je viens de voir que tu récupère la taille de l'image via un getimagesize mais que le chemin uploaddir est renseigné plus loin. N'y aurait-il pas une petit inversion dans les blocs de codes :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
$uploaddir = './images/'.$_POST['txt'].'.jpeg';
 
$size=getimagesize($uploaddir);
$taillex=$size[0];
$tailley=$size[1];
 
$newtaillex=120;
$newtailley=90;
 
$thumb = imagecreatetruecolor($newtaillex, $newtailley);
$source = imagecreatefromjpeg($uploaddir);
 
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newtaillex, $newtailley, $taillex, $tailley);
Pour ma part j'utilise plutôt imagecopyresamped() qui donne une meilleure qualité
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 11h05   #5
Membre du Club
 
Inscription : mars 2004
Messages : 208
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 208
Points : 63
Points : 63
Ben voilà mon morceau de code avec imagecopyresampled:
Code :
1
2
3
4
5
6
7
8
9
10
11
$size=getimagesize($uploaddir);
$taillex=$size[0];
$tailley=$size[1];
$uploaddir = './images/'.$_POST['txt'].'.jpeg';
$newtaillex=120;
$newtailley=90;
 
$thumb = imagecreatetruecolor($newtaillex, $newtailley);
$source = imagecreatefromjpeg($uploaddir);
 
imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newtaillex, $newtailley, $taillex, $tailley);
Je pense que tout est d'apres php.net.Mais bon ça ne fonctionne pas plus qu'avec imagecopyresized.En fait ça fait comme si la dernière instruction n'existait pas car j'ai essayé de la mettre en commentaire ça ne change rien.
J'ai toujours ma création d'image quie se fait mais avec une taille qui n'est pas celle que je lui demande.
Donc avant que je fasse venir un pretre vaudou et que je brule le pc je me retourne vers vous
shelko est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 11h09   #6
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
J'ai modifié mon post en précisant que l'ordre des instructions php me semblait bizarre notamment au niveau du getimagesize()

Et encore une question, fait tu une sauvegarde de l'image ( ou un affichage ) après le redimensionnement
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 11h17   #7
Membre du Club
 
Inscription : mars 2004
Messages : 208
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 208
Points : 63
Points : 63
En fait j'ai fait une boulette en reconstituant le bout de code car le chemin d'acces est tout en haute le getimagesize et au milieu et le reste tout en bas.Donc l'ordre est bon (je pense).
Sinon ensuite je stock entre autre le chemin d'acces a mon image (resizé si j'y arrive ) en BDD et donc l'image (resizé) est copié dans un dossier.

En fait je pourrais m'arréter la ou j'en suis et retailler mon image via un width et height dans mon html mais je prefère la retailler avant car elle pesera moin lourd sur le serveur et ça fera gagner du temps machine lors de l'ouverture de la page.
shelko 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 01h45.


 
 
 
 
Partenaires

Hébergement Web