Tu estás aquí: ¡Bienvenido! » Traducciones » pygame » pygame.image
Usuario
Buscar páginas
Esta Pagina
General

pygame.image

Módulo de pygame para la transferencia de imagen.

El módulo image contiene funciones para leer y grabar imágenes, como así también para transferir superficies a formatos accesibles para otros paquetes.

Note que no hay una clase Image, una imagen se carga como un objeto Surface. La clase Surface permite operaciones como dibujar lineas, pintar pixeles, capturar regiones, etc.

El módulo image es una dependencia importante de pygame, aunque el soporte extendido a formatos es opcional. Por defecto solo puede cargar imágenes BMP sin compresión; pero con pygame se provee un soporte de imágenes completo, la función pygame.image.load() puede interpretar los siguientes formatos:

  • JPG
  • PNG
  • GIF (sin animación)
  • BMP
  • PCX
  • TGA (sin compresión)
  • TIF
  • LBM (y PBM)
  • PBM (y PGM, PPM)
  • XPM

La funcionalidad de guardar imágenes solo soporta un conjunto reducido de formatos. Puede grabar en los siguientes formatos:

  • BMP
  • TGA
  • PNG
  • JPEG

La grabación en formatos PNG y JPEG es una funcionalidad nueva de pygame 1.8.

load

Carga una nueva imagen desde un archivo.

pygame.image.load(filename): return Surface
pygame.image.load(fileobj, namehint=""): return Surface

Carga una imagen desde un archivo. Puede utilizar tanto un nombre de archivo como un objeto file de python.

Pygame determinará de forma automática el tipo de archivo (por ejemplo, gif o bmp) y generará un nuevo objeto Surface con esa información. En algunos casos necesitará conocer la extensión del archivo (por ejemplo las imagenes GIF deberían terminar en ”.gif”). Si utiliza un objeto archivo en formato crudo, seguramente necesitará enviar el nombre original del archivo como el argumento namehint.

La superficie retornada contendrá el mismo formato de color, colores clave o transparencia alpha que el fichero del que proviene. Generalmente querrá llamar a Surface.convert() sin argumentos para crear una copia que se pueda imprimir mas rápido en pantalla.

Para imágenes con transparencia alpha, como en las imágenes .png, use el método convert_alpha() luego de cargar la imágen, así la superficie resultante también tendrá transparencia.

Pygame no siempre tendrá soporte para todos los formatos. Como mínimo soportará el formato BMP sin compresión. Si pygame.image.get_extended() retorna True, usted podría ser capaz de cargar la mayoría de las imágenes, incluyendo png, jpg y gif.

Debería usar os.path.join() para otorgar mas compatibilidad.

surface = pygame.image.load(os.path.join('data', 'bla.png'))

save

Guarda una imagen en el disco.

pygame.image.save(Surface, filename): return None

Guardará la superficie como una imagen BMP, TGA, PNG o JPEG. Si la extensión del nombre de archivo no se reconoce, se utilizará por defecto .TGA. Tanto los formatos TGA como BMP generan archivos sin compresión.

Guardar archivos PNG y JPEG es una funcionalidad nueva de pygame 1.8.

get_extended

Consulta si los formatos de imagen extendidos se pueden cargar.

pygame.image.get_extended(): return bool

Si pygame fue construida con los formatos de imagen extendido esta función retornará True. Aún así no es posible determinar que formatos estarán disponibles, pero generalmente podrá leerlos todos.

tostring

Transfiere una imagen a una cadena de texto string.

pygame.image.tostring(Surface, format, flipped=False): return string

Genera una cadena que pude transferirse con el método fromstring en otros paquetes de imágenes de python. Algunos paquetes de imagen de python prefieren sus imágenes en el formato “de abajo hacia arriba”, por ejemplo el paquete PyOpenGL). Se invertirá verticalmente la cadena retorno si envía True como valor para el argumento flipped.

El argumento format es una cadena con uno de los siguiente valores. Note que solo las superficies de 8 bits pueden usar el formato “P”. Los otros formatos funcionarán con cualquier superficie. Ademas note que otros paquetes de imágenes de python suportan mas formatos que pygame.

Cadena format Superficie
P superficies de 8 bits con paleta.
RGB imagen de 24 bits.
RGBX imagen de 32 bits con un espacio sin utilizar.
RGBA imagen de 32 bits con un canal alpha (transparencia).
ARGB imagen de 32 bits con canal alpha en primer lugar.
RGBA_PREMULT imagen de 32 bits bajo la escala del canal alpha.
ARGB_PREMULT imagen de 32 bits bajo la escala del canal alpha en primer lugar.

fromstring

Genera una nueva superficie desde una cadena.

pygame.image.fromstring(string, size, format, flipped=False): return Surface

Esta función toma argumentos similares a pygame.image.tostring(). El argumento size es una tupla con números que representan el ancho y alto. Puede destruir la cadena original una vez que la nueva superficie se ha creado.

El formato y tamaño de la imagen debe coincidir exactamente con el mismo tamaño de la cadena. Se lanzará una excepción en otro caso.

Consulte el método pygame.image.frombuffer() para ver una forma posiblemente mas rápida de transferir imágenes en pygame.

frombuffer

Genera una nueva superficie que comparte los datos dentro de una cadena.

pygame.image.frombuffer(string, size, format): return Surface

Genera una nueva superficie que comparte los datos de los pixeles directamente desde la cadena. Esta función toma los mismos argumentos que pygame.image.fromstring(), pero no puede invertir verticalmente los datos de origen.

Funcionará mucho mas rápido que pygame.image.fromstring dado que no se alojan o copian datos de pixeles.

 
traducciones/pygame/image.txt · Última modificación: 11/05/2010 a las 03:09 por danibanez_7
Este sitio funciona sobre el motor wiki de DokuWiki.
© 2003-2008 Hugo Ruscitti