Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1408 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Comment connaître la dimension d'une image générée dynamiquement ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment connaître la dimension d'une image générée dynamiquement ?

n°1036469
lalex
Posté le 05-04-2005 à 21:48:06  profilanswer
 

Quelques explications :
 
Pour redimensionner des images à la volée à une taille convenue, j'appelle un script PHP fait par mes soins, qui ouvre l'image, là redimentionne avec la librairie GD, et renvoie le code de l'image en JPG.
 
L'appel se fait de cette manière :
 

<img src="resize_image.php?img=mon_image.jpg&max150" />


 
Dans cet exemple, je récupère le code d'un JPG qui fera au max 150 px en hauteur ou largeur.
 
Jusqu'alors je n'ai jms eu de prob avec ce script, mais il s'avère que sur un site que je monte tout en CSS, Opera que j'aime (pas) déconne si je ne précise pas explicitement la largeur et la hauteur de mon image.
C'est-à-dire qu'il veut par exemple, ceci :
 

<img height="120" width="150" src="resize_image.php?img=mon_image.jpg&max150" />


 
Le problème, c'est que je calcule ces dimensions dans mon script de redimensionnement et j'ai beau passer en revue un peu toutes les solutions, je ne vois pas comment récupérer ces dimensions.
 
Sachant que ce script est appelé à chaque image, passer par un fichier est délicat (en plus d'être moche), puisqu'il faut l'effacer à la fin du redimentionnement. J'ai essayé, ça semble merder, la balise <img> n'aime pas trop subir une suppression de fichier dans la milli-seconde qui suit...
 
Voilà, j'ai imaginé :
- passage par session (ne marche pas)
- passage par variable globale (ne marche pas)
- passage dans un bloc mémoire (peut-être que ça marche, m'enfin bon...)
- écriture dans un fichier (bof bof)
- ...
 
 
Voilà, si quelqu'un qui a compris le prob aurait une solution originale, je suis preneur !

mood
Publicité
Posté le 05-04-2005 à 21:48:06  profilanswer
 

n°1036594
T509
$job-&gt;GetJob(now)
Posté le 05-04-2005 à 23:31:40  profilanswer
 

Pourquoi demander à ton serveur de faire un resize à chaque visiteur qui passe ? Cela fait de l'utilisation de ressource inutile.  
 
Je te conseille l'utilisation d'un cache.
 
- lors de la préparation d'une page, à chaque imagen tu vérifies si la miniature existe
- Sinon, tu la crées et tu obtiens en sortie de ta fonction le nom et la taille.
- Si oui, il n'y a plus qu'à aller chercher la taille de l'image
- Pour éviter que ton cache ne se remplisse pour rien, tu peux prévoir de l'effacer toutes les semaines par exemple avec un CRON.
 
Je pense que c'est le process le plus propre.

n°1036611
lalex
Posté le 05-04-2005 à 23:46:11  profilanswer
 

ui exact :)
 
C'est plus par feignantise que je l'ai pas fait, vu que le site n'a qu'une 30taine de visiteurs par jour, c'est pas la mort pour l'instant de laisser comme ça. Mais c'est vrai qu'un cache serait plus approprié et résolverait le prob qui plus est.
 
J'ai cependant résolu le prob en attendant. J'avais déjà passé quelques heures dans ma CSS sans trouver d'astuce mais là je viens de mettre le doigt dessus. Ce n'est même pas une astuce, juste un bottom:0px dans un pied de page :|. Mais quand on cherche trop ailleurs des fois, on en perd un peu la raison.
 
Merci de ta réponse en tt cas T509. :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Comment connaître la dimension d'une image générée dynamiquement ?

 

Sujets relatifs
php redimensionner imageconnaitre le N° de la ligne VBA Word 2000
[javascript] Taille d'une imagePb d'impression avec image
Redimentionner image dans PictureBox ??frame et image en background
[PHP] Problème de redimensionnement d'image !Mysql, peut on créer un champ contenant une image jpg
[latex] insérer imageEnvoyer une image vers une iframe
Plus de sujets relatifs à : Comment connaître la dimension d'une image générée dynamiquement ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR