Sometimes, we want to fix HTML5 canvas ctx.fillText not adding line breaks with JavaScript.
In this article, we’ll look at how to fix HTML5 canvas ctx.fillText not adding line breaks with JavaScript.
How to fix HTML5 canvas ctx.fillText not adding line breaks with JavaScript?
To fix HTML5 canvas ctx.fillText not adding line breaks with JavaScript, we set the location of the text when we call fillText
.
For instance, we write
const c = document.getElementById("c").getContext("2d");
c.font = "11px Courier";
console.log(c);
const txt = "line 1\nline 2\nthird line..";
const x = 30;
const y = 30;
const lineHeight = 15;
const lines = txt.split("\n");
for (const line of lines) {
c.fillText(line, x, y + i * lineHeight);
}
to loop through the lines
with a for-of loop.
In it, we call the context’s fillText
method with the line
to render.
Then y coordinates of the text is set to y + i * lineHeight
which positions the text below the previous line.
Conclusion
To fix HTML5 canvas ctx.fillText not adding line breaks with JavaScript, we set the location of the text when we call fillText
.