IDWriteFontFace1::GetUnicodeRanges 方法 (dwrite_1.h)
检索字体支持的字符范围的列表。
语法
HRESULT GetUnicodeRanges(
UINT32 maxRangeCount,
[out, optional] DWRITE_UNICODE_RANGE *unicodeRanges,
[out] UINT32 *actualRangeCount
);
参数
maxRangeCount
类型: UINT32
从客户端传入的最大字符范围数。
[out, optional] unicodeRanges
类型: DWRITE_UNICODE_RANGE*
用字符范围填充 的DWRITE_UNICODE_RANGE 结构的数组。
[out] actualRangeCount
类型: UINT32*
指向实际字符范围数的指针,无论最大计数如何。
返回值
类型: HRESULT
此方法可以返回其中一个值。
返回值 | 说明 |
---|---|
|
方法已成功执行。 |
|
缓冲区太小。 actualRangeCount 大于 maxRangeCount。 |
注解
字体支持的字符范围列表对于字符选取、字形显示和高效字体选择查找等方案非常有用。 这类似于 GDI 的 GetFontUnicodeRanges,只不过它返回完整的 Unicode 范围,而不仅仅是 16 位 UCS-2。
这些范围来自 cmap,而不是 OS/2::ulCodePageRange1。
如果此方法不可用,则可以使用 IDWriteFontFace::GetGlyphIndices 方法检查缺少字形。 方法返回字体中不存在的字形的 0 索引。
在需要连续检查一个字符或一系列单个字符(如字体回退)的情况下,IDWriteFont::HasCharacter 方法通常更简单。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 适用于 Windows 7 的Windows 8和平台更新 [桌面应用 |UWP 应用] |
最低受支持的服务器 | 适用于 Windows Server 2008 R2 的Windows Server 2012和平台更新 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | dwrite_1.h |
Library | Dwrite_1.lib |
DLL | Dwrite_1.dll |