CanvasRenderingContext2D.fillStyle - 塗りつぶしのスタイル(色)を指定する
投稿日: / 更新日:
JavaScriptの、CanvasRenderingContext2DオブジェクトのfillStyle
は、塗りつぶしのスタイル(色)を取得、変更するためのプロパティです。スタイルを設定した後は、別途、fill()
メソッドを使って実際に塗りつぶさないと意味がありません。値には、CSSで許可された指定方法で色、グラデーションのCanvasGradientオブジェクト、またはCanvasPatternオブジェクトの3種類の中からどれかを指定できます。
サンプルコード
<canvas id="target"></canvas>
// キャンパス要素を取得
var canvas = document.getElementById( "target" ) ;
// 二次元グラフィックスのコンテキスト(CanvasRenderingContext2D)を取得
var context = canvas.getContext( "2d" ) ;
// 塗りつぶしのスタイル(色)を指定する
context.fillStyle = "#d36015" ;
// 塗りつぶしのスタイル(色)を取得する
var fillStyle = context.fillStyle ;
// 設定した内容で塗りつぶしを実行する (応用)
context.rect( 0,0, 200,200 ) ; // 範囲を決めて
context.fill() ; // 実行
デモ
ボタンを押すと、fillStyle
プロパティに値を設定したり、現在の設定を取得したりできます。プロパティの操作だけでは、描画は実行されません。別途、範囲を決めてfill()
メソッドなどを実行する必要があります。このデモではおまけとして「描画」を実行すると、設定した色で描画を実行するようになっています。
構文
CanvasRenderingContext2D.fillStyle = color || CanvasGradient || CanvasPattern ;
fillStyle = CanvasRenderingContext2D.fillStyle ;
引数
項目 | 説明 |
---|---|
color | CSSで許可されている方法で色を指定する。#D36015 、brown 、rgb(211,96,21) 、rgba(211,96,21,0.1) 、hsl(24,82%,45%) 、transparent など。 |
CanvasGradient | CanvasGradientオブジェクトを指定する。グラデーションで塗りつぶす。 |
CanvasPattern | CanvasPatternオブジェクトを指定する。画像の繰り返し表示で塗りつぶす。 |
戻り値
戻り値はありません。
項目 | 説明 |
---|---|
fillStyle | 取得の場合は、現在の設定が戻り値となる。 |
ノート
- サポート状況
- 主要な全てのブラウザがサポートしている。Ie8以下はcanvas自体に対応していない。
- 値は3種類
- 単純な塗りつぶしなら色を表す文字列、グラデーションで塗りつぶしたい時はCanvasGradientオブジェクト、画像で塗りつぶしたい場合はCanvasPatternオブジェクトを指定する。