PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Autres forums > Forum Programmation & Conception > fr.comp.lang.python > CStringIO pour générer des images
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
CStringIO pour générer des images

Réponse
 
LinkBack Outils de la discussion
Vieux 24/10/2007, 18h21   #1 (permalink)
Salvatore
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut CStringIO pour générer des images

Bonsoir la communauté,

J'aimerais dans mes fichiers HTA générer dynamiquement
des images avec le module 'PIL' .
Malheureusement la balise '<img src=' /> n'accepte qu'un nom de
fichier.
Quelqu'un aurait-il une idée sans utiliser 'print content-type...'
avec le module CStringIO ?

J'espère avoir été clair...

CCordialement

Salvatore

  Réponse avec citation
Vieux 24/10/2007, 20h19   #2 (permalink)
|-| /-\\ |_ \(\)7 [°¿°]
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: CStringIO pour générer des images

Bonsoir !


Ah ! la ! la ! J'ai longtemps cherché, sans succès.

Avec Opera (et Firefox), il est possible de mettre du base64 dans une URL ; exemple :

<img src="data:image/gif;base64,
R0lGODlhAwEgAPcAAP///87OzqWlpYSEhHNzc2tra1paWiEYGP9CGP8xAL1SEN6thO+cQv+ E
AP/OGP/OAM7Oxr29xjEA/2MA/5wA/+8A/+dK79573talzv8AnO9KjP8AY+eEnO9SY/8AGAAA
...



Mais, ça ne marche pas avec IE, et donc pas avec les .HTA.

J'ai cherché deux autres voies (en fait deux versions du même trucs) :
- lors d'envoi d'e-mails-art intégrant des images ("payload"), l'image est encodée en base64 et
accompagne ainsi le message
- en sauvegardant une page (web/html) contenant une image, sous le format .MHT (archive-Web), tout
est inclus dans le document (image en base64).

Malheureusement, je n'ai pas trouvé de moyen de lier ça à une page en cours d'utilisation.


Bref, si tu trouves un moyen, ça m'intéresserait beaucoup !


@+

Michel Claveau





  Réponse avec citation
Vieux 24/10/2007, 20h50   #3 (permalink)
Salvatore
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re:

Merci Michel,

J'ai bien peur que nos recherches restent vaines.
Satané IE !!!

  Réponse avec citation
Vieux 24/10/2007, 21h57   #4 (permalink)
William Dode
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: CStringIO pour générer des images

On 24-10-2007, Salvatore wrote:
> Bonsoir la communauté,
>
> J'aimerais dans mes fichiers HTA générer dynamiquement
> des images avec le module 'PIL' .
> Malheureusement la balise '<img src=' /> n'accepte qu'un nom de
> fichier.
> Quelqu'un aurait-il une idée sans utiliser 'print content-type...'
> avec le module CStringIO ?


Quel est le problème avec print content-type ? C'est fait pour...

--
William Dodé - http://flibuste.net
Informaticien indépendant
  Réponse avec citation
Vieux 24/10/2007, 23h28   #5 (permalink)
Méta-MCI \(MVP\)
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: CStringIO pour générer des images

Bonsoir !

Je pense que les propos de Salvatore sont flous. Il veut pouvoir mettre/manipuler/visualiser une
image dans une page HTML (ici dans un .HTA), sans passer par un fichier disque.

@+

MCI

  Réponse avec citation
Vieux 25/10/2007, 07h23   #6 (permalink)
William Dode
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: CStringIO pour générer des images

On 24-10-2007, Méta-MCI (MVP) wrote:
> Bonsoir !
>
> Je pense que les propos de Salvatore sont flous. Il veut pouvoir mettre/manipuler/visualiser une
> image dans une page HTML (ici dans un .HTA), sans passer par un fichier disque.


Justement, en changeant le content-type ça se fait très bien sans passer
par un fichier disque... Par ex je fait qq chose comme ça pour envoyer
des icones :

gifs {"print":'''\
R0lGODlhEAAOAIQAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwM DcwKbK8N7e3gB7AAD/ACkx/ylj
/1paWoSEhK21rb29vc7Ozt7e3ufv5/f39////////////////////////////////////yH5BAEA
AB8ALAAAAAAQAA4AAAVT4CeKUGma4whNVutOQEpaTl1bsby6b5 5CloZQiAMYVSxeCwBhxk7QkpPp
UlgVk6yzGY0yuS1rVkDWNj9AcZbB1h6N8Hj8kQNYrthJJAKgp+ SAIyEAOw==
''',}

self.content_type = "image/gif"
self.echo(base64.decodestring(g))


--
William Dodé - http://flibuste.net
Informaticien indépendant
  Réponse avec citation
Vieux 25/10/2007, 10h12   #7 (permalink)
Salvatore
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: CStringIO pour générer des images

Bonjour,

Effectivement je n'ai pas été très clair :-)

J'utilise effectivement un fichier .hta et je ne passe
pas par un serveur.
Voici l'exemple:


<code>
#http://lost-theory.org/python/dynamicimg.html
import Image,ImageDraw
import cStringIO
from random import randint as rint

def randgradient():
img = Image.new("RGB", (300,300), "#FFFFFF")
draw = ImageDraw.Draw(img)

r,g,b = rint(0,255), rint(0,255), rint(0,255)
dr = (rint(0,255) - r)/300.
dg = (rint(0,255) - g)/300.
db = (rint(0,255) - b)/300.
for i in range(300):
r,g,b = r+dr, g+dg, b+db
draw.line((i,0,i,300), fill=(int(r),int(g),int(b)))

f = cStringIO.StringIO()
img.save(f, "PNG")

print "Content-type: image/png\n"
f.seek(0)
print f.read()

#Ici je désire mettre à jour le "<div id='centre>"
def displayImage():
setValue('centre',r"<img src='%s'/>"%randgradient())
</code>

La partie qui pe pose problème est :

print "Content-type: image/png\n"
f.seek(0)
print f.read()

Je ne peux pas utiliser 'print' dans ce script.
Quel valeur de retour puis-je renvoyer ?

Salvatore















William Dode a écrit :
> On 24-10-2007, Méta-MCI (MVP) wrote:
>> Bonsoir !
>>
>> Je pense que les propos de Salvatore sont flous. Il veut pouvoir mettre/manipuler/visualiser une
>> image dans une page HTML (ici dans un .HTA), sans passer par un fichier disque.

>
> Justement, en changeant le content-type ça se fait très bien sans passer
> par un fichier disque... Par ex je fait qq chose comme ça pour envoyer
> des icones :
>
> gifs {"print":'''\
> R0lGODlhEAAOAIQAAAAAAIAAAACAAICAAAAAgIAAgACAgMDAwM DcwKbK8N7e3gB7AAD/ACkx/ylj
> /1paWoSEhK21rb29vc7Ozt7e3ufv5/f39////////////////////////////////////yH5BAEA
> AB8ALAAAAAAQAA4AAAVT4CeKUGma4whNVutOQEpaTl1bsby6b5 5CloZQiAMYVSxeCwBhxk7QkpPp
> UlgVk6yzGY0yuS1rVkDWNj9AcZbB1h6N8Hj8kQNYrthJJAKgp+ SAIyEAOw==
> ''',}
>
> self.content_type = "image/gif"
> self.echo(base64.decodestring(g))
>
>

  Réponse avec citation
Vieux 25/10/2007, 13h13   #8 (permalink)
Salvatore
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut HTA : ouverture de fihiers

Michel,

A force de manipuler ces fichiers je finis par me mélanger les pinceaux.
Je ne parviens même pas à ouvrir un simple
fichier texte pour afficher le contenu dans un "div" !!!

Michel, peux-tu me dire si tu y parviens ? merci.

def setValue(divid,data):
elt = document.getElementById(divid)
elt.innerHTML = data

def test():
f = open('/test.txt').read()
setValue('centre',f)

Cordialement

Salvatore



a écrit :
> Bonsoir !
>
> Je pense que les propos de Salvatore sont flous. Il veut pouvoir
> mettre/manipuler/visualiser une image dans une page HTML (ici dans un
> .HTA), sans passer par un fichier disque.
>
> @+
>
> MCI
>

  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 01h45.


Édité par : vBulletin® version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 0,12377 seconds with 16 queries