C# 图片 旋转和翻转 RotateFlip

时间:2022-10-23 21:14:54


1、Rotate90FlipX
2、Rotate90FliY
3、Rotate90FlipXY
4、Rotate90FlipNone
以上面四个为例:
1是指定后接水平翻转的90度顺时针旋转,
2是指定后接垂直翻转的90度顺时针旋转,
3是指定后接水平翻转和垂直翻转的90度顺时针旋转,
4是指定不进行翻转的90度顺时针旋转。这是VS的解释。
第一次理解错误了,正确的是(以1为例)先进行90度顺时针旋转,再以Y轴为中心线水平翻转。同样的(以3为例)先进行90度顺时针旋转,再以Y轴为中心线水平翻转,接着以X轴为中心线垂直翻转。




  
enum RotateFlipType  
{  
    RotateNoneFlipNone = 0,   //指定不进行旋转和翻转  
    Rotate90FlipNone   = 1,   //指定不进行翻转的 90 度旋转  
    Rotate180FlipNone  = 2,   //指定不进行翻转的 180 度旋转  
    Rotate270FlipNone  = 3,   //指定不进行翻转的 270 度旋转  
  
    RotateNoneFlipX    = 4,   //指定水平翻转不旋转  
    Rotate90FlipX      = 5,   //指定90 度旋转后接水平翻转  
    Rotate180FlipX     = 6,   //指定180 度旋转后接水平翻转  
    Rotate270FlipX     = 7,   //指定270 度旋转后接水平翻转  
  
    RotateNoneFlipY    = Rotate180FlipX,     
    Rotate90FlipY      = Rotate270FlipX,  
    Rotate180FlipY     = RotateNoneFlipX,  
    Rotate270FlipY     = Rotate90FlipX,  
  
    RotateNoneFlipXY   = Rotate180FlipNone,  
    Rotate90FlipXY     = Rotate270FlipNone,  
    Rotate180FlipXY    = RotateNoneFlipNone,  
    Rotate270FlipXY    = Rotate90FlipNone  
};  




Rotate(旋转)或Flip(翻转)图片,旋转为顺时针,先旋转,再翻转