¿Cómo obtener el tamaño de una imagen incrustada / swf?
-
22-07-2019 - |
Pregunta
Normalmente, si estaba cargando una imagen desde una URL, haría lo siguiente:
m_image = new Image();
m_image.addEventListener(Event.COMPLETE, image_completeHandler, false, 0, true);
m_image.source = "http://www.example.com/image.jpg";
private function image_completeHandler(event:Event):void
{
// Image content has now loaded, we need to wait for it to validate it's size
m_image.addEventListener(FlexEvent.UPDATE_COMPLETE, image_updateCompleteHandler, false, 0, true);
}
private function image_updateCompleteHandler(event:FlexEvent):void
{
// Do stuff with width / height
}
Pero, si configura el origen en una clase de imagen incrustada, el evento completo no parece dispararse. Entonces mi pregunta es, ¿cómo puede obtener el ancho / alto de una imagen / swf incrustada?
Solución
La instancia de cualquier activo incrustado es sincrónica (creo que la única excepción es Loader.load Bytes), por lo que tan pronto como lo haga, podrá acceder a todas sus propiedades:
image = new EmbeddedImage();
trace(image.width, image.height);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow