以下が正方形が互いに重なる白いフィールドを生成するのはなぜだろうと思っていました:
// square 1
ctx.moveTo( 0, 0); // left top
ctx.lineTo(200, 0); // right top
ctx.lineTo(200, 200); // right bottom
ctx.lineTo( 0, 200); // left bottom
ctx.lineTo( 0, 0); // left top
// square 2
ctx.moveTo(100, 100); // left top
ctx.lineTo(100, 300); // left bottom
ctx.lineTo(300, 300); // right bottom
ctx.lineTo(300, 100); // right top
ctx.lineTo(100, 100); // left top
ctx.fill();
したがって、最初の正方形は時計回りに定義されたパスで描画されますが、2 番目の正方形は反時計回りに定義されたパスで描画されます。
正方形 2 の次数を同じ方法で定義するとどうなるかのように、両方が黒く着色されると思います: http://jsfiddle.net/yNTTj/6/。しかし、見かけ上、重なり合うスペースは白(一般的に言えば、背景色)になります。
逆にパスを定義すると、基本的に同じ領域が切り捨てられるのに、塗りつぶすときに異なる結果が得られるのはなぜですか?