Я создаю сайт-портфолио, который динамически загружает большие изображения в высоком разрешении, когда пользователь нажимает на thumnail.Однако у меня возникают проблемы с сохранением качества исходного изображения при изменении его размера в соответствии с текущим браузером.
В настоящее время я просто подгоняю свойства ширины и высоты изображения по ширине к сцене пропорционально, что прекрасно работает, чтобы подогнать его под размер, однако я не могу понять, как сохранить качество изображения?Нужно ли загружать его как растровое изображение и перерисовывать / сглаживать или что-то подобное?
Это соответствующий код, который я сейчас использую:
var req:URLRequest = new URLRequest("images/101.jpg");
var loader:Loader = new Loader();
var widthRatio:Number;
var heightRatio:Number;
function imageLoaded(e:Event):void
{
//add image to stage
addChild(loader);
// resize proportionally
if (loader.width > stage.stageWidth){
widthRatio=loader.width/stage.stageWidth;
trace(widthRatio)
trace(loader.width);
}
if (loader.height > stage.stageHeight){
heightRatio=loader.height/stage.stageHeight;
trace(heightRatio)
trace(loader.height)
}
if (widthRatio > heightRatio){
loader.width = stage.stageWidth;
loader.height = loader.height/widthRatio;
} else {
loader.height = stage.stageHeight;
loader.width = loader.width/heightRatio;
}
//centre on stage
loader.x=stage.stageWidth/2 - loader.width/2;
loader.y=stage.stageHeight/2 - loader.height/2;
}
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
loader.load(req);