Adobe Flash CS4: creare un Ajax Loader o Activity Indicator

Creare un Ajax Loader (o Activity indicator per chi è ormai abituato ad usare l’Apple iPhone) per il Web non è una cosa difficile: esistono servizi che generano immagini gif animate di tutti i tipi. Tuttavia il formato GIF ha il grosso difetto di non supportare le trasparenze come si deve. La trasparenza, nel formato GIF attuale, coinvolge un solo piano di bit con la conseguenza che se non abbiamo un colore di sfondo uniforme, i bordi dell’immagine risultano notevolmente sgranati e frammentati.
L’animazione mostrata qui sotto è stata realizzata impostando come colore di trasparenza il bianco.

ajax-loader

Quindi se lo sfondo è bianco (o un colore simile) non ci sono problemi. Al contrario, appena sostituiamo lo sfondo, ecco cosa accade:

ajax-loader

In attesa, quindi, della diffusione del formato APNG (Animated PNG) – che supporterà un vero e proprio canale alpha per le trasparenze, importare GIF animati in contesti come Adobe Flash risulta “graficamente” una pessima scelta. Ecco allora come realizzare un’animazione in Adobe Flash del tutto simile a quelle presenti sul Web.

Costruiamo il nostro Ajax Loader in Adobe Flash: il “petalo”

Prima di tutto creiamo un MovieClip vuoto (o se preferite potete lavorare direttamente sullo stage) e disegnamo una linea verticale nera, il nostro petalo, alta 60/70 pixel per comodità, impostando uno spessore (tratto) di 10:

Ajax Loader in Adobe Flash

Selezioniamo la nostra linea e trasformiamola temporaneamente in un oggetto immagine (F8). Dal pannello Allinea, centriamola nello stage. Adesso duplichiamo (CTRL+D o CMD+D) la nostra linea, centriamo la linea duplicata e ruotiamola dal pannello Trasforma di 30 gradi:

Ajax Loader in Adobe Flash Ajax Loader in Adobe Flash

Ripetiamo questa operazione (duplica, centra, ruota di 30 gradi) fino ad ottenere:

Ajax Loader in Adobe Flash

Selezioniamo tutta l’immagine, cioè la somma degli oggetti:

Ajax Loader in Adobe Flash

Dal menu Elabora selezionate Dividi (CTRL+B o CMD+B):

Ajax Loader in Adobe Flash

Poi, sempre dal menu Elabora, selezionate Forma > Converti linee in riempimenti. In questo modo abbiamo ottenuto una figura “unica”.

Adesso dobbiamo “bucare” il centro della nostra immagine. Per fare questo aumentate un po’ lo zoom (tipo 400). Create un nuovo livello e proteggiamo quello con il lavoro svolto fino adesso:

Ajax Loader in Adobe Flash

Su questo nuovo livello potremmo lavorare in tranquillità, senza danneggiare l’altra nostra immagine. Disegniamo, partendo dal centro (mantenete premuto il tasto ALT insieme al tasto maiuscole SHIFT) un cerchio rosso senza bordo:

Ajax Loader in Adobe Flash

Nella figura qui sopra ho impostato la trasparenza del cerchio per evidenziare la sua posizione rispetto alla nostra figura (che si trova sul livello sottostante). Notate che ho appositamente “tagliato” gli spigoli dove si congiungono i “petali” della nostra figura. Il cerchio, quindi, dev’essere della giusta grandezza, cosa che ci tornerà comoda più avanti. Fatto questo selezionate il cerchio, copiatelo (CTRL+C o CMD+C) ed eliminate pure l’ultimo livello creato, sbloccate il livello con la nostra figura, e incollate!

Ajax Loader in Adobe Flash

Cliccate adesso sul bianco dello stage in modo da deselezionare il cerchio rosso. Ora abbiamo “fuso” i nostri due oggetti. Selezionate nuovamente il cerchio rosso ed eliminatelo!

Ajax Loader in Adobe Flash

Ottimo! Adesso selezioniamo tutto il nostro oggetto e cambiamogli colore con un grigio chiaro:

Ajax Loader in Adobe Flash

Selezioniamo poi il primo petalo (ore 12) e impostiamolo a nero (voi ovvimente potete scegliere la gradazione di colori che preferite):

Ajax Loader in Adobe Flash

Impostiamo ora il secondo petalo (ore 13) ad un grigio scuro:

Ajax Loader in Adobe Flash

Proseguiamo per gli altri due petali (scegliete vuoi quanta gradazione applicare) fino ad ottenere:

Ajax Loader in Adobe Flash

L’animazione

Perfetto, ci siamo quasi, l’ultimo sforzo richiesto è creare la rotazione. Questa non deve riguardare i petali ma solo il colore. Per fare questo avremmo potuto procedere anche in altri modi (vedi ad esempio con luso delle maschere…), tuttavia questo mi sembra più semplice. Spostiamoci di qualche fotogramma avanti, tipo al 5 e inseriamo un Fotogramma chiave.

Ajax Loader in Adobe Flash

Da pannello Trasforma ruotiamo la nostra immagine di 30 gradi, gli stessi gradi utilizzati durante la creazione dei nostri “petali”. Ripetiamo questa operazione (inserimento Fotogramma chiave e rotazione di 30 gradi) mantenedo sempre costanti in numero di fotogrammi tra una chiave e un’altra, fino ad ottenere:

Ajax Loader in Adobe Flash

Finito! Il nostro Ajax Loader in Adobe Flash è terminato! Ecco qui sotto la versione GIF esportata da Flash.

Ajax Loader in Adobe Flash

Qui sotto il filmato Flash con uno sfondo in movimento (notate che non ci sono distorzioni o sgranature):

Loading Flash Player...

Il sorgente :)

Un commento a: “Adobe Flash CS4: creare un Ajax Loader o Activity Indicator”

  1. 08 nov, 2009 I migliori post della settimana #45 | EmaWebDesign :: Web Programming / Web Design / SEO:

    [...] 06) Adobe Flash CS4: creare un Ajax Loader o Activity Indicator [...]

Lascia un commento

TAG XHTML PERMESSI: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERIMENTO CODICE:
<pre></pre> // blocco generico
					<code></code> // blocco generico
					[cc_actionscript][/cc_actionscript] // Actionscript
					[cc_actionscript3][/cc_actionscript3] // Actionscript 3
					[cc_css][/cc_css] // CSS Style Sheet
					[cc_html][/cc_html] // HTML
					[cc_js][/cc_js] // Javascript
					[cc_objc][/cc_objc] // Objective-C
					[cc_php][/cc_objc] // PHP
					[cc_sql][/cc_sql] // SQL


Stop SOPA