1

使用 TextRenderer.DrawText() 时,设置 TextFormatFlags.Internal 标志的实际作用是什么?

等效地,将 DT_INTERNAL 标志设置为 Win32 的 DrawTextEx() 函数有什么作用?

更重要的是,我应该什么时候设置那个标志,什么时候不应该设置它?

文档说:“使用系统字体来计算文本度量”,但我不完全确定这意味着什么。我做了一些有限的测试,设置标志似乎改变了使用小字体时字体的呈现方式,但在使用大字体时似乎没有什么不同。

4

1 回答 1

1

这意味着无论您实际使用什么字体,它都会像使用系统字体一样进行计算。例如,假设您的系统字体为 12 磅。如果您使用 30 磅字体和 DT_INTERNAL 标志,则每行将仅适用于(12 磅)系统字体,而不是您的 30 磅字体,因此每行文本将与前一行重叠。

“内部”基本上意味着“仅供 Windows 内部使用”——我有理由确定我从未在任何实际代码中使用过这个标志。

于 2010-04-26T16:43:32.113 回答