--- title: TextMetrics slug: Web/API/TextMetrics translation_of: Web/API/TextMetrics --- <div>{{APIRef("Canvas API")}}</div> <p><code><font face="Open Sans, Arial, sans-serif"><span style="font-weight: normal;">在 canvas 中,</span></font>TextMetrics</code> 接口表示文本的尺寸,通过 {{domxref("CanvasRenderingContext2D.measureText()")}} 方法创建。</p> <h2 id="属性">属性</h2> <dl> <dt>{{domxref("TextMetrics.width")}} {{readonlyInline}}</dt> <dd><strong>double </strong>类型,使用 CSS 像素计算的内联字符串的宽度。基于当前上下文字体考虑。</dd> <dt>{{domxref("TextMetrics.actualBoundingBoxLeft")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,平行于基线,从{{domxref("CanvasRenderingContext2D.textAlign")}} 属性确定的对齐点到文本矩形边界左侧的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.actualBoundingBoxRight")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,平行于基线,从{{domxref("CanvasRenderingContext2D.textAlign")}} 属性确定的对齐点到文本矩形边界右侧的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.fontBoundingBoxAscent")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到渲染文本的所有字体的矩形最高边界顶部的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.fontBoundingBoxDescent")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到渲染文本的所有字体的矩形边界最底部的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.actualBoundingBoxAscent")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到渲染文本的矩形边界顶部的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.actualBoundingBoxDescent")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到渲染文本的矩形边界底部的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.emHeightAscent")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到线框中 <em>em</em> 方块顶部的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.emHeightDescent")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到线框中 <em>em</em> 方块底部的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.hangingBaseline")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到线框的 hanging 基线的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.alphabeticBaseline")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到线框的 alphabetic 基线的距离,使用 CSS 像素计算。</dd> <dt>{{domxref("TextMetrics.ideographicBaseline")}} {{readonlyInline}}</dt> <dd><strong>double</strong> 类型,从{{domxref("CanvasRenderingContext2D.textBaseline")}} 属性标明的水平线到线框的 ideographic 基线的距离,使用 CSS 像素计算。</dd> </dl> <h2 id="Specifications" name="Specifications">规范描述</h2> <table class="standard-table"> <thead> <tr> <th scope="col">Specification</th> <th scope="col">Status</th> <th scope="col">Comment</th> </tr> </thead> <tbody> <tr> <td>{{SpecName('HTML WHATWG', "the-canvas-element.html#textmetrics", "TextMetrics")}}</td> <td>{{Spec2('HTML WHATWG')}}</td> <td>Initial definition</td> </tr> </tbody> </table> <h2 id="浏览器兼容性">浏览器兼容性</h2> <p>{{Compat("api.TextMetrics")}}</p> <h2 id="参见">参见</h2> <ul> <li>创建方法在 {{domxref("CanvasRenderingContext2D")}} 中。</li> <li>The {{HTMLElement("canvas")}} element and its associated interface, {{domxref("HTMLCanvasElement")}}</li> </ul>