0

我有一个项目,在这些项目中我从某个图层绘制了一些形状。例如,我在圆形图层中有两个圆圈,在矩形图层中有三个矩形,依此类推。我通过调用 Layer.Draw 绘制结果,并使用 Graphics 对象对图层结果进行标记。我可以在图片框中选择一个形状并在图层上指定它。我可以用重绘它的图层来拖动它,然后用图形重新标记它。它有效!但是太慢了!!

我该如何优化呢?

4

2 回答 2

1

在旧解决方案中,我将形状绘制到 layer.image 中,并在 Paint 事件中将它们与 e.Graphic 结合起来。我通过将图形对象传递到图层并用它绘制形状来解决这个问题。我的程序工作得很好!

于 2009-11-07T14:51:17.800 回答
0

曾几何时,我有一个项目需要绘制图像时的速度。我使用解锁方法直接访问位(http://msdn.microsoft.com/en-us/library/system.drawing.bitmap.unlockbits.aspx)。但是这种方法非常不安全而且也很复杂,所以你应该尽可能避免这种情况。

只需尝试优化您的程序并删除不必要的平局即可。对 GUI 的主要绘制非常慢,因此尽量不要永久更新图片框,而仅在必要时更新。

于 2009-10-18T08:49:56.520 回答