无论如何我可以在Directwrite TextLayout中设置宽度和布局宽度相同吗?

时间:2016-03-02 17:29:25

标签: c++ fonts direct2d directwrite

每当我使用文本布局对象渲染文本时,很明显文本的实际宽度与布局的宽度不同,具体取决于文本换行中的启用选项。

我想知道无论如何我都可以设置宽度和布局宽度相同吗?

所以当我在文本布局对象的创建中传递宽度和高度时,我希望它以我提供的精确尺寸渲染文本。

1 个答案:

答案 0 :(得分:0)

初始布局尺寸用于控制自动换行或修剪(如果已启用)。因此,这取决于您想要实现的目标,通常您设置所需的布局框,并且文本不必适合或完全填充到任何程度。渲染时,您可能对文本完全适合的有效矩形感兴趣,您需要为此调用GetMetrics,并使用返回的DWRITE_TEXT_METRICS结构域。无论您在布局创建中指定了什么,度量标准数据都将包含文本的实际矩形大小。