HTML CanvasのfillStyleプロパティとは?使い方とサンプルコードを解説
HTML CanvasのfillStyleプロパティは、図形を描画する際の塗りつぶしに使う「色」「グラデーション」「パターン」を設定するためのプロパティです。初期値は #000000(黒)となっています。
<canvas>要素を使用すると、JavaScriptを使ってWebページ上に自由にグラフィックを描画できます。canvas要素には描画領域のサイズを決める2つの属性があり、それぞれ高さを表すheightと幅を表すwidthです。
fillStyleの基本構文
ctx.fillStyle = color | gradient | pattern;
fillStyleに設定できる値は、次の3種類です。
- color: 図形の塗りつぶし色。CSSカラー形式(カラーコード、rgb()、色名など)で指定します。
- gradient: 線形グラデーション、または円形(放射状)グラデーションのオブジェクト。図形をグラデーションで塗りつぶします。
- pattern: 図形を埋めるためのパターンオブジェクト。画像などを繰り返し模様として利用できます。
fillStyleの実装例
それでは、実際にCanvasのfillStyleプロパティを使ったサンプルを見ていきましょう。この例では、線形グラデーションを作成して塗りつぶしスタイルに設定し、キャンバス全体を矩形で塗りつぶしています。
サンプルコード
<!DOCTYPE html>
<html>
<body>
<canvas id="newCanvas" width="500" height="350" style="border:2px solid orange;">
</canvas>
<script>
var c = document.getElementById("newCanvas");
var ctx = c.getContext("2d");
var newGrad = ctx.createLinearGradient(0, 0, 130, 0);
newGrad.addColorStop(0, "blue");
newGrad.addColorStop(0.8, "green");
ctx.fillStyle = newGrad;
ctx.fillRect(0, 0, 500, 350);
</script>
</body>
</html>
実行結果

上記のコードを実行すると、左側が青(blue)、右側が緑(green)へと滑らかに変化する線形グラデーションで塗りつぶされたキャンバスが表示されます。
処理の流れのポイント
createLinearGradient()でグラデーションオブジェクトを生成するaddColorStop()でオフセット位置(0〜1)と色を追加する- 生成したグラデーションを
fillStyleに代入する fillRect()で実際に矩形を描画する
このように、fillStyleプロパティを活用することで、単色だけでなく美しいグラデーションやパターンによる表現も簡単に実現できます。
-
HTML DOM langプロパティとは?言語コードの取得・設定方法をわかりやすく解説
HTML DOMのlangプロパティは、要素のコンテンツがどの言語で書かれているかを示す言語コード(例:英語なら「en」)を表す文字列を、取得または設定するためのプロパティです。このプロパティを利用することで、JavaScriptから動的に要素の言語情報を読み取ったり、変更したりすることができます。 構文 langプロパティの基本的な構文は以下のとおりです。 言語コードを取得する場合 HTMLElementObject.lang lang属性に言語コードを設定する場合 HTMLElementObject.lang = lang_code 補足:主な言語コードの例 lang属性には、IS
-
HTML DOMのli valueプロパティとは?使い方とサンプルコードを解説
HTML DOM の value プロパティは、<li> 要素の value 属性の値を取得または設定するために使用されます。順序付きリスト(<ol>)では通常、項目番号は自動的に振られますが、このプロパティを使うことで、JavaScript から各リスト項目の番号を動的に制御できるようになります。 構文 value プロパティの基本的な構文は以下のとおりです。 値の取得 liObject.value 値の設定 liObject.value = 文字列 サンプルコード ここでは、レースの順位リストを例に、value プロパティの実際の動作を確認してみましょう。「アレック