ここは、ふぇりあ16歳が不定期に連載しているオンライン小説のページです。
VNIふぇりあ16歳へ
ゼロからわかる現代JavaScript
36.画像の描画。「canvas」
*最新のIE9が必要です。
DOMで画像を表示できるように、
canvasにも画像を表示することができます。
まず
・Image
Imageメソッドでイメージオブジェクトを作ります。
そのイメージに画像を指定し読み込ませます。
今回使用するソースコード |
function main() { //キャンバス要素の作成 var canvas = document.createElement("canvas"); //bodyに要素の追加 document.body.appendChild(canvas); //コンテキストを取得 2dは2D描画の意味 var ctx = canvas.getContext("2d"); //イメージオブジェクトの作成 var img = Image(); //イメージ読み込み img.src = "f_mail2.gif"; //画像が読み込まれたら img.onload = function () { //画像を指定位置に描画 ctx.drawImage(img, 0, 0); //画像を三倍にして描画 ctx.drawImage(img, 40, 0, img.width * 3, img.height * 3); } } |
そして、
・drawImage
drawImageメソッドを使い描画します。標準の機能では
引数に(イメージオブジェクト, X座標、 Y座標)
と取り、画像を指定位置に描画します。
このとき、イメージオブジェクに「画像が読み込まれている」必要があります
そのため、img.onloadイベントが必要になります。
さらに、画像のサイズを指定して描画する機能もdrawImageメソッドにあります。
引数に(イメージオブジェクト, X座標, Y座標,
横幅, 縦幅)
と使います。
実行結果
コラム:
現代プログラミングの特徴に、オーバーロードがあります。
後で説明しますが、簡単に言うと。
同じメソッド名で引数を変えたバリエーションを作ることです。
そのオーバーロードにより、drawImageメソッドはいろいろなバリエーションを
持っています。
(C)著作権はふぇりあ16歳とお兄ちゃんにあります。
無断転載、盗用は禁止です。