KeepDraw.js-キャンバスにペイントするためのJavaScriptフレームワーク

みなさんこんにちは。 この記事では、キャンバス描画ライブラリ-KeepDrawに焦点を当てます。

これは、イベントとアニメーションをサポートするCanvas 2dを操作するためのフレームワークです。



特徴的な機能:



  1. OOPスタイルAPI
  2. マウス、キーボード、タッチスクリーンのイベント。
  3. アニメーションのサポート。
  4. 点によるベジェ曲線の描画。
  5. 図と点の交差をチェックする多くの機能。
  6. 図形をグラデーションと画像で塗りつぶします。
  7. オブジェクトテンプレート-線、長方形、テキスト、多角形、円。
  8. モバイルデバイスのサポート。
  9. ベジェ曲線を使用して形状を滑らかにします。
  10. 軽量。 圧縮バージョンの重量は15キロバイトです。


はじめに



キャンバス上の主なオブジェクトはステージです。 キャンバスの幅、div div識別子(キャンバス)、高さと背景を示します。 Stage.childsには、キャンバスに表示されるすべての図形が含まれます。 キャンバスごとに1つのStageオブジェクトを指定できます。 ステージとシェイプを指定すると、アニメーションまたはイベントを開始できます。



コード例:



//  var stage = new KeepDraw.Stage({ width: innerWidth, height: innerHeight, canvas: 'canvas', fill: '#00afff' }); //  var circle = new KeepDraw.Circle({ x: innerWidth / 2, y: innerHeight / 2, radius: innerHeight / 3, color: 'white', stage: stage });
      
      





画像






メインフィギュア



KeepDrawには、長方形(Rect)、正多角形(Polygon)、テキスト(Text)、Lineまたは独自のFigure(Line)があります。



独自の図の例:



 var stage = new KeepDraw.Stage({ width: innerWidth, height: innerHeight, canvas: 'canvas', fill: '#00afff' }); var line = new KeepDraw.Line({ x: 100, y: 50, segments: [[0,0,-70,0,-70,100],[0,100,70,100,130,10],[200,10,270,10,270,108.94],[200,100,130,100,70,0.3],[0,0,-70,0]], color: 'white', strokeWidth: 5, strokeColor: '#30ccff', stage: stage });
      
      





画像






スタイル



次の値は、すべての形状に適用できます。





コード例:



 var stage = new KeepDraw.Stage({ width: innerWidth, height: innerHeight, canvas: 'canvas', fill: '#00afff' }); var circle = new KeepDraw.Circle({ x: innerWidth / 2, y: innerHeight / 2, radius: innerHeight / 6, color: 'rgba(255, 255, 255, 0.5)', strokeColor: 'white', shadowWidth: 100, strokeWidth: 20, shadowColor: 'rgba(0,0,0,0.5)', stage: stage });
      
      





画像






追加機能



すべての図には独自の機能があります。





イベント



イベントは図形に署名できます(クリック、マウスダウン、タッチスタートなど)。







アニメーション。 アニメーションはいくつかの方法で設定できます。



  Stage.Animation: stage.draw = function(diff) { if (poly.x > innerWidth * 0.88) vel = -1; if (poly.x < innerWidth * 0.12) vel = 1; poly.rotate(vel * diff); poly.x += innerHeight / 150 * vel; }; var anim = new KeepDraw.Animation(stage);
      
      





デモ



またはTweenを介して:



 var tween = new KeepDraw.Tween(poly, { age: 40, end: 5000, attrs: { x: innerWidth, opacity: 0 } }); tween.play(); var anim = new KeepDraw.Animation(stage);
      
      





デモ



おわりに



→KeepDrawに基づくオンライン描画エディタ-roundraw.github.io ;

Github

→ホームページ-keepdraw.github.io



All Articles