lianas
15.10.2009, 14:50
Никак не получается смасштабировать картинку в Loader'e.
Загрузка из XML получилась. Вот исходник:
var flooring:XML = new XML();
var url_logo:String;
flooring.ignoreWhite = true;
flooring.onLoad = function(success) {
if (success)
{
logo.loadMovie(this.firstChild.childNodes[3].attributes.name);
} else {
trace("Failed");
}
};
flooring.load("content.xml");
Далее нашла функцию, которая масштабирует:
var widthMax:Number = 200;
var heightMax:Number = 200;
resizeClip = function(mc:MovieClip, maxWidth:Number, maxHeight:Number) {
var ratio_x = maxWidth / mc._width;
var ratio_y = maxHeight / mc._height;
if (ratio_x <= ratio_y) {
if (ratio_x < 1e) {
mc._width = maxWidth;
mc._yscale = mc._xscale;
}
} else {
if (ratio_y < 1) {
mc._height = maxHeight;
mc._xscale = mc._yscale;
}
}
mc._x = -1 * Math.round(mc._width/2);
mc._y = -1 * Math.round(mc._height/2);
mc.forceSmoothing = true ;
};
Но эта функция для MovieClip'a...
А как сделать, чтобы в Loader'e работала - знаний не хватает.
P.S. Action Script не знаю, но срочно надо разобраться.
Загрузка из XML получилась. Вот исходник:
var flooring:XML = new XML();
var url_logo:String;
flooring.ignoreWhite = true;
flooring.onLoad = function(success) {
if (success)
{
logo.loadMovie(this.firstChild.childNodes[3].attributes.name);
} else {
trace("Failed");
}
};
flooring.load("content.xml");
Далее нашла функцию, которая масштабирует:
var widthMax:Number = 200;
var heightMax:Number = 200;
resizeClip = function(mc:MovieClip, maxWidth:Number, maxHeight:Number) {
var ratio_x = maxWidth / mc._width;
var ratio_y = maxHeight / mc._height;
if (ratio_x <= ratio_y) {
if (ratio_x < 1e) {
mc._width = maxWidth;
mc._yscale = mc._xscale;
}
} else {
if (ratio_y < 1) {
mc._height = maxHeight;
mc._xscale = mc._yscale;
}
}
mc._x = -1 * Math.round(mc._width/2);
mc._y = -1 * Math.round(mc._height/2);
mc.forceSmoothing = true ;
};
Но эта функция для MovieClip'a...
А как сделать, чтобы в Loader'e работала - знаний не хватает.
P.S. Action Script не знаю, но срочно надо разобраться.