HTML canvas textBaselineProperty
Examples
Draw a red line at y=100, then place each word with a different textBaseline value at y=100:
JavaScript:
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
//Draw a red line at y=100
ctx.strokeStyle="red";
ctx.moveTo(5,100);
ctx.lineTo(395,100);
ctx.stroke();
ctx.font="20px Arial"
//Place each word at y=100 with different textBaseline values
ctx.textBaseline="top";
ctx.fillText("Top",5,100);
ctx.textBaseline="bottom";
ctx.fillText("Bottom",50,100);
ctx.textBaseline="middle";
ctx.fillText("Middle",120,100);
ctx.textBaseline="alphabetic";
ctx.fillText("Alphabetic",190,100);
ctx.textBaseline="hanging";
ctx.fillText("Hanging",290,100);
var ctx=c.getContext("2d");
//Draw a red line at y=100
ctx.strokeStyle="red";
ctx.moveTo(5,100);
ctx.lineTo(395,100);
ctx.stroke();
ctx.font="20px Arial"
//Place each word at y=100 with different textBaseline values
ctx.textBaseline="top";
ctx.fillText("Top",5,100);
ctx.textBaseline="bottom";
ctx.fillText("Bottom",50,100);
ctx.textBaseline="middle";
ctx.fillText("Middle",120,100);
ctx.textBaseline="alphabetic";
ctx.fillText("Alphabetic",190,100);
ctx.textBaseline="hanging";
ctx.fillText("Hanging",290,100);
Try it Yourself »
Browser Support
![]()
![]()
![]()
![]()
![]()
Internet Explorer 9, Firefox, Opera, Chrome, and Safari support the textBaseline property.
Note:The textBaseline property has different effects in different browsers, especially when using "hanging" or "ideographic".
Note:Internet Explorer 8 and earlier versions do not support the <canvas> element.
Definition and Usage
The textBaseline property sets or returns the current text baseline when drawing text.
The following diagram demonstrates the various baselines supported by the textBaseline property:

Note:fillText()andstrokeText()When the method positions text on the canvas, it will use the specified textBaseline value.
| Default value: | alphabetic |
|---|---|
| JavaScript syntax: | context.textBaseline="alphabetic|top|hanging|middle|ideographic|bottom"; |
Property Values
| Value | Description |
|---|---|
| alphabetic | Default. The text baseline is the ordinary alphabetic baseline. |
| top | The text baseline is the top of the em box. |
| hanging | The text baseline is the hanging baseline. |
| middle | The text baseline is the middle of the em box. |
| ideographic | The text baseline is the ideographic baseline. |
| bottom | The text baseline is the bottom of the em box. |
Other Extensions
Canvas Object