The fill function
The fill
function is used to draw a path onto the canvas
(but not stroking
it). To stroke the path you will need to use
the stroke
function.
The order in which you call the fill
and stroke
functions does
matter - by using the fill
function after the stroke
function the fill can obscure half of the stroke.
This leads to your lines appearing
thinner than the lineWidth
setting. This can be desirable though - and it
also may be avoided depending on
what you do for anti-aliasing. If, for example, you translate by half a
pixel before you do any drawing your lines
will be drawn thinner and the fill will not overwrite half the line. You can
see this by looking at
the isPointInStroke
demonstration.
As you'll see half of the stroke is outside of the fill.
Arguments to the function
-
Optionally you can specify a
Path2D
object to be filled. If not given the default path is filled.
Fill the default path:context.fill();
Fill the givenPath2D
object:context.fill(path);
An example
Filling the default path:
<script>
window.onload = function ()
{
var canvas = document.getElementById("cvs");
var context = canvas.getContext('2d');
context.beginPath();
context.rect(5,5,90,90);
context.fill();
}
</script>
Filling a Path2D
object:
<script>
window.onload = function ()
{
var canvas = document.getElementById("cvs");
var context = canvas.getContext('2d');
var path = new Path2D();
path.rect(5,5,90,90);
context.fill(path);
}
</script>