キャンバス上に画像を描画します:
JavaScript:
window.onload = function() {
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var img=document.getElementById("scream");
ctx.drawImage(img,10,10);
};
Try it Yourself ❯
表中の数字は、メソッドを完全にサポートした最初のブラウザ・バージョンを指定しています。
メソッド | |||||
---|---|---|---|---|---|
drawImage() | Yes | 9.0 | Yes | Yes | Yes |
drawImage() メソッドは、キャンバス上に画像やキャンバス、ビデオを描画します。
drawImage() メソッドは、画像の一部を描くことも可能で、および/または画像サイズを拡大/縮小することができます。
注: 画像がロードされる前に、drawImage() メソッドを呼び出すことはできません。 イメージがロードされていることを確認するには、window.onload() から、または document.getElementById("imageID").onload から drawImage() を呼び出すことができます。
キャンバス上の画像の位置:
JavaScript 構文: | context.drawImage(img,x,y); |
---|
キャンバス上の画像の位置と、画像の幅と高さの指定:
JavaScript 構文: | context.drawImage(img,x,y,width,height); |
---|
キャンバス上の画像のクリップと、クリップ部分の位置:
JavaScript 構文: | context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height); |
---|
パラメータ | 説明 | Play it |
---|---|---|
img | 使用するイメージ、キャンバス、またはビデオ要素を指定する | |
sx | 任意。クリッピングを開始する x 座標 | Play it ❯ |
sy | 任意。クリッピングを開始する y 座標 | Play it ❯ |
swidth | 任意。クリップする画像の幅 | Play it ❯ |
sheight | 任意。クリップする画像の高さ | Play it ❯ |
x | キャンバスに画像を配置する場所の x 座標 | Play it ❯ |
y | キャンバスに画像を配置する場所の y 座標 | Play it ❯ |
width | 任意。使用する画像の幅 (画像の拡大か縮小) | Play it ❯ |
height | 任意。使用する画像の高さ (画像の拡大か縮小) | Play it ❯ |
キャンバス上の画像の位置と、画像の幅と高さの指定:
JavaScript:
window.onload = function() {
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var img=document.getElementById("scream");
ctx.drawImage(img,10,10,150,180);
};
Try it Yourself ❯
キャンバス上の画像のクリップと、クリップ部分の位置:
JavaScript:
window.onload = function() {
var c=document.getElementById("myCanvas");
var
ctx=c.getContext("2d");
var
img=document.getElementById("scream");
ctx.drawImage(img,90,130,50,60,10,10,50,60);
};
Try it Yourself ❯
使用するビデオ(デモンストレーションを開始するには再生を押してください):
キャンバス:
JavaScript(コードは、20 ミリ秒ごとにビデオの現在のフレームを描画します):
var v=document.getElementById("video1");
var c=document.getElementById("myCanvas");
var ctx=c.getContext('2d');
var i;
v.addEventListener('play',function() {i=window.setInterval(function()
{ctx.drawImage(v,5,5,260,125)},20);},false);
v.addEventListener('pause',function() {window.clearInterval(i);},false);
v.addEventListener('ended',function() {clearInterval(i);},false);
Try it Yourself ❯