2014-02-14 3 views
0

사용자가 이미지를 업로드하는 이미지 로더가 있는데 너비와 높이가 특정 크기를 초과하는 경우에만 이미지의 축척을하는 방법이 궁금합니다. 예를 들어, 200 x 200 이미지는 크기가 조정되지 않지만 2000 x 2000 이미지는 크기가 조정됩니다.특정 크기 이상인 경우 축척 이미지 만

function selectedFile(e:Event):void{ 
    browseImage.addEventListener(Event.COMPLETE, completeLoadImage); 
    browseImage.load(); 
    browseImage.removeEventListener(Event.SELECT, selectedFile); 
} 

function completeLoadImage(e:Event):void{ 

imageLoader.loadBytes(e.target.data); 
imageLayer.addChild(imageLoader); 
if (imageLoader.contentLoaderInfo.width > 250 && imageLoader.contentLoaderInfo.height > 250) 
{ 
    imageLoader.scaleX = imageLoader.scaleY = 0.2; 
} 

답변

0

Loader.contentLoaderInfo을 살펴보십시오.

const MIN_HEIGHT_FOR_SCALING:Number = 1000; 
const MIN_WIDTH_FOR_SCALING:Number = 1000; 
var loader:Loader = new Loader(); 
loader.addEventListener(Event.COMPLETE, completeHandler); 

function completeHandler(e:Event):void { 
    if (loader.contentLoaderInfo.height > MIN_HEIGHT_FOR_SCALING && loader.contentLoaderInfo.width > MIN_WIDTH_FOR_SCALING) { 
     loader.scaleX = loader.scaleY = .2; 
    } 
} 
+0

'오류 # 2099 :이 정보를 제공하기 위해로드하는 개체가 충분히로드되지 않았습니다. ' – user3310563

+0

내 실수. 나는 일반적으로 이미지에'Loader'를 사용하지 않습니다 (저는 일반적으로 Flex를 사용합니다). 대신에'loader.contentLoaderInfo.addEventListener (Event.INIT, handler)'를 들어라. –

+0

원래 게시물을 가지고 업데이트했습니다. '오류 # 1069 : flash.display.LoaderInfo에서 속성 데이터를 찾을 수 없으며 기본값이 없습니다.' – user3310563

관련 문제