|
De la aparitia Action Script 3, multi programatori au fost nevoiti sa-si schimbe modul de lucru si abordarea in ceea ce priveste implementarea unei aplicatii Flash. In mod cert, acest proces nu este placut pentru nimeni si lipsa unor functii simple ca getURL poate deveni frustranta. Pe de alta parte, in AS3 poti scrie aplicatii imposibil de realizat in AS2.
Bineinteles, daca scopul tau este sa creezi un banner cu o animatie simpla, atunci n-are sens sa te complici – AS2 este mai mult decat suficient. Daca, in schimb, trebuie sa implementezi un whiteboard sau alte chestii marete, atunci ar fi mai bine sa iti cauti un manual de AS3. In principiu, nu iti recomand sa te limitezi la AS2 doar pentru ca il stapanesti bine si e comod si „caldut” ca o pereche de papuci de casa, ci sa te adaptezi in functie de situatie.
In acest tutorial iti voi arata cum poti salva continutul unui movie clip de pe scena intr-o imagine .jpg sau .png pe calculatorul tau. In primul rand, retine ca aceasta aplicatie a fost implementata in Flash CS4 si are nevoie de Flash Player 10 pentru a putea salva imaginea pe disc. Click aici pentru a vedea cum functioneaza aplicatia.
Pasul 1
In acelasi director, creeaza un fisier .fla nou si un folder classes pentru sursele .as.
Pasul 2
In directorul classes, creeaza doua subdirectoare core (pentru fisierele tale) si adobe. Accesand linkul Download din partea de sus a paginii, descarca fisierele de encodare de imagini si copiaza-le in directorul adobe.
Aplicatia ta ar trebui sa aiba urmatoarea structura:
export_img.fla
classes
core
adobe
images
BitString.as
JPGEncoder.as
PNGEncoder.as
Pasul 3
In directorul core, creeaza un fisier ApplicationMain.as cu urmatorul continut:
package classes.core
{
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.text.TextField;
import flash.geom.Matrix;
import flash.display.BitmapData;
import flash.utils.ByteArray;
import flash.external.ExternalInterface;
import flash.system.*;
import flash.net.FileFilter;
import flash.net.FileReference;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.IOErrorEvent;
import flash.events.SecurityErrorEvent;
import classes.adobe.images.*;
public function ApplicationMain()
{
}
}
Dupa cum poti vedea, am inclus o serie de pachete utile pentru prelucrarea evenimentelor, salvarea fisierelor pe hard disk, bitmap data si clasele adobe pentru encodarea imaginilor.
Pasul 4
In sursa .fla, acceseaza File > Publish Settings (Ctrl+Shift+F12) si fa modificarile de mai jos. In acest mod, constructorul clasei ApplicationMain va fi apelat automat la rularea swf-ului.
Pasul 5
Adauga pe scena un movie clip cu un desen si denumeste-l ca export_mc. Acesta va reprezenta movie clip-ul al carui continut il vei exporta ca .jpg sau .png. In exemplu de mai jos, movie clip-ul contine un fisier .ai si un dreptunghi cu fundal alb.
Pasul 6
Adauga pe scena un buton cu textul "Salveaza", apoi schimba-i numele in export_btn.
Apasarea acestui buton va declansa salvarea imaginii, deci adauga urmatorul cod in constructorul clasei ApplicationMain.
export_btn.addEventListener(MouseEvent.MOUSE_DOWN, this["btnExportPress"]);
Apoi, tot in clasa ApplicationMain, defineste metoda ce va fi apelata la apasarea butonului:
public function btnExportPress(event:MouseEvent){}
|