同样是写字的函数,DrawText和TextOut有什么区别,分别适合用在什么场合?
请详细谈谈。

解决方案 »

  1.   

    DrawText和textout的参数不同的textout是在一个起始点开始写文本而DrawText是在某个区域里面写文本
      

  2.   

    精确定位用TextOut;格式对齐(居中,左对齐,右对齐等)用DrawText
      

  3.   

    象这些问题,楼主最好看msdn先。。都有答案
      

  4.   

    "象这些问题,楼主最好看msdn先。。都有答案"我告诉你,象这些问题你没看懂的话,最好就不要进来回答了,免得我删贴===============================
    ps楼主:自习看看msdn关于两个函数的参数就明白有什么不同了不用给我发短消息泄愤。。帖子你是删不了的。。
      

  5.   

    TextOut is a GDI function. It will call ExtTextOut internally. It's the'most' basic and general purpose text output function under Win32.DrawText is a USER function. It's designed for simple text display in user interface. So it's not a general purpose text function. For example, if you use it for printing, you may run into different text layout for printers with different resolutions, if you're drawing multi-line text.
      

  6.   

    多谢FengYuanMSFT(袁峰 www.fengyuan.com)
      

  7.   

    因为不懂才来问,大家讨论技术,莫要伤了和气.
    版主大人大量,楼主这种打破沙锅问到底的精神可佳.
    TextOut以x.y为起点输出一行.
    DrawText在指定区域绘出文本,可以是多行.
      

  8.   


    DrawText 还可以得到所要绘制文本所需的区域大小!
      

  9.   

    觉得他们的关系像 TextBox 和 RichTextBox ,为什么有了 RichTextBox 还要 TextBox ?DrawText 可以实现更多图形效果。
      

  10.   

    大家都淡定点吧
    我来说一个这两个函数应用场合上的区别吧
    DrawText其实在内部也调用TextOut的,不过它作了很多内部处理,功能更大一些,比如:TextOut就不支持换行符,而DrawText就支持换行符。所以如果想多行输出,用DrawText肯定要比TextOut要好得多。
      

  11.   

    我记得我早上回复了,怎么没有看到啊
    DrawText在内部其实也是调用TextOut的,不过,它作了很多处理,比如,DrawText就不用知道输出多少个字符。更重要的是,DrawText可以处理换行符而TextOut不行,从这个角度看,DrawText应该是一种更高级的用法,是在TextOut基础上的封装。