[BLOB->GD] Redimensionner un "flux image binaire"... [Résolu]

Signaler
Messages postés
445
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
22 mars 2007
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Bonjour à tous,
Je cherche à faire une page pour afficher la carte d'identité d'un "agent", pour simplifier disons juste son nom et sa photo.


Je lit des images dans une base de données partagée (via odbc). Les images sont enregistrées en binaire dans la base par une autre application (je sais que ce n'est pas forcément l'idéal, mais c'est comme ça).


J'ai créé 2 fichiers php :
- agent.php lit et affiche le nom de l'agent et positionne un champ image
- photoId.php lit dans la base l'image associée à l'agent et affiche le résultat, après un petit header("Content-type: image/jpeg");


Comme les images sont ajoutées par l'autre application, je ne maitrise pas leurs dimensions. Aussi, je voudrais les redimensionner via GD. Le redimensionnement proprement dit ne me pose (a priori) pas de problème, mais je ne sais pas comment récupérer le flux binaire dans une variable de type ressource image, exploitable par GD... J'aimerai éviter, si possible, de créer des fichiers images sur le disque du serveur.

Merci pour toutes vos suggestions.
Arn;o)

5 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
bah imagecreatefromstring :



http://fr.php.net/manual/fr/function.imagecreatefromstring.php



et ta chaîne correspond à la variable que tu as récupérée :-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



bah lorsque tu redimensionnes ton image tu as un problème ensuite pour l'envoyer au navigateur c'est ça ?

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
445
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
22 mars 2007
1
Salut Anthomicro,
Je vais essayer d'être un peu plus clair :
Pour redimensionner une image, je pensais utiliser les fonctions GD, du genre imagecreate(), imagecopy(), imagegd()... mais ces fonctions attendent en paramètre soit un nom de fichier (imagecreatefromjpg()...), soit une variable de type ressource (imagegd()...).
Je n'ai pas de problème pour envoyer l'image au navigateur, la fonction header le fait très bien.

-> je ne sais pas comment créer une image GD à partir du flux binaire que j'ai récupéré dans ma requète...

J'espère que mes propos sont un peu plus compréhensibles...

Arn;o)
Messages postés
445
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
22 mars 2007
1
Super, c'est pile poil ce que je cherchais ! Je ne connaissais pas, et il y a tellement de fonctions "image..." que je n'avais pas vu celle-là.
Merci Anthomicro

Arn;o)
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Pas de quoi

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>