Kokumi

导航

c# 图像处理方法

图像旋转

    using (Bitmap bitmap = new Bitmap((int)this.img.ActualWidth, (int)this.img.ActualHeight))
            {
                Graphics g = Graphics.FromImage(bitmap);

                for (int i = 0; i < 17; i++)
                {
                    switch (i)
                    {
                        case 0:
                            bitmap.RotateFlip(RotateFlipType.RotateNoneFlipX);
                            break;
                        case 1:
                            bitmap.RotateFlip(RotateFlipType.Rotate180FlipNone);
                            break;
                        case 2:
                            bitmap.RotateFlip(RotateFlipType.Rotate180FlipX);
                            break;
                        case 3:
                            bitmap.RotateFlip(RotateFlipType.Rotate180FlipXY);
                            break;
                        case 4:
                            bitmap.RotateFlip(RotateFlipType.Rotate180FlipY);
                            break;
                        case 5:
                            bitmap.RotateFlip(RotateFlipType.Rotate270FlipNone);
                            break;
                        case 6:
                            bitmap.RotateFlip(RotateFlipType.Rotate270FlipX);
                            break;
                        case 7:
                            bitmap.RotateFlip(RotateFlipType.Rotate270FlipXY);
                            break;
                        case 8:
                            bitmap.RotateFlip(RotateFlipType.Rotate270FlipY);
                            break;
                        case 9:
                            bitmap.RotateFlip(RotateFlipType.Rotate90FlipNone);
                            break;
                        case 10:
                            bitmap.RotateFlip(RotateFlipType.Rotate90FlipX);
                            break;
                        case 11:
                            bitmap.RotateFlip(RotateFlipType.Rotate90FlipXY);
                            break;
                        case 12:
                            bitmap.RotateFlip(RotateFlipType.Rotate90FlipY);
                            break;
                        case 13:
                            bitmap.RotateFlip(RotateFlipType.RotateNoneFlipNone);
                            break;
                        case 14:
                            bitmap.RotateFlip(RotateFlipType.RotateNoneFlipX);
                            break;
                        case 15:
                            bitmap.RotateFlip(RotateFlipType.RotateNoneFlipXY);
                            break;
                        case 16:
                            bitmap.RotateFlip(RotateFlipType.RotateNoneFlipY);
                            break;
                    }
                    g.Clear(System.Drawing.Color.White);
                    g.DrawImage(bitmap, 0, 0);
                    System.Threading.Thread.Sleep(1000);
                }


            }
                

图像反色

 try
            {
                int Height = this.pictureBox1.Image.Height;
                int Width = this.pictureBox1.Image.Width;
                Bitmap newBitmap = new Bitmap(Width, Height);
                Bitmap oldBitmap = (Bitmap)this.pictureBox1.Image;
                Color pixel;
                for (int x = 0; x < Width; x++)
                    for (int y = 0; y < Height; y++)
                    {
                        pixel = oldBitmap.GetPixel(x, y);
                        int r, g, b, Result = 0;
                        r =255- pixel.R;
                        g = 255-pixel.G;
                        b =255- pixel.B;
                      
                        newBitmap.SetPixel(x, y, Color.FromArgb(r, g, b));
                    }
                this.pictureBox1.Image = newBitmap;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "信息提示");
            }

posted on 2021-10-12 15:00  Kokumi  阅读(71)  评论(0)    收藏  举报