The stroke function
The stroke
function is used to draw a path on to the canvas
(but not filling it). To fill the path you will need
to use
the fill
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 stroked. If not given the default path is stroked.
Stroke the default path:context.stroke();
Stroke the givenPath2D
object:context.stroke(path);
An example
Stroking 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.stroke();
}
</script>
Stroking 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.stroke(path);
}
</script>