I’m trying to write some text to a canvas element, but it seems that the font options I put in are being completely ignored. No matter what I change them to, it all comes out the same, which I believe to be the default 10px sans-serif. Heres what I have (this function runs on load)
function start()
{
canvas = document.getElementById('c');
ctx = canvas.getContext('2d');
ctx.fillStyle = "white";
ctx.font = "12px monospace";
ctx.textBaseline = "top";
}
It doesn’t work in either Firefox or Chrome.
As it turns out, thectx.fontchange needs to be used in the same function that is doing thefillText()This makes it work like a charm.
EDIT
As richtaur mentioned in his comment, this answer is wrong. Your context needs to be saved and restored using
ctx.save()andctx.restore()as it currently gets reset when you call canvas.getContext(‘2d’) again.