使用するクラス
HTMLCanvasElement
関数
- getContext(contextType)
CanvasRenderingContext2D
関数
- beginPath()
- arc(x, y, radius, startAngle, endAngle, anticlockwise)
- stroke()
- fillRect(x, y, width, height)
- strokeRect(x, y, width, height)
- fillText(text, x, y)
- strokeText(text, x, y)
プロパティ
- fillStyle
- font
描画方法
アニメーションの描画方法については、【javascript】canvasでアニメーションを作ろうをご覧ください。
丸を描画する
丸を描画するには横にx離れた位置、縦にy離れた位置を起点とし、半径radiusの円のうち、描画起点となる角度startAngleから描画終了となる角度endAngleまでを指定する事で描画する。
function drawOval(){ let canvas = document.querySelector('#oval-canvas41'); let context = canvas.getContext('2d'); context.beginPath(); let x = 100; let y = 100; let radius = 50; let startAngle = 0; let endAngle = 2 * Math.PI; context.arc(x, y, radius, startAngle, endAngle); context.stroke(); } window.addEventListener("load", function(){ drawOval(); });
四角を描画する
四角を描画するには横にx離れた位置、縦にy離れた位置を起点とし、四角形の横幅(width)と縦幅(height)を指定する事で描画する。色を変えるにはfillStyleプロパティにカラーコードを設定する。
function drawRect(){ let canvas = document.querySelector('#rect-canvas41'); let context = canvas.getContext('2d'); let x = 50; let y = 50; let width = 100; let height = 50; context.strokeRect(x, y, width, height); context.fillStyle = 'rgb(255, 0, 0)'; x = 160; y = 30; width = 50; context.fillRect(x, y, width, height); } window.addEventListener('load', function(){ drawRect(); });
文字を描画する
文字を描画するには横にx離れた位置、縦にy離れた位置を起点にtextで設定された文章を描画する。描画する文章のフォントを変更するにはfontプロパティを設定する。
function drawText(){ let canvas = document.querySelector('#text-canvas41'); let context = canvas.getContext('2d'); context.font = '24px Impact'; let text = 'Welcome to my blog!'; let x = 30; let y = 60; context.strokeText(text, x, y); x = 60; y = 100; context.fillStyle = 'rgb(0, 0, 255)'; context.fillText(text, x, y); } window.addEventListener('load', function(){ drawText(); });
サンプル
入力値をもとに四角形を描画するサンプル
x座標:
y座標:
横幅:
縦幅
色: