jqrritfk11
jqrritfk11
2019-08-18 09:48
采纳率: 100%
浏览 405

VC++ unicode环境下使用textout输出中英文字符

在MFC中,我使用unicode编码,中文字符、数字、英语字符都是双字节,
这样一来,输出中文字符正常,但是英语和数字字符,显示出来也会占两
个字符的宽度,感觉怪怪的!

图片说明

我是在TextOut输出时遇到这样的问题,大家有什么好办法吗? 谢谢!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • weixin_46200348
    weixin_46200348 2020-01-16 13:07
    已采纳

    使用WideCharToMultiByte对字符串进行转换,再使用textoutA 输出试试

    点赞 评论
  • JonathanYan
    JonathanYan 2019-08-18 09:52

    字体问题吧,换个字体输出试试

    点赞 评论
  • caozhy

    用DrawText代替TextOut
    https://blog.csdn.net/heibao111728/article/details/88375448

    VERIFY(new_font.CreatePointFont(250, _T("宋体"), pDc));
    这里可以设置字体,比如说你可以用Arial

    点赞 评论

相关推荐