Image 使用as3调整图像大小
我正在建立一个公文包网站,当用户点击thumnail时,它会动态加载大的高分辨率图像。但是,在调整原始图像的大小以适应当前浏览器时,我无法保持原始图像的质量 目前,我只是调整图像的宽度和高度属性,使其与舞台的宽度成比例,这很好地满足了它的要求,但是我不知道如何保持图像质量?我是否需要将其加载为位图并重新绘制/平滑或类似的内容 这是我当前使用的适当代码:Image 使用as3调整图像大小,image,actionscript-3,flash,resize,Image,Actionscript 3,Flash,Resize,我正在建立一个公文包网站,当用户点击thumnail时,它会动态加载大的高分辨率图像。但是,在调整原始图像的大小以适应当前浏览器时,我无法保持原始图像的质量 目前,我只是调整图像的宽度和高度属性,使其与舞台的宽度成比例,这很好地满足了它的要求,但是我不知道如何保持图像质量?我是否需要将其加载为位图并重新绘制/平滑或类似的内容 这是我当前使用的适当代码: var req:URLRequest = new URLRequest("images/101.jpg"); var loader:Loader
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);
看一看
您的加载程序将有一个位图。将其平滑
设置为true
function imageLoaded(e:Event):void
{
//add image to stage
addChild(loader);
Bitmap(loader.content).smoothing = true;
// ...
这使图像有点模糊,但在大多数情况下,这是一个显著的改进。认为必须有一个简单的解决办法,但似乎无法在任何地方找到它。非常感谢。哈,我真的讨厌flash的另一个原因