字串寬度和高度
除了擷取個別字元的字元寬度資料之外,應用程式也需要計算整個字串的寬度和高度。 兩個函式會擷取字串寬度和高度度量: GetTextExtentPoint32和 GetTabbedTextExtent。 如果字串不包含定位字元,應用程式可以使用 GetTextExtentPoint32 函式來擷取指定字串的寬度和高度。 如果字串包含定位字元,應用程式應該呼叫 GetTabbedTextExtent 函式。
應用程式可以使用 GetTextExtentExPoint 函式進行自動換行作業。 此函式會從符合指定空格的指定字串傳回字元數。
字型遞增和遞減
有些應用程式會使用字型的最大遞增和下階,判斷不同大小的文字行之間的行距。 應用程式可以藉由呼叫GetTextMetrics函式,然後檢查TEXTMETRIC的tmAscent 和 tmDescent成員來擷取這些值。
最大上升和下降與印刷樣式和下降不同。 在 TrueType 和 OpenType 字型中,印刷樣式和下降通常是圖像的頂端和字元底部。 應用程式可以藉由呼叫GetOutlineTextMetrics函式,並檢查OUTLINETEXTMETRIC結構的otmMacAscent 和 otmMacDescent成員中的值,以擷取 TrueType 或 OpenType 字型的印刷樣式遞增和遞減。
下圖顯示 NEWTEXTMETRIC 和 OUTLINETEXTMETRIC 結構中傳回的垂直文字度量值之間的差異。 (開頭為 otm 的名稱是 OUTLINETEXTMETRIC 結構的成員。)
字型維度
應用程式可以藉由呼叫 GetOutlineTextMetrics 函式來擷取 TrueType 或 OpenType 字型的實體維度。 應用程式可以藉由呼叫 GetTextMetrics 函式來擷取任何其他字型的實體維度。 若要判斷輸出裝置的維度,應用程式可以呼叫 GetDeviceCaps 函式。 GetDeviceCaps 會傳回實體和邏輯維度。
邏輯英吋是系統用來在螢幕上呈現可讀字型的量值,且大約大於實體英吋的 30 到 40%。 使用邏輯英吋可排除螢幕輸出與印表機之間的完全相符專案。 開發人員應該注意,螢幕上的文字不只是顯示于頁面上的文字縮放版本,特別是當圖形併入文字時。