KineticJS入門 – テキストを描いてみる
前回に引き続きテキストを描いてみます。
KineticJS入門 – 図形を描いてみる
Canvasエリアの用意や、ライブラリの読み込みなどは前回を参照してください。
テキストを描く
テキストの描写には関数Textをコールします。
以下、「sample text」という文字を、赤文字で描写するシンプルな例です。
window.onload = function() { var stage = new Kinetic.Stage({ container:"canvas1", width:300, height:100 }); var layer = new Kinetic.Layer(); var text = new Kinetic.Text({ x:100, y:50, text:'sample text', textFill:"red" }); layer.add(text); stage.add(layer); };
前回と同様に、Textオブジェクトをオブジェクトlayerに追加し、さらにそのオブジェクトlayerをオブジェクトstageに追加します。
テキストを装飾する
公式サイトにあるように、さまざまなオプションを設定して、文字を装飾してみます。
var text = new Kinetic.Text({ x:150, y:30, fontStyle:"italic", fontSize:30, stroke:"red", align:"center", strokeWidth:5, textStroke:"green", textStrokeWidth:1, text:'sample text', textFill:"yellow", alpha:0.8, rotation:0.2 });
努力すれば、簡単なロゴぐらいなら描くことができそうですね。
日本語を描写してみる
使う場面はほとんどないと思いますが、日本語が使用可能か試してみました。
var text = new Kinetic.Text({ x:50, y:50, text:'日本語サンプルさんぷるsample', textFill:"blue" });
予想に反して、問題なく表示されました。
「fontFamily」オプションを使えば、フォント指定も可能なようです。
しかし、JavaScript処理なので、ローカルのデバイスフォントが使用されると思われます。環境依存を考慮して、指定には注意しなければいけないでしょう。
Canvasのテキストは、画像要素のようにaltを指定できないので、SEO的には弱いかもしれません。
しかし、動的な表示が可能なので、限定した場面では利用できそうです。
コメントする