お寿司か焼き肉食べたい

まじめな事からしょーもない事まで
めにゅーを開く(投げやり)

赤い線と緑の線使って何か作って。

はい、線の色とかなんや背景色とかその辺の設定についてのお話です。

context.lineWidth=width

線の太さを指定することができます。

var canvas1 = document.getElementById('canvas01');
canvas1.width = 200;
canvas1.height = 200;
if (canvas1.getContext) {
  var context1 = canvas1.getContext('2d');
  // 新しいパスを開始する
  context1.beginPath();
  context1.lineWidth=5;
  context1.moveTo(30,30);
  context1.lineTo(60,30);
  context1.stroke();
}

context.lineCap=prm

線の両端の形状を指定する事ができます。
指定できる引数は以下です。

butt

装飾を行いません。これがデフォルト値です。

round

端っこが丸くなります。

square

端っこが四角くなります。

var canvas2 = document.getElementById('canvas02');
canvas2.width = 200;
canvas2.height = 200;
if (canvas2.getContext) {
  var context2 = canvas2.getContext('2d');
  // デフォルト
  context2.beginPath();
  context2.lineWidth=5;
  context2.lineCap = 'butt';
  context2.moveTo(30,30);
  context2.lineTo(100,30);
  context2.stroke();

  // 丸
  context2.beginPath();
  context2.lineCap = 'round';
  context2.moveTo(30,60);
  context2.lineTo(100,60);
  context2.stroke();

  // 四角
  context2.beginPath();
  context2.lineCap = 'square';
  context2.moveTo(30,90);
  context2.lineTo(100,90);
  context2.stroke();
}

context.lineJoin=prm

線の接合箇所の形状を指定する際に使用します

miter

デフォルト特に何もしません。

bevel

面取りします。

round

丸くなります。

var canvas3 = document.getElementById('canvas03');
canvas3.width = 200;
canvas3.height = 200;
if (canvas3.getContext) {
  var context3 = canvas3.getContext('2d');
  
  context3.lineWidth=10;

  // デフォルト
  context3.beginPath();
  context3.lineJoin = 'miter';
  context3.moveTo(30,30);
  context3.lineTo(100,30);
  context3.lineTo(70,60);
  context3.stroke();

  // 面取り
  context3.beginPath();
  context3.lineJoin = 'bevel';
  context3.moveTo(30,90);
  context3.lineTo(100,90);
  context3.lineTo(70,120);
  context3.stroke();

  // 角丸
  context3.beginPath();
  context3.lineJoin = 'round';
  context3.moveTo(30,150);
  context3.lineTo(100,150);
  context3.lineTo(70,170);
  context3.stroke();
}

context.miterLimit=prm

lineJoinがmiter(デフォルト)の場合尖りますが
尖り先の限界値を設定します。
限界値を超えた場合は面取りになります。

var canvas4 = document.getElementById('canvas04');
canvas4.width = 200;
canvas4.height = 200;
if (canvas4.getContext) {
  var context4 = canvas4.getContext('2d');
  
  context4.lineWidth=10;
  context4.miterLimit = 3;
  // デフォルト
  context4.beginPath();
  context4.moveTo(30,30);
  context4.lineTo(100,30);
  context4.lineTo(70,70);
  context4.stroke();

  // 面取り
  context4.beginPath();
  context4.moveTo(30,90);
  context4.lineTo(100,90);
  context4.lineTo(70,120);
  context4.stroke();

  // 角丸
  context4.beginPath();
  context4.moveTo(30,150);
  context4.lineTo(100,150);
  context4.lineTo(70,170);
  context4.stroke();
}