QImage AdjustContrast(QImage Img, int iContrastValue)
{
int pixels = Img.width() * Img.height();
unsigned int *data = (unsigned int *)Img.bits();
int red, green, blue, nRed, nGreen, nBlue;
if (iContrastValue > 0 && iContrastValue < 100)
{
float param = 1 / (1 - iContrastValue / 100.0) - 1;
for (int i = 0; i < pixels; ++i)
{
nRed = qRed(data[i]);
nGreen = qGreen(data[i]);
nBlue = qBlue(data[i]);
red = nRed + (nRed - 127) * param;
red = (red < 0x00) ? 0x00 : (red > 0xff) ? 0xff : red;
green = nGreen + (nGreen - 127) * param;
green = (gre
[开源]Qt图片调整之对比度调节
于 2017-01-22 17:05:17 首次发布