Как узнать высоту и ширину загружаемой картинки
Как узнать высоту и ширину загружаемой картинки
Помогите плиз. Как правильно загрузить картинку с url, чтобы потом узнать ее ширину и высоту?
Re: Как узнать высоту и ширину загружаемой картинки
Код: Выделить всё
var photoLoader:Loader = new Loader();
var photo = 'http://'; // ссылка на изображение
var request:URLRequest=new URLRequest(photo);
photoLoader.load(request);
photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
function onLoaded(e:Event):void {
trace(photoLoader.width); // ширина
trace(photoLoader.height); // высота
}
Re: Как узнать высоту и ширину загружаемой картинки
Как их использовать в любом месте кода? Делал так
}
Код: Выделить всё
package vk
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
import locale.*;
import vk.gui.*;
import vk.*;
public class myClass extends Sprite
{
private var image_url:* = null;
private var image_W:* = null;
private var image_H:* = null;
//конструктор
public function myClass(img_url:*):void
{
//загрузка изобржений
LoadImage(img_url);
//почему тут после загрузки картинки image_W и image_H равны null, я же вроде как присвоил им значения в функции imgLoaded. Если же я пишу этот кусок кода в imgLoaded, то все работает
//так неработает
var bg:* = new Sprite();
bg.x = 100;
bg.y = 100;
bg.width = image_W;
bg.height = image_H;
Utils.rect ( bg, bg.x, bg.y, bg.width, bg.height, 0xffffff);
addChild(bg);
}
private function LoadImage(url:*):void
{
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imgLoaded);
loader.load(new URLRequest(url));
}
private function imgLoaded(e:Event):*
{
image_H = loader.height;
image_W = loader.width;
//так работает
var bg:* = new Sprite();
bg.x = 100;
bg.y = 100;
bg.width = image_W;
bg.height = image_H;
Utils.rect ( bg, bg.x, bg.y, bg.width, bg.height, 0xffffff);
addChild(bg);
}
}
Re: Как узнать высоту и ширину загружаемой картинки
Потому что это ActionScript
В первом случае, ты вызываешь функцию LoadImage, и функция только начинает выполняться, а приложение выполняет код дальше. То есть ещё не завершив эту функцию, а значит и не записав новые значения, которые записываются только в функции imgLoaded.
Правильно делать так как во втором случае.
В первом случае, ты вызываешь функцию LoadImage, и функция только начинает выполняться, а приложение выполняет код дальше. То есть ещё не завершив эту функцию, а значит и не записав новые значения, которые записываются только в функции imgLoaded.
Правильно делать так как во втором случае.