検索
ホームページウェブフロントエンドH5 チュートリアルクイックスタート createjs サンプル チュートリアル

クイックスタート createjs サンプル チュートリアル

Jun 21, 2017 am 10:33 AM
createjsjavascriptはじめる速い記事

createjs フレームワークを使い始めたとき、インターネット上に関連するチュートリアルがまだほとんどないことがわかりました。そのため、今後の参考にしやすいように記事を書きました。
createjsの紹介
公式Webサイト: http://www.createjs.cc/
createjsには次の4つの部分が含まれています:
EaselJS: スプライト、アニメーション、ベクター、ビットマップの描画に使用されます。 HTML5 Canvas 上でインタラクティブなエクスペリエンスを作成します (マルチタッチを含む)
TweenJS: アニメーション効果に使用されます
SoundJS: オーディオ再生エンジン
PreloadJS: Web サイトリソースのプリロード
SoundJS、PreloadJS に似ています。自分で処理するのに便利なので、自分で記述することもできます。一般的に、これらはオプションであるかどうかに関係なく、補助関数と同等です。そのため、この記事ではEaselJSの使い方を中心に説明します。
1. EaselJS の一般 API
  • (Bitmap) を使用して絵を描画します

  • (Shape) を使用して長方形、円などのグラフィックを描画します。座標 X、Y の変更、影の増加、透明度のアルファ、スケールの縮小と拡大

  • 2. EaselJS 描画の一般的なプロセス

  • 一般的なプロセス:
  • 表示オブジェクトを作成する → いくつかのパラメーターを設定する→ 描画するメソッドを呼び出す → ステージに追加する → update()
、コードは次のとおりです:
<script></script>  //引入相关的js文件
<canvas></canvas> canvas = document.querySelector('#canvas' stage =  rect = rect.graphics.beginFill("#f00").drawRect(0, 0, 100, 100stage.update();
グラフィックスは、いくつかのスタイル、線の幅、色などを設定でき、いくつかのメソッドを呼び出すこともできます。長方形のdrawRect、円のdrawCircleなどのグラフィックを描画します。詳細については、APIを自分で確認できます。
注: 必ずシェイプ オブジェクトをステージに追加してください。追加しないと画面に表示されません。

3. ティッカータイマー
createjs を作成するときに必ず遭遇するものの 1 つは、主にステージを定期的に更新するティッカーです。理想的なフレームレートは 60FPS です
4. 複数の表示オブジェクトの階層関係を制御します
ステージは、単純に子要素を表すchildren属性を持ちます。前のメソッドをオーバーライドして、表示リストの最後に addChild メソッドが追加されます。
子のカスケード効果を動的に変更することもできます。
createjs.Ticker.setFPS(60);

5. Container コンテナ
Text、Bitmap、Shape、Sprite およびその他の EaselJS 要素を含めることができ、これらは統合管理のために Container に含まれます。
たとえば、キャラクターは手、足、頭、胴体で構成されており、これらのパーツを同じコンテナに入れて均一に動かすことができます。使用方法も比較的簡単です:

stage.setChildIndex(red,1);
謬謬謬~この記事の焦点は画像を描いて加工することです
6. 絵を描く
var contain = new createjs.Container(); 
contain.addChild(bgImg);
contain.addChild(bitmap);  
stage.addChild(contain);

上記に従ってください EaselJS の通常の描画処理では、上記のコードが正常に表示されるはずです。ただし、場合によっては、この画像リソースが正常にロードされることを確認する必要があります。そうしないと、リソースのプリロードがある場合は、キャンバスに画像が表示されなくなります。そうでない場合は、画像をロードした後に描画する必要があります

var bg = new createjs.Bitmap("./background.png");
stage.addChild(bg);
stage.update();
Createjs には、画像を処理するためのいくつかのメソッドが用意されています:
6.1 マスクを追加します。画像にレイヤーを追加します
マスク属性を使用すると、画像と形状が交差する領域のみを表示できます

var img = new Image();
img.src = './img/linkgame_pass@2x.png';
img.onload = function () { var bg = new createjs.Bitmap("./background.png");
 stage.addChild(bg);
 stage.update();
}

一般的なアプリケーションシナリオ: 円形画像の表示など、画像のトリミングに使用されます

6.2 画像にフィルター効果を追加する
stage = new createjs.Stage("gameView");
bg = new createjs.Bitmap("./img/linkgame_pass@2x.png");
bg.x = 10;
bg.y = 10;//遮罩图形shape = new createjs.Shape();
shape.graphics.beginFill("#000").drawCircle(0, 0, 100);
shape.x = 200;
shape.y = 100;
bg.mask = shape;     //给图片bg添加遮罩stage.addChild(shape);
stage.addChild(bg);
stage.update();
その理由は、フィルターを画像に追加した直後にステージが更新されるためです。 1 つのフレームの影響で、フィルタは 2 番目のフレームで失敗します。画像のcache()メソッドを使用した後、ステージがどのように更新されてもフィルターの効果を維持できます。キャッシュを追加すると、FPSの向上やキャッシュなどの多くの機能が得られます。
6.3 Rectangle を使用して画像をトリミングする
EaselJS の組み込み Rectangle オブジェクトを使用して、画像の特定の部分を表示する選択ボックスを作成します。
stage = new createjs.Stage("gameView");
bg = new createjs.Bitmap("./img/linkgame_pass@2x.png");
bg.x = 10;
bg.y = 10;var rect = new createjs.Rectangle(0, 0, 121, 171);
bg.sourceRect = rect;
stage.addChild(bg);
stage.update();
适用场景:拼图小游戏,剪裁图片……

 

7. createjs事件

easeljs事件默认是不支持touch设备的,需要以下代码才支持:

createjs.Touch.enable(stage);

对于Bitmap,Shape等对象,都可以直接使用addEventListener进行事件监听

bitmap = new createjs.Bitmap('');
bitmap.addEventListener(‘click’,handle);

 

8. CreateJs的渲染模式
CreateJs提供了两种渲染模式,一种是用setTimeout,一种是用requestAnimationFrame,默认是setTimeout,默认的帧数是20,一般的话还没啥,但是如果动画多的话,设置成requestAnimationFrame模式的话,就会感觉到动画如丝般的流畅。
 
 
9.适配
在移动端开发中,不得不面对一个多屏幕,多尺寸的问题,所以适配问题显得特别重要。
<canvas></canvas>

注意,以上代码的width,height不同于css中的width,height。

比如,你在canvas内部绘制图片,用x,y轴进行定位,这里的x,y是相对于canvas这个整体。

我们再把canvas当成一整张图片使用css进行适配

canvas{
     width: 100%;
}

那么,就会有以下的效果,canvas会适配屏幕尺寸,里面的图片也会等比例变大变小。

     

 

 

以上がクイックスタート createjs サンプル チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
HTML5:標準とWeb開発への影響HTML5:標準とWeb開発への影響Apr 27, 2025 am 12:12 AM

HTML5のコア機能には、セマンティックタグ、マルチメディアサポート、オフラインストレージ、ローカルストレージ、フォームエンハンスメントが含まれます。 1。コードの読みやすさとSEO効果を改善するためのセマンティックタグなど。 2.ラベルでマルチメディアの埋め込みを簡素化します。 3。アプリケーションキャッシュやLocalStorageなどのオフラインストレージとローカルストレージは、ネットワークのない操作とデータストレージをサポートします。 4.フォームエンハンスメントでは、処理と検証を簡素化するための新しい入力タイプと検証プロパティを導入します。

H5コードの例:実用的なアプリケーションとチュートリアルH5コードの例:実用的なアプリケーションとチュートリアルApr 25, 2025 am 12:10 AM

H5は、さまざまな新機能と機能を提供し、フロントエンド開発の機能を大幅に向上させます。 1.マルチメディアサポート:メディアを埋め込んで要素を埋め込み、プラグインは必要ありません。 2。キャンバス:要素を使用して、2Dグラフィックとアニメーションを動的にレンダリングします。 3。ローカルストレージ:ユーザーエクスペリエンスを改善するために、ローカルストレージとセッションストレージを介して永続的なデータストレージを実装します。

H5とHTML5の接続:類似性と相違点H5とHTML5の接続:類似性と相違点Apr 24, 2025 am 12:01 AM

H5とHTML5は異なる概念です。HTML5は、新しい要素とAPIを含むHTMLのバージョンです。 H5は、HTML5に基づくモバイルアプリケーション開発フレームワークです。 HTML5はブラウザを介してコードを解析およびレンダリングしますが、H5アプリケーションはコンテナを実行し、JavaScriptを介してネイティブコードと対話する必要があります。

H5コードの構成要素:キー要素とその目的H5コードの構成要素:キー要素とその目的Apr 23, 2025 am 12:09 AM

HTML5の重要な要素には、最新のWebページの構築に使用される、、,,,,などが含まれます。 1.ヘッドコンテンツを定義します。2。リンクをナビゲートするために使用されます。3。独立した記事のコンテンツを表します。4。ページコンテンツを整理します。5。サイドバーコンテンツを表示します。

HTML5およびH5:一般的な使用法の理解HTML5およびH5:一般的な使用法の理解Apr 22, 2025 am 12:01 AM

HTML5とHTML5の略語であるHTML5とH5の間に違いはありません。 1.HTML5はHTMLの5番目のバージョンであり、Webページのマルチメディア関数とインタラクティブ機能を強化します。 2.H5は、HTML5ベースのモバイルWebページまたはアプリケーションを参照するためによく使用され、さまざまなモバイルデバイスに適しています。

HTML5:現代のウェブのビルディングブロック(H5)HTML5:現代のウェブのビルディングブロック(H5)Apr 21, 2025 am 12:05 AM

HTML5は、W3Cによって標準化されたHyperText Markup言語の最新バージョンです。 HTML5は、新しいセマンティックタグ、マルチメディアサポート、フォームの強化、Web構造の改善、ユーザーエクスペリエンス、SEO効果を導入します。 HTML5は、Webページ構造をより明確にし、SEO効果をより良くするために、、、、、、などの新しいセマンティックタグを導入します。 HTML5はマルチメディア要素をサポートしており、サードパーティのプラグインは不要で、ユーザーエクスペリエンスと読み込み速度が向上します。 HTML5はフォーム関数を強化し、ユーザーエクスペリエンスを向上させ、フォーム検証効率を向上させるなどの新しい入力タイプを導入します。

H5コード:クリーンで効率的なHTML5の書き込みH5コード:クリーンで効率的なHTML5の書き込みApr 20, 2025 am 12:06 AM

クリーンで効率的なHTML5コードを書き込む方法は?答えは、タグのセマンティック、構造化されたコード、パフォーマンスの最適化、一般的な間違いを回避することにより、一般的な間違いを避けることです。 1.コードの読みやすさとSEO効果を改善するには、セマンティックタグなどを使用します。 2。適切なインデントとコメントを使用して、コードを構造化して読みやすいままにします。 3.不必要なタグを減らし、CDNを使用してコードを圧縮することにより、パフォーマンスを最適化します。 4.タグが閉じていないなどの一般的な間違いを避け、コードの有効性を確認してください。

H5:ウェブ上のユーザーエクスペリエンスをどのように強化するかH5:ウェブ上のユーザーエクスペリエンスをどのように強化するかApr 19, 2025 am 12:08 AM

H5は、マルチメディアサポート、オフラインストレージ、パフォーマンスの最適化により、Webユーザーエクスペリエンスを向上させます。 1)マルチメディアサポート:H5と要素は、開発を簡素化し、ユーザーエクスペリエンスを向上させます。 2)オフラインストレージ:WebStorageとIndexEdDBは、エクスペリエンスを改善するためにオフラインで使用できるようにします。 3)パフォーマンスの最適化:ウェブワーカーと要素は、パフォーマンスを最適化して帯域幅の消費を削減します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。