Lentreprenaute Posté 13 Février 2004 Posté 13 Février 2004 Bonjour, Est il possible lors d'un upload de redimensionner la taille d'une image? un fonction pour faire cela? Merci Florent
Dan Posté 13 Février 2004 Posté 13 Février 2004 Salut Florent, Le redimensionnement se fera après l'upload en se basant sur le fichier uploadé. Il existe des scripts en php pour ce faire, mais ils dépendent des librairies graphiques gd installées. Avec les versions 1.6 et antérieures, le "true color" n'est pas supporté ... mais le devient ensuite avec gd 2.0 qui ne supporte par contre plus le format gif. Donnes-nous des infos sur ta config, et je pourrai mieux t'orienter vers les bons scripts, ainsi que le type d'images que tu veux redimensionner: gif, jpg, png ... Dan
Lentreprenaute Posté 13 Février 2004 Auteur Posté 13 Février 2004 Bonjour Dan, Merci, Pour l'instant je développe en local easyphp1.7, je n'ai pas encore de serveur je pense prendre un dédié chez sivit prochainement, je sais pas si la config de base qu'il livre comprendra ca! mais je pourrais l'installer. maintenant pour développer je sais pas si easyphp permet d'installer ca? Florent
Beatnykk Posté 13 Février 2004 Posté 13 Février 2004 je pense que des modules de traitement d'images par le serveur sont gérables sans soucis par easyphp, du moment qu'elles sont bien compatibles avec la version d'apache de celui-ci. par exemple vois ce que fait ce script : h**p://www.stargeek.com/item/32245.html pas testé mais on sait jamais !!!
Dan Posté 14 Février 2004 Posté 14 Février 2004 Salut Lentreprenaute, Voici de quoi démarrer avec la bibliothèque gd. C'est un bout de code que j'utilise pour redimensionner les photos jpg sur mes sites immobiliers. $use_true_Color = "Y"; $maxX = 360; $ratio = ($srcX / $maxX); $dstY = ($srcY / $ratio);$dstX = $maxX; if ($use_true_Color == "Y") { $newimage = ImageCreateTrueColor($dstX, $dstY); imagecopyresampled($newimage, $inputImg, 0, 0, 0, 0, $dstX+1, $dstY+1, $srcX, $srcY); }else { $newimage = ImageCreate($maxX, $maxY); imagecopyresized($newimage, $inputImg, (($maxX - $dstX) / 2),(($maxY - $dstY) / 2),0,0, $dstX+1, $dstY+1, $srcX, $srcY); } imageJPEG($newimage, "$full_name",75); $img_size=filesize($full_name); Il y a quelques variables à pré-définir: $use_true_Color: mettre à "Y" pour bibliothèque gd version 2.0 , "N" autrementsi mal positionné tu auras une erreur pour le fonction imagecopyresampled qui n'existe pas.... laisses à "Y" et ne changes que si tu as l'erreur en exécution.$fullname: nom du fichier où stocker l'image retaillée;$maxX: largeur max de l'image en pixels.$inputImg: est l'image originelle. Tu peux aussi changer la qualité de l'image, en variant le dernier paramètre de imageJPEG (75 dans l'exemple). Plus petit signifie plus petite taille, mais qualité moindre. Le maximum est 100. Cordialement, Dan PS: ce script retaille l'image en gardant les proportions. Toutes les variantes sont possibles... ce sont les fonctions imagecopyresized ou imagecopyresampled qui font tout le boulot. Ca vaut le coup de regarder les pages du manuel pour ces deux fonctions.
Lentreprenaute Posté 14 Février 2004 Auteur Posté 14 Février 2004 Merci pour la matière, Dan, je vais voir ca
Mado Posté 15 Février 2004 Posté 15 Février 2004 bonjour on peut la trouver ou la bibliotheque gd j'ai sur mon pc easyphp apache php c'est dedans? merci marie
Dan Posté 15 Février 2004 Posté 15 Février 2004 Bonjour Marie, Elle fait partie de l'installation de base de Php... La meilleure maniere de voir precisément ce qui est installé avec php est encore de faire un programme simple, d'une seule ligne, et de l'exécuter. <?php phpinfo(); ?> Cordialement, Dan
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant