用GDI+写多行字符串

本文关键字:字符串 GDI+ | 更新日期: 2023-09-27 18:10:55

我的键盘上有一个小显示器,它是320x240,我正在创建一个插件,允许我在这个显示器上看到skype消息,即使我在玩全屏游戏。

在解决了所有与skype交互的问题后,我遇到的最大问题是我需要在这么小的区域显示聊天消息。

我使用的字体大小为10,以避免无法阅读的文本,这将允许我不超过7行,每行大约40个字符。

我需要一种在多行上写字符串的方法,我已经想象了一些方法,但我不想重新发明轮子,我相信有人找到了最好的解决方案,否则我不可能写这个问题:)

那么,如何用gdi+在大小为320x240的图像上编写多行字符串?(嗯,我们应该考虑它的大小为290x240,因为我有一个标题)。

用GDI+写多行字符串

我自己解决了问题:首先,drawstring方法已经做到了"我想要的"(使文本填充一个矩形,如果可能的话,否则继续写它增加高度而不是宽度)。

使用measurestring方法,你可以完成这项工作。

我设法使用一些自定义算法将字符串分成多行,这些算法在性能方面工作得很好。我不会进入细节,因为算法集中在我的应用程序,绝对不是通用的。