fix: correct text alignment

This commit is contained in:
Boris Dayma 2022-08-17 16:33:32 -05:00
parent 6020386bbe
commit 4dbd0da0ec

View File

@ -146,11 +146,11 @@ export class CanvasRenderer extends Renderer {
renderTextWithLetterSpacing(text: TextBounds, letterSpacing: number, baseline: number): void {
if (letterSpacing === 0) {
this.ctx.fillText(text.text, text.bounds.left, text.bounds.top + baseline);
this.ctx.fillText(text.text, text.bounds.left, text.bounds.top - text.bounds.height / 2 + baseline);
} else {
const letters = segmentGraphemes(text.text);
letters.reduce((left, letter) => {
this.ctx.fillText(letter, left, text.bounds.top + baseline);
this.ctx.fillText(letter, left, text.bounds.top - text.bounds.height / 2 + baseline);
return left + this.ctx.measureText(letter).width;
}, text.bounds.left);