| 目次 |
|---|
|
・コンテキストIDを取得する ・data:URLを取得する ・イメージを操作する |
生成した<canvas>要素のコンテキストIDを取得します。
未サポートの場合はnullを返すため、<canvas>要素が対応状況によるスクリプトエラーを避ける方法として用いられます。
リスト1. 対応状況の確認
var canvas = document.getElementById('sample01');
if ( ! canvas || ! canvas.getContext ) {
return false;
}
var context = canvas.getContext('2d');
コーディング例
canvas使えません。
生成した<canvas>要素のdata:URLを取得します。
生成した図形を指定された画像タイプのURLとして渡せます。
画像として再利用可能です。
リスト2. URLの取得
/* PNGとして */
var png = canvas.toDataURL();
document.getElementById("img0201").src = png;
/* JPEGとして */
var jpg = canvas.toDataURL('image/jpeg');
document.getElementById("img0202").src = jpg;
コーディング例
PNGイメージの例
JPEGイメージの例
「canvas要素(4) 画像の読込」では、画像ファイルからイメージオブジェクトを得ました。
<canvas>要素は、空のイメージオブジェクトを生成したり、生成した<canvas>要素の中からイメージオブジェクトを切り出したり、取得したり出来ます。
リスト3. イメージを操作する
/* イメージの切り出し */
var img = context.getImageData(150, 0, 200, 100);
/* イメージの貼り付け */
context.putImageData(img, 150, 100);
/* 切り出したイメージの幅と高さ */
context.fillText("width = " + img.width, 10, 120);
context.fillText("height = " + img.height, 10, 140);
コーディング例