width属性は、canvas全体・テキスト・イメージなどの幅を表します。
例えば、measureText()メソッドでテキストの描画幅を測定した際に、
測定したテキスト(文字列)の描画幅がwidth属性に代入されます。
width属性の表す値で、テキストやイメージなどの幅を描画前に取得することができます。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>canvasで図形を描く</title>
<script type="text/javascript">
<!--
function test() {
//描画コンテキストの取得
var canvas = document.getElementById('sample');
if (canvas.getContext) {
var context = canvas.getContext('2d');
//ここに具体的な描画内容を指定する
//canvas全体の幅をテキストとして描画
context.fillText("canvavs全体の幅:"+canvas.width, 20, 30);
//幅を測定する文字列を指定
var metrics = context.measureText("abcABCあいう漢字");
//文字列の幅をテキストとして描画
context.fillText("文字列「abcABCあいう漢字」の幅:"+metrics.width, 20, 60);
//寸法100×80のImageDataオブジェクトを生成
var img01 = context.createImageData(100, 80);
//ImageDataオブジェクトの幅をテキストとして描画
context.fillText("生成したImageDataオブジェクトの幅:"+img01.width, 20, 90);
}
}
//-->
</script>
</head>
<body onLoad="test()">
<h2>Canvasで図形を描く</h2>
<canvas width="300" height="150" id="sample" style="background-color:yellow;">
図形を表示するには、canvasタグをサポートしたブラウザが必要です。
</canvas>
</body>
</html>