当前位置: 移动技术网 > IT编程>开发语言>c# > C#图像对比度调整的方法

C#图像对比度调整的方法

2019年07月18日  | 移动技术网IT编程  | 我要评论

本文实例讲述了c#图像对比度调整的方法。分享给大家供大家参考。具体如下:

//定义对比度调整函数
private static bitmap contrastp(bitmap a, double v)
{
 system.drawing.imaging.bitmapdata bmpdata = a.lockbits(new rectangle(0, 0, a.width, a.height), system.drawing.imaging.imagelockmode.readwrite, system.drawing.imaging.pixelformat.format24bpprgb);
 int bytes = a.width * a.height * 3;
 intptr ptr = bmpdata.scan0;
 int stride = bmpdata.stride;
 unsafe
 {
  byte* p = (byte*)ptr;
  int temp;
  for (int j = 0; j < a.height; j++)
  {
   for (int i = 0; i < a.width * 3; i++)
   {
   temp = (int)((p[0] - 127) * v + 127);
   temp = (temp > 255) ? 255 : temp < 0 ? 0 : temp;
   p[0] = (byte)temp;
   p++;
   }
   p += stride - a.width * 3;
  }
 }
 a.unlockbits(bmpdata);
 return a;
}

希望本文所述对大家的c#程序设计有所帮助。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网