Image como arreglo de bits
Patricio Olivares
polivare en lilyphilia.net
Mar Feb 27 02:51:04 CET 2007
Rafael Rodríguez Puente wrote:
> Hola:
> Tengo el siguiente fragmento de código
>
>
> from Image import *
> def metodo():
> img = Image()
> img = open("1.JPG")
>
> lo que quiero es que lo que el metodo devuelva sea la entrada de un
> objeto img en html, especificamente del atributo src.
> algo como esto:
> <img src="metodo">
>
> Pienso, aunque noe stoy seguro, que si se devolviera un arreglo de bits
> no debería haber problemas.
>
> Gracias.
>
> PD: Si alguien tiene idea de como hacerlo, aunque sea de otra forma, se
> aceptan sugerencias.
Desde código html (el <img src...), no se puede llamar
directamente a una función python. Algo que puedes hacer es un cgi
(o usar un framework para desarrollo web), y desde ahí dar
visibilidad vía web a esa función. Luego en el <img> pones la
dirección del cgi que hiciste.
Un tutorial sobre cgi:
http://webpython.codepoint.net/introduction
aquí hay más:
http://wiki.python.org/moin/CgiScripts
Dependiendo de tiempo/interés, podrías aprender a usar algún
framework para simplificar algunas tareas típicas de los
desarrollos web. De los que he visto uno muy simple es webpy,
pero también hay otros como django o turbogears por ejemplo.
http://wiki.python.org/moin/WebFrameworks
Una variante es que el método retorne el nombre de la imagen y no
el contenido. Eso puede ser más eficiente con imágenes grandes
porque la transmisión del contenido se le delega al servidor web y
no a python, pero para eso ya no te serviría un html simple, sino
que debería ser una plantilla que se interprete cuando un
usuario acceda a la dirección de la página. Eso de todas formas
requiere alguna configuración en el servidor.
Más información sobre la lista de distribución Python-es