## 文本
canvas 提供了兩種方法來渲染文本:
```
fillText(text, x, y [, maxWidth])
```
在指定的(x,y)位置填充指定的文本,繪制的最大寬度是可選的:
```
strokeText(text, x, y [, maxWidth])
```
在指定的(x,y)位置繪制文本邊框,繪制的最大寬度是可選的。
當然,我們也可以改變文本的樣式:
| 屬性 | 描述 | 范例 |
| :---: | :---: | :---: |
| font | 當前我們用來繪制文本的樣式. 這個字符串使用和 CSS font 屬性相同的語法. 默認的字體是 10px sans-serif。 | ctx.font="30px Arial"; |
| textAlign | 文本對齊選項. 可選的值包括:start, end, left, right, center. 默認值是 start。 | ctx.textAlign = 'end' |
| textBaseline | 基線對齊選項. 可選的值包括:top, hanging, middle, alphabetic, ideographic, bottom。默認值是 alphabetic。 | ctx.textBaseline = 'top' |
| direction | 文本方向。可能的值包括:ltr, rtl, inherit。默認值是 inherit。 | ctx.direction = 'ltr' |
font屬性的語法:
```
font = 'style variant weight size/line-height family'
```
- style(font-style):字體樣式,可選值:normal, italic, oblique
- variant(font-variant):字體變體,可選值:normal, small-caps
- weight(font-weight):字體粗細,可選值:normal, bold, bolder, lighter, 100 - 900
- size/line-height:字號和行高
- family(font-family):字體
**文本測量**
canvas提供了一個方法:
```
measureText()
```
`measureText()`方法返回的對象中,包含一個名為`width`的屬性,它的值代表你傳遞給該方法的文本所占據的寬度。