c#如何不使用Rotate实现控件内图片旋转?

在c#窗体中,常用的旋转图片方法是RotateFilp,但我更倾向于寻找一种函数或者其他方法,不使用c#的内置方法完成对图片的旋转。我设计的窗体具有一个picturebox和两个button,其button的效果用于对picturebox中的bmp格式图片进行一次顺时针/逆时针90度的旋转,且不使用RotateFilp而是使用旋转图片函数完成,希望可以指导一种能完成旋转过程方式的代码,非常感谢

RotateFilp 就是旋转图片的函数呀,你的意思是你想用自己的代码实现这个函数的内容?
RotateFilp 的使用可以参考这一篇 https://blog.csdn.net/lvyiwuhen/article/details/100415469
如果你想了解这个函数的实现,可以右键,转到定义:

img

有现成的系统函数不用,非要自己写吗
那大概有这么几种思路
1.重新new一个bitmap,双重循环点对点的给每个像素点赋值
2.使用Matrix.RotateAt旋转坐标系,然后使用DrawImage函数GDI+作图

额,你找不到比系统内置更有效的,因为内置本身用的就是矩阵转置

当然目前有文章说俺们的人工智能AI已经找到一个比传统矩阵运算更有效的矩阵算法,但是我没看到具体算法过程

也许你可以用opengl把运算过程交给gpu算,这个比cpu算更快一点