Creazione di un componente immagine DOM
- Guida utente di Adobe Animate
- Introduzione ad Animate
- Animazione
- Concetti di base sulle animazioni in Animate
- Come utilizzare i fotogrammi e i fotogrammi chiave in Animate
- Animazione fotogramma per fotogramma in Animate
- Come lavorare con le animazioni interpolate classiche in Animate
- Strumento Pennello
- Guida di movimento
- Interpolazione di movimento e ActionScript 3.0
- Informazioni sull’animazione con interpolazione di movimento
- Animazioni con interpolazione di movimento
- Creazione di un’animazione con interpolazione di movimento
- Utilizzo dei fotogrammi chiave di proprietà
- Animare la posizione con un'interpolazione
- Come modificare le interpolazioni di movimento con l'Editor movimento
- Modifica del tracciato di movimento di un’animazione con interpolazione
- Manipolazione delle interpolazioni di movimento
- Aggiunta di andamenti personalizzati
- Creazione e applicazione di preimpostazioni di movimento
- Impostazione delle estensioni di interpolazione per l’animazione
- Operazioni con le interpolazioni di movimento salvate come file XML
- Interpolazioni di movimento e classiche a confronto
- Interpolazione di forme
- Utilizzare lo strumento di animazione Osso in Animate
- Utilizzare il rigging dei personaggi in Animate
- Come utilizzare i livelli maschera in Adobe Animate
- Come utilizzare le scene in Animate
- Interattività
- Come creare pulsanti con Animate
- Convertire progetti Animate in altri formati di tipi di documenti
- Creare e pubblicare documenti HTML5 Canvas in Animate
- Aggiungere interattività con gli snippet di codice in Animate
- Creazione di componenti HTML5 personalizzati
- Utilizzo dei componenti in HTML5 Canvas
- Creazione di componenti personalizzati: esempi
- Snippet di codice per componenti personalizzati
- Best practice - Pubblicità con Animate
- Creazione e pubblicazione di contenuti in realtà virtuale
- Area di lavoro e flusso di lavoro
- Creazione e gestione dei pennelli artistici
- Utilizzo di Google Fonts nei documenti HTML5 Canvas
- Utilizzo di Creative Cloud Libraries con Adobe Animate
- Utilizzare il pannello Strumenti e Stage per Animate
- Flusso di lavoro e area di lavoro di Animate
- Utilizzo di font Web nei documenti HTML5 Canvas
- Linee temporali e ActionScript
- Operazioni con più linee temporali
- Impostare le preferenze
- Uso dei pannelli di creazione di Animate
- Creare livelli della linea temporale con Animate
- Esportare animazioni per dispositivi mobili e motori grafici
- Spostamento e copia degli oggetti
- Modelli
- Trova e sostituisci in Animate
- Annulla, Ripeti e il pannello Cronologia
- Scelte rapide da tastiera
- Come utilizzare la linea temporale in Animate
- Creazione di estensioni HTML
- Opzioni di ottimizzazione per immagini e GIF animati
- Impostazioni per l’esportazione di immagini e file GIF
- Pannello Risorse in Animate
- File multimediali e video
- Trasformazione e combinazione di oggetti grafici in Animate
- Creazione e utilizzo di istanze di simboli in Animate
- Ricalco immagine
- Come utilizzare l’audio in Adobe Animate
- Esportazione di file SVG
- Creare file video da utilizzare in Animate
- Come aggiungere un video in Animate
- Disegnare e creare oggetti con Animate
- Rimodellare linee e forme
- Tratti, riempimenti e gradienti con Animate CC
- Utilizzo di Adobe Premiere Pro e After Effects
- Pannelli per il colore in Animate CC
- Apertura di file Flash CS6 con Animate
- Utilizzare il testo classico in Animate
- Inserimento di grafica in Animate
- Bitmap importate in Animate
- Grafica 3D
- Utilizzo dei simboli in Animate
- Disegnare linee e forme con Adobe Animate
- Utilizzare le librerie in Animate
- Esportazione di suoni
- Selezione degli oggetti in Animate CC
- Utilizzare i file AI di Illustrator in Animate
- Applicazione di metodi di fusione
- Disposizione degli oggetti
- Automazione delle operazioni con il menu Comandi
- Testo in più lingue
- Utilizzo della funzione Videocamera di Animate
- Filtri grafici
- Suono e ActionScript
- Preferenze di disegno
- Disegno con lo strumento Penna
- Piattaforme
- Convertire progetti Animate in altri formati di tipi di documenti
- Supporto piattaforme personalizzato
- Creare e pubblicare documenti HTML5 Canvas in Animate
- Creazione e pubblicazione di un documento WebGL
- Come creare pacchetti di applicazioni per AIR per iOS
- Pubblicazione di applicazioni AIR for Android
- Pubblicazione per Adobe AIR per desktop
- Impostazioni di pubblicazione ActionScript
- Procedure ottimali - Organizzazione del codice ActionScript in un’applicazione
- Come utilizzare ActionScript con Animate
- Accessibilità dell’area di lavoro di Animate
- Creazione e gestione di script
- Abilitazione del supporto per piattaforme personalizzate
- Panoramica di Supporto piattaforme personalizzate
- Operazioni con i plug-in di Supporto piattaforme personalizzate
- Debug di ActionScript 3.0
- Abilitazione del supporto per piattaforme personalizzate
- Esportazione e pubblicazione
- Come esportare i file da Animate CC
- Pubblicazione OAM
- Esportazione di file SVG
- Esportazione di elementi grafici e video con Animate
- Pubblicazione di documenti AS3
- Esportare animazioni per dispositivi mobili e motori grafici
- Esportazione di suoni
- Best practice - Suggerimenti per la creazione di contenuti per dispositivi mobili
- Best practice - Convenzioni per i contenuti video
- Best practice - Linee guida per la creazione di applicazioni SWF
- Best practice - Strutturazione dei file FLA
- Best practice per ottimizzare i file FLA per Animate
- Impostazioni di pubblicazione ActionScript
- Specificare le impostazioni di pubblicazione per Animate
- Esportazione di file proiettore
- Esportare immagini e GIF animati
- Modelli di pubblicazione HTML
- Utilizzo di Adobe Premiere Pro e After Effects
- Condividere e pubblicare rapidamente le animazioni
- Risoluzione dei problemi
Questo articolo descrive un componente HTML5 personalizzato di esempio.
Questo articolo descrive come creare componenti personalizzati. Il primo esempio è un componente immagine (fornito con Animate ), per meglio comprendere la struttura e i passaggi di sviluppo necessari. Il secondo esempio descrive come effettuare il wrapping di un componente di interfaccia utente esistente (ad esempio, jQueryUI) e importarlo in Animate.
-
Crea la categoria My Components.
a. Create una cartella denominata mycomponents all’interno della cartella <HTML5Components> nella prima esecuzione
b. Scaricate il file allegato myimage.zip ed estraetene il contenuto all'interno della
cartella mycomponents.
Scarica
c. Riavviate Animate.
Ora dovrebbe essere visibile la nuova categoria “My Components” nella cartella dei componenti, e al suo interno il nuovo componente “My Image”. Puoi trascinarlo sullo stage, impostare la proprietà di origine dell’immagine e pubblicare il filmato per vedere il componente personalizzato in azione.
Metadati del componente - components.js
La categoria è impostata su CATEGORY_MY_COMPONENTS. Anche i nomi delle proprietà usano chiavi simili. Questa è la chiave per la stringa localizzata per il nome della categoria. Se apri il file strings.json dalla cartella “locale”, trovi le seguenti voci.
L’errore più comunemente commesso quando si modifica questo file è l’aggiunta di una virgola finale dopo l’ultimo elemento dell’array.
Il valore del campo dell’icona è impostato su Sp_Image_Sm. Nella cartella delle risorse trovi i due seguenti file png, con il prefisso Sp_Image_Sm.
Si tratta delle icone per le modalità di interfaccia utente scura e chiara.
Il valore del campo ‘source’ in components.json è impostato su ‘src/myimage.js’
(function($) { // Register a component with the className: my.Image, // and prototype with the following overrides // getCreateOptions // getCreateString // getProperties // getAttributes $.anwidget("my.Image", { options: { 'visible': true, 'position': 'absolute' }, _props: ["left", "top", "width", "height", "position", "transform-origin", "transform"], _attrs: ["id", "src", "alt", "class", "border"], // Return a unique ID with the prefix image // _widgetID is a global declared in anwidget // This id is used only if the user has not set any instance ID for the component in Animate // Otherwise the user configured name is used getCreateOptions: function() { return $.extend(this.options, { 'id': "image" + _widgetID++ }); }, // Return the string for creating the DOM element // For image we just need to create the <img> tag getCreateString: function() { return "<img>"; }, // Set of configurable properties getProperties: function() { return this._props; }, // Set of configurable attributes getAttributes: function() { return this._attrs; } }); })(jQuery);
Il codice contiene dei commenti per facilitarne la comprensione.
Dai un’occhiata al codice sorgente degli altri componenti forniti con Animate. Nella maggior parte dei casi, puoi utilizzare uno di tali componenti come punto di partenza, da configurare in base alle tue esigenze.
Wrapping di un componente jQuery-UI
Questa sezione descrive come eseguire il wrapping di un widget jQuery-UI e come utilizzarlo in Animate. Gli stessi concetti possono essere applicati al wrapping di qualsiasi altro componente esistente da altri framework di interfaccia utente.
Esaminiamo il componente Selettore data fornito con Animate come widget jQuery-UI. Scaricate ed estraete il contenuto del seguente archivio e utilizzatelo come riferimento.
Scarica
La cartella jquery-ui-1.12.0 è l’origine per il framework jQuery UI contenente il widget Selettore data originale e le relative risorse, come immagini e css, da includere nel wrapping e da utilizzare in Animate come qualsiasi altro componente HTML5. Questo è necessario solo per l’anteprima locale; se utilizzi “Librerie in hosting” nelle impostazioni Pubblicazione, puoi usare CDN per scaricare le origini dipendenti.
Esistono due dipendenze predefinite, jQuery e anwidget.js. Poiché anwidget.js non si trova sul CDN, non è presente alcuna voce CDN per lo stesso.
Il successivo set di voci riguarda le altre risorse richieste per il caricamento del widget Selettore data da jQuery UI. Se devi eseguire il wrapping di un widget da qualsiasi altra libreria, puoi specificare in modo analogo il relativo set di dipendenze. Queste dipendenze vengono scaricate prima dell’inizializzazione del componente.
Nella sezione proprietà, è stata esposta solo una proprietà denominata “label”, associata alla proprietà label del componente Selettore data. Allo stesso modo, è possibile esporre anche le altre proprietà, a seconda delle possibilità di configurazione che si desidera offrire all’utente nell’ambiente di authoring di Animate. In fase di runtime, ognuna di queste sarà disponibile come coppia chiave-valore nell’array delle opzioni per l’istanza. È possibile estrarre il valore configurato e applicarlo in fase di runtime.
Sezioni che differiscono dall’esempio
-
getCreateString:
Il widget Selettore data da jQuery-UI converte tale elemento di immissione testo in un elemento Selettore data in fase di runtime. Il DOM viene quindi inizializzato di conseguenza.
-
attach:
Dobbiamo escludere questa funzione per il widget. Questa API viene chiamata ogni volta che l’elemento viene allegato al DOM. Tuttavia, a causa del modo in cui funziona il runtime sottostante (in questo caso, createjs) l’API può essere chiamata più volte durante l’estensione di un fotogramma.
Lo stato “attached” dell’elemento sottostante viene ricordato e viene quindi chiamata l’API attach della classe base (mediante this._superApply(arguments)). Se è la prima volta che si allega l’elemento al DOM di livello superiore, è necessario usare la chiamata del widget jQuery-UI sottostante per convertire il DOM del componente in un selettore data. Consulta https://jqueryui.com/datepicker/
La maggior parte dei widget Javascript funziona in modo analogo. È possibile usare la stessa tecnica per effettuare il wrapping di qualsiasi componente e portarlo in Animate allo stesso modo.
-
Aggiornamento: dobbiamo escludere la funzione update e applicare le proprietà css al div del contenitore e gli attributi all’elemento DOM effettivo.
Quando si escludono le API quali attach, detach o update, occorre verificare l’implementazione predefinita della classe di base e chiamare l’implementazione di base al momento appropriato. In caso contrario l’inizializzazione dei componenti potrebbe non riuscire.