2009-08-13 70 views
0

我有一个Bitmap对象,我需要有时会水平翻转,有时会垂直翻转,有时两者都翻转。完整的框架有Image.RotateFlip()方法,这正是我所需要的。不幸的是,像完整框架上的大多数有用功能一样,这种方法在紧凑框架中不存在。有没有简单的方法来做到这一点?我能找到的最好的是this,但它使用不安全的代码,我想避免它,它只能做旋转而不是翻转。.NET Compact Framework中的翻转位图

编辑:好吧,我找到了一种方法来做一些优化,我只需要做垂直翻转。

+0

贾森,相同的链接使用“安全”的方法来旋转。它说,花了将近3分钟才能在800x600像素的图像上完成90度旋转,这对我来说似乎太长了。我会试着在你的设备上看看它是如何执行的,也许会寻找一个瓶颈。根据我的经验,get和set像素方法非常快。而且,从旋转到翻转的逻辑只是一小步... – 2009-08-13 14:27:34

+1

为什么要避免不安全的代码?它速度快,效果好,而且在语言上完全合法。 – ctacke 2009-08-13 14:46:10

回答

1

我最近读了一篇关于这方面的文章。我还没有尝试过,因为我需要90/180/270以外的其他旋转,但它声称是一种快速旋转的方式。

http://www.codeproject.com/KB/graphics/ImageRotationForCF.aspx

[编辑] 该死的,我没有正确读取,你已经发现这个..对不起。