reducir la resolución de píxeles de imagen de mapa de bits actionscript 3?

Necesito disminuir los píxeles de la imagen de 480 X 480 a 30 X 30. Esto requiere la reducción de la resolución de píxeles, no veo ningún método para eliminar píxeles individuales en una imagen de mapa de bits.

Necesito esta reducción de resolución porque estoy estudiando la distorsión en el procesamiento de imágenes, en el lado breve.

Se agradecería cualquier ayuda en esto.

preguntado el 12 de junio de 12 a las 21:06

¿Hay algún problema con simplemente crear un nuevo BitmapData que sea 30x30 y luego configurar su algoritmo para copiar o configurar los píxeles apropiados en el nuevo BitmapData en lugar de intentar restar píxeles del inicial? -

gracias, intentare hacer eso. Me había centrado en una sola solución. -

1 Respuestas

package
{
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.geom.Matrix;
    import flash.net.URLRequest;

    public class DownSampling extends Sprite
    {
        private var _loader : Loader;
        public function DownSampling()
        {
            _loader = new Loader;
            _loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImgLoaded);

            // Get the bitmap
            _loader.load(new URLRequest("https://appharbor.com/assets/images/stackoverflow-logo.png"));
        }

        private function onImgLoaded(e : Event) : void
        {
            var currentBitmapdata : BitmapData = Bitmap(_loader.content).bitmapData;
            var i : uint = 9;
            var downFactor : Number = 0.2;

            // this will reduce size by 20%
            var downMat : Matrix = new Matrix;
            downMat.scale(1 - downFactor, 1 - downFactor);

            while(--i)
            {
                // Create new bitmapdata but smaller
                var smallerImg : BitmapData = new BitmapData(currentBitmapdata.width * (1-downFactor), currentBitmapdata.height * (1-downFactor), true, 0);

                // Copy and apply scale
                smallerImg.draw(currentBitmapdata, downMat);

                // Add to stage and set alpha to 50%
                addChild(new Bitmap(smallerImg)).alpha = .5;

                // Apply the same transform next loop
                currentBitmapdata = smallerImg;
            }
        }

    }
}

Resultado: Resultado de la secuencia de comandos: downSampling

Respondido el 14 de junio de 12 a las 13:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.