我用 Java 开发了一个以 Matrix 为主题的应用程序,并正在尝试移植到 C#。但是,我发现后者的DrawString方法在绘制大量单个字符时的性能要差得多。因此,我希望存在以下两种可能性之一:
有一种绘制大量单个字符的替代方法,速度要快得多。
有一种方法可以绘制固定间距的字符串来达到相同的效果。这似乎不太可能。
有谁知道完成1或2的任何方法?
附加信息:
我需要能够每秒绘制大约20000 个字符 30 次。
字符可以具有相同的字体和大小,但颜色应该能够改变。
字符集是有限的(字母、数字和标点符号)。
字符的位置沿着 2D 网格,并且不重叠。
我不知道有什么极快的替代方法,但是使用 GDI( TextRenderer ) 而不是 GDI+(DrawString) 会得到更好的结果。最多快 5-6 倍。
另一篇有用的文章 -使用 GDI+ 快速渲染 - 做什么和不做什么!