idWriteTextFormat 接口 (dwrite.h)

IDWriteTextFormat 接口描述用于设置文本格式的字体和段落属性,并描述区域设置信息。

继承

IDWriteTextFormat 接口继承自 IUnknown 接口。 IDWriteTextFormat 还具有以下类型的成员:

方法

IDWriteTextFormat 接口包含以下方法。

 
IDWriteTextFormat::GetFlowDirection

获取文本行的流动方向。
IDWriteTextFormat::GetFontCollection

获取当前字体集合。
IDWriteTextFormat::GetFontFamilyName

获取字体系列名称的副本。
IDWriteTextFormat::GetFontFamilyNameLength

获取字体系列名称的长度。
IDWriteTextFormat::GetFontSize

获取 DIP 单位的字号。
IDWriteTextFormat::GetFontStretch

获取文本的字体延伸。
IDWriteTextFormat::GetFontStyle

获取文本的字体样式。
IDWriteTextFormat::GetFontWeight

获取文本的字体粗细。
IDWriteTextFormat::GetIncrementalTabStop

获取增量制表位位置。
IDWriteTextFormat::GetLineSpacing

获取多行文本段落的行距调整集。 (IDWriteTextFormat.GetLineSpacing)
IDWriteTextFormat::GetLocaleName

获取区域设置名称的副本。
IDWriteTextFormat::GetLocaleNameLength

获取区域设置名称的长度。
IDWriteTextFormat::GetParagraphAlignment

获取相对于布局框的上边缘和下边缘的段落的对齐选项。
IDWriteTextFormat::GetReadingDirection

获取段落中文本的当前阅读方向。
IDWriteTextFormat::GetTextAlignment

获取相对于布局框的前导和尾边的文本的对齐选项。
IDWriteTextFormat::GetTrimming

获取溢出布局框的文本的剪裁选项。
IDWriteTextFormat::GetWordWrapping

获取自动换行选项。
IDWriteTextFormat::SetFlowDirection

设置段落流方向。
IDWriteTextFormat::SetIncrementalTabStop

设置两个相邻制表位之间的固定距离。
IDWriteTextFormat::SetLineSpacing

设置行距。
IDWriteTextFormat::SetParagraphAlignment

设置段落相对于布局框的上边缘和下边缘的对齐选项。
IDWriteTextFormat::SetReadingDirection

设置段落阅读方向。
IDWriteTextFormat::SetTextAlignment

设置段落中文本相对于 IDWriteTextFormat 接口布局框的前导和尾边缘的对齐方式。
IDWriteTextFormat::SetTrimming

为溢出布局宽度的文本设置剪裁选项。
IDWriteTextFormat::SetWordWrapping

设置自动换行选项。

备注

若要获取对 IDWriteTextFormat 接口的引用,应用程序必须调用 IDWriteFactory::CreateTextFormat 方法,如以下代码所示。


if (SUCCEEDED(hr))
{
    hr = pDWriteFactory_->CreateTextFormat(
        L"Gabriola",
        NULL,
        DWRITE_FONT_WEIGHT_REGULAR,
        DWRITE_FONT_STYLE_NORMAL,
        DWRITE_FONT_STRETCH_NORMAL,
        72.0f,
        L"en-us",
        &pTextFormat_
        );
}


使用 CreateTextFormat 函数创建 IDWriteTextFormat 对象时,应用程序指定文本格式的字体系列、字体集合、字体粗细、字号和区域设置名称。

创建 IDWriteTextFormat 对象后,无法更改这些属性。 若要更改这些属性,必须使用所需属性创建新的 IDWriteTextFormat 对象。

IDWriteTextFormat 接口用于以单一格式绘制文本

若要使用多种格式绘制文本或使用自定义文本呈现器,请使用 IDWriteTextLayout 接口。 IDWriteTextLayout 使应用程序能够更改字符串中文本范围的格式。 IDWriteFactory::CreateTextLayout 采用 IDWriteTextFormat 对象作为参数,最初将格式信息应用于整个字符串。

此对象可能不是线程安全的,并且可能携带文本格式更改的状态。

DirectWrite和 Direct2D

为了使用单一格式绘制简单文本, Direct2D 提供 ID2D1RenderTarget::D rawText 方法,该方法使用 IDWriteTextFormat 对象提供的格式信息绘制字符串。

要求

   
最低受支持的客户端 Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [桌面应用 |UWP 应用]
目标平台 Windows
标头 dwrite.h