GDI32.DLL中用于在Windows上更改颜色平衡的函数的名称是什么?
例如要更改设备 Gamma ,我需要使用SetDeviceGammaRamp
[DllImport("GDI32.dll")]
private unsafe static extern bool SetDeviceGammaRamp(Int32 hdc, void* ramp);
最佳答案
您可以使用与您提到的功能完全相同的功能来调整屏幕的RGB值并更改其亮度:SetDeviceGammaRamp
看这里:
http://www.nirsoft.net/vc/change_screen_brightness.html
函数的第二个参数,您正在传递RGB值:
//Generate the 256-colors array for the specified wBrightness value.
WORD GammaArray[3][256];
for (int iIndex = 0; iIndex < 256; iIndex++)
{
int iArrayValue = iIndex * (wBrightness + 128);
if (iArrayValue > 65535)
iArrayValue = 65535;
GammaArray[0][iIndex] =
GammaArray[1][iIndex] =
GammaArray[2][iIndex] = (WORD)iArrayValue;
}
//Set the GammaArray values into the display device context.
bReturn = SetDeviceGammaRamp(hGammaDC, GammaArray);
关于c# - 以编程方式更改屏幕色彩平衡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21093650/