PDA

Просмотр полной версии : Получить информацию об изображении


HardCoder
19.06.2011, 14:16
Здравствуйте. Такая проблема: с помощью FileReference загружаю картинку, добавляю ее на сцену. Все работает, но как мне узнать например размер этой картинки в пикселях?
public function download():void {
fileRef = new FileReference();
fileRef.browse([new FileFilter("Images", "*.jpg;*.gif;*.png")]);
fileRef.addEventListener(Event.SELECT, onFileSelected);
}

private function onFileSelected(e:Event):void {
fileRef.addEventListener(Event.COMPLETE, onFileLoaded);
fileRef.addEventListener(IOErrorEvent.IO_ERROR, onError);
fileRef.load();
}
private function onFileLoaded(e:Event):void {
var loader:Loader = new Loader();
loader.loadBytes(e.target.data);
addChild(loader);
trace(loader.width);
}Выводит 0. Но ведь это же неправда...

TWETTI
19.06.2011, 14:28
Попробуйте loader.content.width

HardCoder
19.06.2011, 14:34
TWETTI, спасибо, не работает, но я уже понял.

Добавлено через 2 минуты
Код писал не задумываясь - с примера из справки. Выводило 0 потому что сразу после вызова loadBytes() содержимого еще нет. Вот как надо: private function onFileLoaded(e:Event):void {
loader = new Loader();
loader.loadBytes(e.target.data);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
}

private function onLoaded(e:Event):void {
trace(loader.width);
}