Afficher un message
Vieux 25/10/2007, 10h12   #7
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
 
Page generated in 0,06644 seconds with 9 queries