Las clases Bitmap y BitmapData

Las clases principales de ActionScript 3.0 para trabajar con imágenes de mapas de bits son la clase Bitmap, que se utiliza para mostrar imágenes de mapa de bits en la pantalla, y la clase BitmapData, que se emplea para acceder a los datos de imagen sin formato de un mapa de bits y manipularlos.

Subtemas

Aspectos básicos de la clase Bitmap
Ajuste a píxeles y suavizado
Aspectos básicos de la clase BitmapData

Aspectos básicos de la clase Bitmap

Como subclase de la clase DisplayObject, la clase Bitmap es la clase principal de ActionScript 3.0 para mostrar imágenes de mapa de bits. Estas imágenes se pueden cargar en Flash mediante la clase flash.display.Loader o se pueden crear dinámicamente utilizando el constructor Bitmap(). Al cargar una imagen de una fuente externa, los objetos Bitmap sólo pueden usar los formatos de imagen GIF, JPEG o PNG. Una vez creada, la instancia de Bitmap se puede considerar como un envolvente de un objeto BitmapData que se debe representar en el escenario. Dado que las instancias de Bitmap son objetos de visualización, también se pueden utilizar todas las características y funcionalidades de los objetos de visualización para manipularlas. Para más información sobre la utilización de los objetos de visualización, consulte el Programación de la visualización.

Ajuste a píxeles y suavizado

Además de las funcionalidades comunes a todos los objetos de visualización, la clase Bitmap proporciona algunas características adicionales específicas de las imágenes de mapa de bits.

La propiedad pixelSnapping es similar a la característica de ajustar a píxeles de la herramienta de edición Flash, y determina si un objeto Bitmap se ajusta a su píxel más cercano o no. Esta propiedad acepta una de tres posibles constantes definidas en la clase PixelSnapping: ALWAYS, AUTO y NEVER.

La sintaxis para aplicar el ajuste a píxeles es la siguiente:

myBitmap.pixelSnapping = PixelSnapping.ALWAYS;

Suele ocurrir que, cuando se escalan las imágenes de mapa de bits, éstas se vuelven difusas y distorsionadas. Para reducir esta distorsión se puede utilizar la propiedad smoothing de la clase BitmapData. Cuando esta propiedad booleana está definida como true, al escalar la imagen, los píxeles de ésta se suavizan. Esto otorga a la imagen una apariencia más clara y natural.

Aspectos básicos de la clase BitmapData

La clase BitmapData, que pertenece al paquete flash.display, se asemeja a una instantánea fotográfica de los píxeles que contiene una imagen de mapa de bits cargada o creada dinámicamente. Esta instantánea se representa mediante una matriz que contiene los datos de los píxeles del objeto. La clase BitmapData también contiene una serie de métodos incorporados que resultan muy útiles a la hora de crear y manipular los datos de los píxeles.

Se puede usar el siguiente código para crear una instancia de un objeto BitmapData:

var myBitmap:BitmapData = new BitmapData(width:Number, height:Number, transparent:Boolean, fillColor:uinit);

Los parámetros width y height especifican el tamaño del mapa de bits. El valor máximo para cualquiera de ellos es de 2880 píxeles. El parámetro transparent especifica si entre los datos del mapa de bits se incluye un canal alfa (true) o no (false). El parámetro fillColor es un valor de color de 32 bits que especifica el color de fondo, así como el valor de la transparencia (si se le ha definido como true). En el siguiente ejemplo se crea un objeto BitmapData con un fondo anaranjado y una transparencia del 50 por ciento:

var myBitmap:BitmapData = new BitmapData(150, 150, true, 0x80FF3300);

Para representar en la pantalla un objeto BitmapData recién creado, se debe asignar a una instancia de Bitmap o envolverse en ella. Para ello, se puede pasar el objeto BitmapData como parámetro del constructor del objeto Bitmap o asignarlo a la propiedad bitmapData de una instancia de Bitmap existente. También es necesario añadir la instancia de Bitmap a la lista de visualización llamando para ello a los métodos addChild() o addChildAt() del contenedor del objeto de visualización que contendrá a la instancia de Bitmap. Para más información sobre la utilización de la lista de visualización, consulte Adición de objetos de visualización a la lista de visualización.

En el siguiente ejemplo se crea un objeto BitmapData con un relleno rojo y se muestra en una instancia de Bitmap:

var myBitmapDataObject:BitmapData = new BitmapData(150, 150, false, 0xFF0000);
var myImage:Bitmap = new Bitmap(myBitmapDataObject);
addChild(myImage);

Flash CS3

 

Enviarme un mensaje de correo electrónico cuando se añadan comentarios a esta página | Informe de comentarios

Página actual: http://livedocs.adobe.com/flash/9.0_es/main/00000243.html