CD2DTextLayout 类

IDWriteTextLayout 的包装器。

语法

class CD2DTextLayout : public CD2DResource;

成员

公共构造函数

名称 描述
CD2DTextLayout::CD2DTextLayout 构造 CD2DTextLayout 对象。
CD2DTextLayout::~CD2DTextLayout 析构函数。 在销毁 D2D 文本布局对象时调用。

公共方法

名称 描述
CD2DTextLayout::Create 创建 CD2DTextLayout。 (替代 CD2DResource::Create。)
CD2DTextLayout::Destroy 销毁 CD2DTextLayout 对象。 (重写 CD2DResource::Destroy
CD2DTextLayout::Get 返回 IDWriteTextLayout 接口
CD2DTextLayout::GetFontFamilyName 在指定的位置复制文本的字体系列名。
CD2DTextLayout::GetLocaleName 在指定的位置获取文本的区域设置名称。
CD2DTextLayout::IsValid 检查资源的有效性(重写 CD2DResource::IsValid)。
CD2DTextLayout::ReCreate 重新创建 CD2DTextLayout。 (替代 CD2DResource::ReCreate。)
CD2DTextLayout::SetFontFamilyName 为指定文本范围内的文本设置以 null 结尾的字体系列名
CD2DTextLayout::SetLocaleName 为指定文本范围内的文本设置区域设置名称

公共运算符

“属性” 描述
CD2DTextLayout::operator IDWriteTextLayout* 返回 IDWriteTextLayout 接口

受保护的数据成员

名称 描述
CD2DTextLayout::m_pTextLayout 指向 IDWriteTextLayout 的指针。

继承层次结构

CObject

CD2DResource

CD2DTextLayout

要求

标头:afxrendertarget.h

CD2DTextLayout::~CD2DTextLayout

析构函数。 在销毁 D2D 文本布局对象时调用。

virtual ~CD2DTextLayout();

CD2DTextLayout::CD2DTextLayout

构造 CD2DTextLayout 对象。

CD2DTextLayout(
    CRenderTarget* pParentTarget,
    const CString& strText,
    CD2DTextFormat& textFormat,
    const CD2DSizeF& sizeMax,
    BOOL bAutoDestroy = TRUE);

参数

pParentTarget
指向渲染目标的指针。

strText
一个 CString 对象,包含用于创建新 CD2DTextLayout 对象的字符串(从该字符串创建)。

textFormat
一个 CString 对象,包含要向字符串应用的格式。

sizeMax
布局框的大小。

bAutoDestroy
指示对象将由所有者 (pParentTarget) 销毁。

CD2DTextLayout::Create

创建 CD2DTextLayout。

virtual HRESULT Create(CRenderTarget* */);

返回值

如果该方法成功,则它会返回 S_OK。 否则,它将返回 HRESULT 错误代码。

CD2DTextLayout::Destroy

销毁 CD2DTextLayout 对象。

virtual void Destroy();

CD2DTextLayout::Get

返回 IDWriteTextLayout 接口

IDWriteTextLayout* Get();

返回值

指向 IDWriteTextLayout 接口的指针,如果对象尚未初始化,则为 NULL。

CD2DTextLayout::GetFontFamilyName

在指定的位置复制文本的字体系列名。

CString GetFontFamilyName(
    UINT32 currentPosition,
    DWRITE_TEXT_RANGE* textRange = NULL) const;

参数

currentPosition
要检查的文本的位置。

textRange
与 currentPosition 指定的位置处的文本格式相同的文本的范围。 这意味着运行具有与指定位置一样的格式,包括但不限于字体系列名称。

返回值

包含当前字体系列名称的 CString 对象。

CD2DTextLayout::GetLocaleName

在指定的位置获取文本的区域设置名称。

CString GetLocaleName(
    UINT32 currentPosition,
    DWRITE_TEXT_RANGE* textRange = NULL) const;

参数

currentPosition
要检查的文本的位置。

textRange
与 currentPosition 指定的位置处的文本格式相同的文本的范围。 这意味着运行具有与指定位置一样的格式,包括但不限于区域设置名称。

返回值

包含当前区域设置名称的 CString 对象。

CD2DTextLayout::IsValid

检查资源有效性

virtual BOOL IsValid() const;

返回值

如果资源有效,则为 TRUE;否则为 FALSE。

CD2DTextLayout::m_pTextLayout

指向 IDWriteTextLayout 的指针。

IDWriteTextLayout* m_pTextLayout;

CD2DTextLayout::operator IDWriteTextLayout*

返回 IDWriteTextLayout 接口

operator IDWriteTextLayout*();

返回值

指向 IDWriteTextLayout 接口的指针,如果对象尚未初始化,则为 NULL。

CD2DTextLayout::ReCreate

重新创建 CD2DTextLayout。

virtual HRESULT ReCreate(CRenderTarget* */);

返回值

如果该方法成功,则它会返回 S_OK。 否则,它将返回 HRESULT 错误代码。

CD2DTextLayout::SetFontFamilyName

为指定文本范围内的文本设置以 null 结尾的字体系列名

BOOL SetFontFamilyName(
    LPCWSTR pwzFontFamilyName,
    DWRITE_TEXT_RANGE textRange);

参数

pwzFontFamilyName
应用于 textRange 指定的范围内的整个文本字符串的字体系列名称

textRange
此更改应用到的文本范围

返回值

如果该方法成功,它会返回 TRUE。 否则,返回 FALSE

CD2DTextLayout::SetLocaleName

为指定文本范围内的文本设置区域设置名称

BOOL SetLocaleName(
    LPCWSTR pwzLocaleName,
    DWRITE_TEXT_RANGE textRange);

参数

pwzLocaleName
以 null 结尾的区域设置名称字符串

textRange
此更改应用到的文本范围

返回值

如果该方法成功,它会返回 TRUE。 否则,返回 FALSE

另请参阅