REDIMENSIONNER UNE IMAGE EN PHP

inwebo
Messages postés
381
Date d'inscription
lundi 12 novembre 2007
Statut
Membre
Dernière intervention
23 octobre 2014
- 26 févr. 2010 à 16:39
silvaindup
Messages postés
1
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
6 juillet 2010
- 6 juil. 2010 à 15:30
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51353-redimensionner-une-image-en-php

silvaindup
Messages postés
1
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
6 juillet 2010

6 juil. 2010 à 15:30
Il y aurait une méthode mathématique plus simple et plus précise pour calculer les nouvelles dimensions que d'itérer une multiplication par 0.9 (je n'ai pas le temps de tester maintenant) ...

// à la place des lignes 26-33
// calculer le facteur et l’appliquer ...
$factor = min($maxSize / $orig_pictureSize_w , $maxSize / $orig_pictureSize_h) ;
$pictureSize_w = $pictureSize_w * factor ;
$pictureSize_h = $pictureSize_h * factor ;
digitaldax
Messages postés
11
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
25 mars 2010

28 févr. 2010 à 21:44
Tu as raison, il manques des commentaires c est essentiel pour comprendre correctement la source, je mettrai une update cette semaine.
(et aussi une option pour une miniature moche et raplatie :) )

Bonne soirée !
inwebo
Messages postés
381
Date d'inscription
lundi 12 novembre 2007
Statut
Membre
Dernière intervention
23 octobre 2014

28 févr. 2010 à 15:00
Je suis entièrement d'accord avec ce que tu me dis, je te donne plus quelques conseils pour enrichir un peu ta fonction, car :
- 1 : Il n'y a pas de doc, donc si un utilisateur qui ne connait rien au php tombe sur ta source qu'il l'essaye il se dira que cela ne fonctionne pas. Il ne s'amusera pas plus à passée la variable $maxSize en paramètre que de mettre une autre fonction de GD2 (hein !? GD2 c'est quoi ?).
- 2 : Il faut trouver une valeur ajoutée à ta source car si tu recherches 5 mins sur phpcs tu trouvera déjà pas mal de fonction identique, avec souvent les mêmes commentaires.
- 3 : Et si un utilisateur veut une miniature moche et raplatie.

++
digitaldax
Messages postés
11
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
25 mars 2010

27 févr. 2010 à 12:32
- Pas de gestion des erreurs.
pas besoin au niveau de la fonction, elle peut etre catcher niveau sup , lors du call de la fonction
- Si je veux des miniatures de 320*320
Tu change la variable $maxSize , ou tu la met en parametre
- Si elles ne doivent pas être proportionnelles
Bha ce sera une miniature moche et raplatie

- Si je veux les enregistrées en png
- Si l'image à redimensionnée est un GIF

Ce n est pas le but ici , et si tu veux un autre format de destination tu utilise une autre fionction de la gd2
ici c est imagejpeg(...)
inwebo
Messages postés
381
Date d'inscription
lundi 12 novembre 2007
Statut
Membre
Dernière intervention
23 octobre 2014

26 févr. 2010 à 16:39
Alors :

- Pas de gestion des erreurs.
- Si je veux des miniatures de 320*320
- Si elles ne doivent pas être proportionnelles
- Si je veux les enregistrées en png
- Si l'image à redimensionnée est un GIF

Encore des choses à revoir. Fais un tour sur phpcs tu trouveras des sources un peu plus évoluées pour t'en inspirer.