2011-08-31 84 views
0
var pic0ldr:Loader = new Loader(); 
var thumb0Req:URLRequest = new URLRequest("0.jpg"); 
pic0ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, function(evt:Event){onComplete(evt, "stgW","stgH")}); 
pic0ldr.load(thumb0Req); 

function onComplete(event:Event,stgW,stgH):void { 
this[stgW] = event.target.content.width; 
this[stgH] = event.target.content.height; 
placeem("stgW","stgH"); 
} 

function placeem(stgW,stgH):void { 

leftmask_mc.height = this["stgH"]; 
leftmask_mc.width = this["stgW"]; 
pic0ldr.y = -this["stgH"]; 
pic0ldr.x = -this["stgW"]; 

trace(leftmask_mc.width,leftmask_mc.height,pic0ldr.height,pic0ldr.width);//500 707 707 500 


leftmask_mc.addChild(pic0ldr); //strange resize 

leftmask_mc.height = this["stgH"];// 
leftmask_mc.width = this["stgW"]; // normal again, without 569.25 845.55 707 500 

trace(leftmask_mc.width,leftmask_mc.height,pic0ldr.height,pic0ldr.width); 
} 

你也許會奇怪,爲什麼我需要的寬度和高度數據來調整我的影片剪輯,但我加載很多照片,我必須得到最大的高度和寬度影片剪輯再縮放奇怪

回答

0

有點很難確定什麼你的問題是,因爲你實際上並沒有問一個,但我猜問題是這樣的:

如果你設置一個MovieClip的寬度和高度,比如你的leftmask_mc,到其它比例,它會是原來的扭曲。您添加到該MovieClip的任何孩子也將以相同的方式變形,因爲它成爲該MovieClip的一部分。

此外,如果leftmask_mc旨在用作掩碼,則可能不希望將已加載的圖像作爲leftmask_mc的子項添加。如果您想讓leftmask_mc遮罩圖像,則應該將圖像的.mask屬性(或包含該圖像的DisplayObject)設置爲leftmask_mc。

+0

我的問題是在代碼註釋,我不希望用它作爲一張面具。我所做的是將mc大小設置爲圖片的大小,並使用addChild將其加載到該圖片上,但是在完成該操作後,mc的大小會變大,儘管我已經定義了它。重新定義後它又恢復正常。至於比例的寬度/高度,我不認爲這是我給它的另一個寬度不是圖片的情況下,它靜止添加相同的像素的高度和一些到寬度 – TasostheGreat

+0

確定。仍然有點難以確定你正在嘗試做什麼,我認爲什麼是不工作,但我會再試一次,如果你想要的只是使用leftmask_mc作爲加載圖像的持有者,你不要不需要將高度和寬度設置爲與圖像相同。將圖像添加爲小孩時,leftmask_mc將自動採用圖像的大小(其內容的大小)。 –

0

真的不知道你在問你的問題。
但我會告訴你,你的代碼示例是可怕的,你的功能甚至是使用無名函數的地方。

leftmask_mc.height = this["stgH"]; 
leftmask_mc.width = this["stgW"]; 
pic0ldr.y = -this["stgH"]; 
pic0ldr.x = -this["stgW"]; 

trace(leftmask_mc.width,leftmask_mc.height,pic0ldr.height,pic0ldr.width);//500 707 707 500 

// this is your problem when you pic0ldr, pic0ldr is is set to a NEGATIVE X and Y Which will cause leftmask to resize that amount 
leftmask_mc.addChild(pic0ldr); //strange resize 

同樣需要改寫你的問題和返工您的代碼,以便它是清晰可辨的地步,我們可以把它理解