トップページ  > Canvas  > drawImage(image, sx, sy, sw, sh, dx, dy, dw, dh)

★Canvasリファレンス

context . drawImage(image, sx, sy, sw, sh, dx, dy, dw, dh) …… 使用範囲を指定してイメージを描画する
Internet Explorer9 Firefox2Firefox3Firefox4 Google Chrome1Google Chrome2Google Chrome3Google Chrome4Google Chrome5Google Chrome6 Safari3Safari4Safari5 Opera9Opera10
広告

drawImage(image, sx, sy, sw, sh, dx, dy, dw, dh)メソッドは、 使用範囲を指定してイメージを描画する際に使用します。

引数imageは、描画するイメージを表します。 具体的には <img>要素・ <canvas>要素・ <video>要素 のいずれかを指定することができます。

引数(sx, sy)と引数(sw, sh)は、元イメージの使用範囲の矩形を表します。 引数(sx, sy)は使用範囲の開始座標、引数(sw, sh)はその座標からの幅と高さです。 sw, shのいずれかに0を指定すると、エラー(INDEX_SIZE_ERR)となります。

引数(dx, dy)は、描画するイメージを配置する座標を表します。 引数(dw, dh)は、イメージを描画する幅と高さを表します。

引数の単位はピクセルです。イメージにおける1ピクセルは、canvas座標空間の1単位として換算されます。

イメージの描画は現在のパスには影響を与えません。 また、影・透明度・切り抜き・合成の対象となります。

■引数(sx, sy)、(sw, sh)、(dx, dy)、(dw, dh)の概念図

引数(sx, sy)は元画像の使用範囲の開始座標で、省略すると(0, 0)になります。 引数(sw, sh)は元画像の使用範囲の幅と高さで0を指定することはできません。 引数(sw, sh)を省略するとイメージ本来の幅・高さと同じになります。 もし、イメージが本来の幅・高さを持たない場合には、代わりに実際のオブジェクトのサイズが使用されます。 オブジェクトのサイズの初期値はcanvas要素のサイズとなります。

引数(dx, dy)はイメージを描画する際の開始座標です。 引数(dw, dh)はイメージを描画する際の幅と高さで、省略すると引数(sw, sh)と同じになります。

■引数(値)の説明

image
描画するイメージ(指定できるのは<img>要素・ <canvas>要素・ <video>要素 のいずれか)
sx
元イメージ使用範囲の矩形のx座標(初期値は0)
sy
元イメージ使用範囲の矩形のy座標(初期値は0)
sw
元イメージ使用範囲の矩形の幅(初期値はイメージ本来の幅)
sh
元イメージ使用範囲の矩形の高さ(初期値はイメージ本来の高さ)
dx
描画イメージ矩形のx座標
dy
描画イメージ矩形のy座標
dw
イメージを描画する幅(初期値はイメージ本来の幅)
dh
イメージを描画する高さ(初期値はイメージ本来の高さ)

■使用例

HTML + JavaScriptソース

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>canvasで図形を描く</title>
<script type="text/javascript">
<!--
//Imageオブジェクトを生成して、画像ファイルを先読みしておく
var img01 = new Image();
img01.src = "../images/kaeru.gif";

function test() {
  //描画コンテキストの取得
  var canvas = document.getElementById('sample');
  if (canvas.getContext) {
    var context = canvas.getContext('2d');
    //元イメージの座標(50, 50)から幅100高さ50の範囲を使用して、座標(10, 10)の位置に、サイズ200×50でイメージを表示
    context.drawImage(img01, 50, 50, 100, 50, 10, 10, 200, 50);
  }
}
//-->
</script>
</head>
<body onLoad="test()">
<h2>Canvasで図形を描く</h2>
<canvas width="300" height="150" id="sample" style="background-color:yellow;">
図形を表示するには、canvasタグをサポートしたブラウザが必要です。
</canvas>
</body>
</html>
↓↓↓

ブラウザ上の表示

Canvasで図形を描く

図形を表示するには、canvasタグをサポートしたブラウザが必要です。

■関連項目

<canvas> …… 図形を描くHTML5から追加
広告
Sponsors
広告
MuuMuu Domain!
ドメイン取るならお名前.com
現役エンジニアのオンライン家庭教師【CodeCamp】
サイトに広告を掲載してお小遣いが稼げる!【A8.net】
Node.jsコース
はじめてのプログラミングコース
▲ページ先頭へ
HTMLクイックリファレンスについて
© HTMQ