DOM 画像コンポーネントの作成
- Adobe Animate ユーザーガイド
- Animate の概要
- アニメーション
- Animate のアニメーションの基本
- Animate でフレームとキーフレームを使用する方法
- Animate でのフレームアニメーション
- Animate でのクラシックトゥイーンアニメーションの操作方法
- ブラシツール
- モーションガイド
- モーショントゥイーンと ActionScript 3.0
- モーショントゥイーンアニメーションについて
- モーショントゥイーンアニメーション
- モーショントゥイーンアニメーションの作成
- プロパティキーフレームの使用
- トゥイーンを使用した位置のアニメーション化
- モーションエディターを使用したモーショントゥイーンの編集
- トゥイーンアニメーションのモーションパスの編集
- モーショントゥイーンの操作
- カスタムイージングの追加
- モーションプリセットの作成と適用
- アニメーションのトゥイーンスパンの設定
- XML ファイルとして保存したモーショントゥイーンの操作
- モーショントゥイーンとクラシックトゥイーン
- シェイプトゥイーン
- Animate のボーンツールアニメーションの使用
- Animate でのキャラクターリグの操作
- Adobe Animate でのマスクレイヤーの使用
- Animate でのシーンの操作
- インタラクティブ機能
- ワークスペースとワークフロー
- ペイントブラシの作成と管理
- HTML5 Canvas ドキュメントでの Google フォントの使用
- Creative Cloud ライブラリと Adobe Animate の使用
- Animate のステージとツールパネルの使用
- Animate ワークフローとワークスペース
- HTML5 Canvas ドキュメントでの Web フォントの使用
- タイムラインと ActionScript
- 複数のタイムラインの操作
- 環境設定
- Animate オーサリングパネルの使用
- Animate でのタイムラインレイヤーの作成
- モバイルアプリおよびゲームエンジン用アニメーションの書き出し
- オブジェクトの移動とコピー
- テンプレート
- Animate での検索と置換
- 取り消し、やり直し、ヒストリーパネル
- キーボードショートカット
- Animate でのタイムラインの使用
- HTML 拡張機能の作成
- 画像とアニメーション GIF の最適化オプション
- 画像および GIF の書き出し設定
- Animate のアセットパネル
- マルチメディアとビデオ
- Animate のグラフィックオブイジェクトの変形と組み合わせ
- Animate でのシンボルインスタンスの作成と操作
- 画像トレース
- Adobe Animate でのサウンドの使用方法
- SVG ファイルの書き出し
- Animate で使用するビデオファイルの作成
- Animate にビデオを追加する方法
- Animate でのオブジェクトの描画および作成
- 線とシェイプの変更
- Animate CC での線、塗り、グラデーション
- Adobe Premiere Pro と After Effects の使用
- Animate CC のカラーパネル
- Animate で Flash CS6 ファイルを開く
- Animate でのクラシックテキストの操作
- Animate へのアートワークの挿入
- Animate に読み込まれたビットマップ
- 3D グラフィック
- Animate でのシンボルの操作
- Adobe Animate での線とシェイプの描画
- Animate でのライブラリの使用
- サウンドの書き出し
- Animate CC でのオブジェクトの選択
- Animate での Illustrator AI ファイルの操作
- ブレンドモードの適用
- オブジェクトの配置
- コマンドメニューを使用したタスクの自動化
- 多言語テキスト
- Animate でのカメラの使用
- グラフィックフィルター
- サウンドと ActionScript
- 描画の環境設定
- ペンツールを使用した描画
- プラットフォーム
- 他のドキュメントタイプ形式への Animate プロジェクトの変換
- カスタムプラットフォームサポート
- Animate での HTML5 Canvas ドキュメントの作成およびパブリッシュ
- WebGL ドキュメントの作成とパブリッシュ
- AIR for iOS 用アプリケーションのパッケージ化
- AIR for Android アプリケーションのパブリッシュ
- デスクトップ用 Adobe AIR のパブリッシュ
- ActionScript パブリッシュ設定
- ベストプラクティス - アプリケーションでの ActionScript の整理
- Animate での ActionScript の使用
- Animate ワークスペースのアクセシビリティ
- スクリプトの記述と管理
- カスタムプラットフォームサポートの有効化
- カスタムプラットフォームサポートの概要
- カスタムプラットフォームサポートプラグインの操作
- ActionScript 3.0 のデバッグ
- カスタムプラットフォームサポートの有効化
- 書き出しとパブリッシュ
- Animate CC からファイルを書き出す方法
- OAM パブリッシング
- SVG ファイルの書き出し
- Animate によるグラフィックとビデオの書き出し
- AS3 ドキュメントのパブリッシュ
- モバイルアプリおよびゲームエンジン用アニメーションの書き出し
- サウンドの書き出し
- ベストプラクティス - モバイルデバイス向けのコンテンツ作成のヒント
- ベストプラクティス - ビデオ規則
- ベストプラクティス - SWF アプリケーションのオーサリングガイドライン
- ベストプラクティス - FLA ファイルの構造化
- FLA ファイルを Animate 向けに最適化するベストプラクティス
- ActionScript パブリッシュ設定
- Animate のパブリッシュ設定の指定
- プロジェクターファイルの書き出し
- 画像とアニメーション GIF の書き出し
- HTML パブリッシュ用テンプレート
- Adobe Premiere Pro と After Effects の使用
- アニメーションのクイック共有とパブリッシュ
- トラブルシューティング
この記事では、HTML5 カスタムコンポーネントのサンプルについて説明します。
この記事では、カスタムコンポーネントの作成方法について説明します。最初の例では、フレームワークと開発手順を理解するために、画像コンポーネント(Animate にも付属しています)とそのプロセスを説明します。2 つ目の例では、既存の UI コンポーネント(jQueryUI など)をラップして Animate に読み込む方法を説明します。
-
「My Components」というカテゴリーを作成します。
a. First Run フォルダー下の <HTML5Components> フォルダーに mycomponents というフォルダーを作成します。
b. 添付の myimage.zip ファイルをダウンロードし、
mycomponents フォルダーの下に中身を抽出します。
ダウンロード
c. Animate.を再起動します。
コンポーネントフォルダー内に「My Components」という新しいカテゴリーがあり、そのカテゴリー下に My Image という新しいコンポーネントがあります。これをステージにドラッグ&ドロップし、画像ソースプロパティを設定して、ムービーをパブリッシュすると、動作しているカスタムコンポーネントを確認できます。
コンポーネントメタデータ - components.js
カテゴリーが CATEGORY_MY_COMPONENTS に設定されていることに注意してください。各プロパティの名前も同様のキーを使用しています。これは、カテゴリーのローカライズされた文字列のキーです。locale フォルダーから strings.json を開くと、次のエントリを確認できます。
このファイルを編集する際の最も一般的なエラーは、配列の最終エレメントの末尾に不要なコンマを付けることです。
アイコンフィールドの値は Sp_Image_Sm に設定されています。assets フォルダーに移動すると、名前が Sp_Image_Sm で始まる次のような 2 つの png ファイルがその中にあります。
これらは暗い UI と明るい UI 用のアイコンです。
components.json の「source」フィールドの値は「src/myimage.js」に設定されています。
(function($) { // className: my.Image を含むコンポーネントおよび // 次のオーバーライドを含むプロトタイプを登録 // 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"], // 接頭辞画像を含む一意の ID を返す // _widgetID は anwidget で宣言されたグローバル // この ID は、ユーザーが Animate のコンポーネントにインスタンス ID を設定していない場合にのみ使用される // それ以外の場合、ユーザーが設定した名前が使用される getCreateOptions: function() { return $.extend(this.options, { 'id': "image" + _widgetID++ }); }, // DOM エレメントを作成するための文字列を返す // <img> タグを作成するためにのみ必要な画像用 getCreateString: function() { return "<img>"; }, // 設定可能なプロパティのセット getProperties: function() { return this._props; }, // 設定可能な属性のセット getAttributes: function() { return this._attrs; } }); })(jQuery);
コード内のコメントを読むと、コードを容易に理解できます。
Animate に付属している他のコンポーネントのソースも自由にご覧ください。ほとんどの場合、まずはこれらのいずれかを使用し、その後、自分自身の要件に応じてそれを設定できます。
jQuery-UI コンポーネントのラッピング
この節では、jQuery-UI ウィジェットをラップして Animate で使用する方法について説明します。この基本を理解すれば、他のどの UI フレームワークに含まれている他のどの既存コンポーネントをラップするときでも応用できます。
まず、Animate のパッケージされた DatePicker コンポーネント(jQuery-UI ウィジェット)を見てみましょう。次のアーカイブをダウンロードし、中身を解凍して参照します。
ダウンロード
jquery-ui-1.12.0 というフォルダーは jQuery UI フレームワークのソースです。この中に、元の DatePicker ウィジェットとそのリソース(画像や CSS など)が格納されています。これらがラップされ、Animate で他の HTML5 コンポーネントと同様に使用されます。これが必要なのはローカルプレビューをする場合だけで、パブリッシュ設定で「ホストのライブラリ」を有効にしているときは、cdn を使用して依存先のソースをダウンロードできます。
デフォルトで、jQuery と anwidget.js という 2 つの依存先モジュールがあります。anwidget.js は CDN 上にはないので、同様の CDN エントリはありません。
次のエントリセットは、日付ピッカーウィジェットを jQuery UI から読み込むのに必要なその他のリソースに対するものです。他のライブラリに含まれている別のウィジェットをラップする場合でも、同様の依存先モジュールセットを同じように指定できます。これらの依存先モジュールは、コンポーネントの初期化の前にダウンロードされます。
properties セクションでは、label というプロパティだけが公開されています。これは、日付ピッカーコンポーネントのラベルプロパティにバインドされています。同様に、他のプロパティも公開できます。どれを公開する場合も、ユーザーが Animate のオーサリング環境で設定できるようにします。実行時には、これらのプロパティはそれぞれ、インスタンスの options 配列に格納されているキー/値ペアとして使用できます。設定済みの値を実行時に抽出して適用できます。
例とは異なるセクション
-
getCreateString:
jQuery-UI に含まれている日付ピッカーウィジェットでは、そのような入力テキストエレメントが取得されて、実行時にそれが日付ピッカーエレメントに変換されます。ですから、それに応じて適切に DOM を初期化するひよ痛があります。
-
attach:
このウィジェットの場合は、この関数をオーバーライドする必要があります。この API は、エレメントが DOM にアタッチされようとするたびに呼び出されます。ただし、ベースとなるランタイム(この場合は createjs)の動作方法が原因で、この API はフレームスパン中に何度も呼び出される可能性があります。
ベースとなるエレメントのアタッチ状態を記憶した後、基底クラスのアタッチ API を呼び出します(this._superApply(arguments) を使用)。親となる DOM に初めてこのエレメントをアタッチしようとしている場合は、ベースとなる jQuery-UI ウィジェットの呼び出しを使用して、コンポーネントの DOM を日付ピッカーに変換します。https://jqueryui.com/datepicker/ を参照してください。
JavaScript ウィジェットのほとんどは、これと同じように動作します。これと同じ手法を使用して、自分で選んだ任意のコンポーネントをラップして、同じように Animate に組み込むことができます。
-
update:update をオーバーライドし、css プロパティをコンテナ div に、属性を実際の DOM エレメントにそれぞれ適用します。
attach、detach、update などの API をオーバーライドする場合は、基底クラスのデフォルト実装を評価し、その基底実装を適切なタイミングで呼び出す必要があります。そうしないと、コンポーネントの初期化が失敗する可能性があります。