DrawText VS TextOut Win32

时间:2011-11-11 05:46:53

标签: c++ winapi gdi

我发现以前使用过这两种功能,但我不太清楚它们之间的区别。好吧,我知道DrawText需要一个格式化矩形,并且可以进行一些文本格式化,并且只输出起始坐标,是否有其他差异?

3 个答案:

答案 0 :(得分:17)

DrawText

  • 它将文本字符串绘制到以逻辑坐标指定的矩形区域。
  • 它提供了格式化多行文字的便捷方法。
  • 主要用于 分词段落格式,扩展标签等。

TextOut

  • 这是一个简单的文本绘图功能,易于使用。
  • 使用当前选定的文本属性在指定位置绘制字符串。
  • 文字 要绘制的字符串不需要为零终止。

另外,请查看ExTextOutDrawTextEx

答案 1 :(得分:4)

DrawText()是User32.dll

TextOut()是Gdi32.dll

DrawText很可能在其实现中调用TextOut。

答案 2 :(得分:2)

绘制文本可用于仅提供文本的长度或大小而不实际显示它。当您必须精确一组字符串的最大显示长度时,这非常有用。此外,如果您在DrawText中提供以null结尾的字符串作为输入,则不必提供字符串的长度 - 即自动创建的。

查看thisthis