2016-04-04 19 views
0

Kullanıcıların şirketimin logosunu giymelerine izin veren bir oyun yaptım. Sorun şu ki, toplam kodlama acemi olduğum için ve benim için zor olan bir görevde kaldım.Dışa Aktarma Flash Komutları Jpg. Adobe Animate CC

Sadece logosu ve kullanıcının üzerine yerleştirdiği öğeleri vermek istiyorum. Her öğe belirli bir kareye bağlıdır. Her öğe, kullanıcı sayfa 1'deki bir sekmeyi tıkladığında hareket eden ayrı bir sayfadadır. Bir öğenin logoda bulunduğu her bir anahtar karenin, ayrıca kolay kataloglama ve alma için ayrı bir adlandırılmış katmanı vardır. Sonra aşağıdaki gibi

var myWindowArray = [neckWindow1, eyesWindow1, hatsWindow1, hatsWindow2, accessoriesWindow1, accessoriesWindow2, colorsWindow1, faceWindow1]; 
 
function hideAllWindows(){ 
 
\t for each (var window in myWindowArray){ 
 
\t \t window.x=950 
 
\t } 
 
} 
 
neckButton1.addEventListener(MouseEvent.CLICK, showneckWindow1); 
 
eyesButton1.addEventListener(MouseEvent.CLICK, showeyesWindow1); 
 
hatsButton1.addEventListener(MouseEvent.CLICK, showhatsWindow1); 
 
accessoriesButton1.addEventListener(MouseEvent.CLICK, showaccessoriesWindow1); 
 
colorButton1.addEventListener(MouseEvent.CLICK, showcolorsWindow1); 
 
faceButton1.addEventListener(MouseEvent.CLICK, showfaceWindow1); 
 
accessoriesButton2.addEventListener(MouseEvent.CLICK, showaccessoriesWindow2); 
 
hatsButton2.addEventListener(MouseEvent.CLICK, showhatsWindow2); 
 

 
function showneckWindow1 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t neckWindow1.x=387.95 
 
} 
 
function showeyesWindow1 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t eyesWindow1.x=387.95 
 
} 
 
function showhatsWindow1 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t hatsWindow1.x=387.95 
 
} 
 
function showaccessoriesWindow1 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t accessoriesWindow1.x=387.95 
 
} 
 
function showaccessoriesWindow2 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t accessoriesWindow2.x=387.95 
 
\t accessoriesWindow2.y=121.10 
 
} 
 
function showcolorsWindow1 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t colorsWindow1.x=387.95 
 
} 
 
function showfaceWindow1 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t faceWindow1.x=387.95 
 
} 
 
function showhatsWindow2 (event:MouseEvent):void{ 
 
\t hideAllWindows(); 
 
\t hatsWindow2.x=387.95 
 
\t hatsWindow2.y=121.10 
 
}

bireysel cam koduna kodlayan bağlantılar: Aşağıdaki

enter image description here

genel kodu

import flash.events.MouseEvent; 
 

 
var myNeckArray = [glasses1, glasses2, glasses3, glasses4, glasses5, glasses6, glasses7, glasses8, glasses9, glasses10, glasses11, glasses12]; 
 
for each (var neck in myNeckArray) { 
 
\t neck.addEventListener (MouseEvent.CLICK, onNeckClick); 
 
} 
 
function onNeckClick (event:MouseEvent):void { 
 
\t MovieClip(parent).eyes_MC.gotoAndStop(event.target.name); 
 
}

Etiketli anahtar karelere nasıl erişebilir ve görüntüyü dışarı aktarabilirim? Ayrıca, kullanıcıların ihracat sırasında otomatik olarak Facebook'a posta göndermelerine izin vermek istediğimde bu işlem ve kod benzer midir? PNG böyle as3corelib kullanarak,

var bitmapData:BitmapData = new BitmapData(myMovieClip.width,myMovieClip.height); 
bitmapData.draw(myMovieClip); 

Ve JPG gibi bir biçime verileri kodlamak:

cevap

2

Böyle bir BitmapData nesnesine herhangi MovieClip/Sprite "çizmek"

import com.adobe.images.JPGEncoder; 
var jpgEncoder:JPGEncoder = new JPGEncoder(quality); 
var byteArray:ByteArray = jpgEncoder.encode(bitmapData); 

Sonra görüntüyü yerel olarak kaydetmek istiyorsanız, bunu yapın:

var fileReference:FileReference=new FileReference(); 
fileReference.save(byteArray, ".jpg"); 

Dosyayı Facebook'ta paylaşmak istediğinizde, ByteArray'i bir sunucu taraflı komut dosyasına göndermeniz ve ardından sunucunuzdaki bir dosyaya yazmanız, ardından dosya URL'sini uygulamanıza geri aktarmanız ve görüntüye bağlantı vermek için kullanmanız gerekir. Facebook gönderisi.

Bitmiş "kullanıcı özelleştirilmiş logosunun" en üstteki ebeveyni bir bitmap'e çizin ve yukarıdaki adımları izleyin.

İlgili konular