|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 6 ![]() |
Bonjour, ( ou bonsoir :p )
J'ai actuellement un petit soucis avec un projet de site ( que je réalise avec le template de phpBB - phplib ). En effet je souhaite en récupérant le nom de photos dans la bdd les afficher via un fichier .tpl Jusque là aucun soucis, j'inclus le nom de cette manière : Par contre, je voudrais générer des miniatures de ces images en utilisant php et GD2 pour imagecopyresampled qui produit des miniatures de bonnes qualités. J'ai donc crée une fonction qui redimensionne une image via son nom et qui affiche la miniature. Seulement si je fais cela : Code :
'IMG_NAME' => img_resize_gd($name_img) Auriez-vous une astuce ? ( Je pourrais utiliser le css pour faire un width:50%; sur les images pour avoir les miniatures, mais on optient un qualité médiocre Merci ! |
|
|
00
|
|
|
#2 |
![]() ![]() Guillaume RossoliniDirecteur technique Inscription : février 2004 Messages : 13 720 ![]() |
Salut
Je crains que ta question n'ait déjà trouvé réponse ici-même un grand nombre de fois, car ta confusion est bien légitime. Il faut bien voir que GD, pour envoyer une image au navigateur, a besoin d'envoyer les en-têtes HTTP correspondant au type de ton image. Cela signifie que tu ne peux pas envoyer de texte dans la même page, puisque la ressource que tu envoies doit être exclusivement une image. La solution est de déléguer l'affichage de ton image à un script différent de celui qui affiche le reste de ta page, exactement comme si ton script était l'image : pour le navigateur, c'est le cas. Dans ton tag <img>, la propriété src doit donc contenir l'URI du script PHP produisant la miniature. De cette manière, le navigateur effectue une requête HTTP différente pour le script produisant le code HTML et celui produisant la miniature, ce qui élimine les soucis de conflits d'en-têtes. Bien sûr, c'est ici un faux problème. La génération d'image est tellement gourmande en ressources qu'il est nettement préférable de le faire une bonne fois pour toutes plutôt que de manière dynamique.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework) Ressources PHP - Ressources Zend Framework |
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 6 ![]() |
Mici !
Citation:
Il faudrait donc mieux que je redimensionne directement via css même si la qualité est pas top ? ou que je crée les miniatures et que je les Upload ensuite ? |
|
|
|
00
|
|
|
#4 |
![]() ![]() Guillaume RossoliniDirecteur technique Inscription : février 2004 Messages : 13 720 ![]() |
Tu peux utiliser GD pour faire tes miniatures mais ne les génère pas à la volée : fais-les une fois pour toutes. Il y a des tutoriels pour cela dans nos cours.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework) Ressources PHP - Ressources Zend Framework |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 6 ![]() |
En fait, je n'avais pas vu les possiblité d'enregistrement de GD ( allez savoir pourquoi...)
J'ai donc fait comme tu me l'indiquais, cela fonctionne au poils. Encore merci pour tes conseils ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com