CanvasRenderingContext2D .textAlign property of the Canvas 2D API specifies the current text alignment used when drawing text.

The alignment is relative to the x value of the fillText() method. For example, if textAlign is "center" , then the text's left edge will be at x - (textWidth / 2) .

句法

ctx.textAlign = "left" || "right" || "center" || "start" || "end";
					

选项

可能的值:

"left"

The text is left-aligned.

"right"

The text is right-aligned.

"center"

The text is centered.

"start"

The text is aligned at the normal start of the line (left-aligned for left-to-right locales, right-aligned for right-to-left locales).

"end"

The text is aligned at the normal end of the line (right-aligned for left-to-right locales, left-aligned for right-to-left locales).

默认值为 "start" .

范例

General text alignment

This example demonstrates the three "physical" values of the textAlign 特性: "left" , "center" ,和 "right" .

HTML

<canvas id="canvas"></canvas>
					

JavaScript

const canvas = document.getElementById('canvas');
canvas.width = 350;
const ctx = canvas.getContext('2d');
const x = canvas.width / 2;
ctx.beginPath();
ctx.moveTo(x, 0);
ctx.lineTo(x, canvas.height);
ctx.stroke();
ctx.font = '30px serif';
ctx.textAlign = 'left';
ctx.fillText('left-aligned', x, 40);
ctx.textAlign = 'center';
ctx.fillText('center-aligned', x, 85);
ctx.textAlign = 'right';
ctx.fillText('right-aligned', x, 130);
					

结果

Direction-dependent text alignment

This example demonstrates the two direction-dependent values of the textAlign 特性: "start" and "end" 。注意, direction property is manually specified as "ltr" , although this is also the default for English-language text.

HTML

<canvas id="canvas"></canvas>
					

JavaScript

const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
ctx.font = '30px serif';
ctx.direction = 'ltr';
ctx.textAlign = 'start';
ctx.fillText('Start-aligned', 0, 50);
ctx.textAlign = 'end';
ctx.fillText('End-aligned', canvas.width, 120);
					

结果

规范

规范 状态 注释
HTML 实时标准
The definition of 'CanvasRenderingContext2D.textAlign' in that specification.
实时标准

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request. 更新 GitHub 上的兼容性数据
桌面 移动
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
textAlign Chrome Yes Edge 12 Firefox 3.5 IE Yes Opera Yes Safari Yes WebView Android Yes Chrome Android Yes Firefox Android 4 Opera Android Yes Safari iOS Yes Samsung Internet Android Yes

图例

完整支持

完整支持

另请参阅

元数据

  • 最后修改: