我需要使用MFC和/或Windows API直接在屏幕上(不在富文本控件中)绘制任意字符串。字符串中的字符可以在字体或颜色上有所不同,可以是粗体,斜体,下划线或两者的任意组合。此外,用户可以选择将文本包装在他们选择的范围内,并可选择通过调整字体大小来强制文本。
我正在考虑采取以下措施:
有更好的方法吗?如果没有,在实施时我是否应该注意任何问题或技巧?
(我知道DrawText的DT_CALCRECT | DT_WORDBREAK标志,但我不认为这对我有用,因为a)它假设整个字符串的字体/格式一致b)我看到一些留言板帖子声明它没有正确计算斜体字符的宽度。真?)
答案 0 :(得分:0)
XAML是你的朋友。没有.NET
本身不支持,但有第三方库(例如Xtreme Toolkit Pro)。以下是XAML标记功能的演示:
http://www.codejock.com/download/win32/markupsample.zip
多年来一直在使用它。不能抱怨。