IDirectDrawGammaControl::SetGammaRamp 方法 (ddraw.h)
设置主图面的红色、绿色和蓝色伽玛渐变。
语法
HRESULT SetGammaRamp(
[in] DWORD unnamedParam1,
[in] LPDDGAMMARAMP unnamedParam2
);
参数
[in] unnamedParam1
指示是否需要伽马校准的标志。 将此参数设置为DDSGR_CALIBRATE,以请求校准器根据显示器的物理属性调整伽玛渐变,从而使结果在所有计算机上都相同。 如果不需要校准,请将此参数设置为 0。
[in] unnamedParam2
指向包含新的红色、绿色和蓝色伽玛渐变项的 DDGAMMARAMP 结构的指针。 每个数组将帧缓冲区中的颜色值映射到要传递给 DAC) (数模转换器的颜色值。
返回值
如果该方法成功,则返回值DD_OK。
如果失败,该方法可能会返回以下错误值之一:
- DDERR_EXCEPTION
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_OUTOFMEMORY
注解
并非所有系统都支持伽玛校准。 若要确定是否支持伽马校准,请在方法返回后调用 IDirectDraw7::GetCaps 并检查关联的 DDCAPS 结构的 dwCaps2 成员。 如果存在DDCAPS2_CANCALIBRATEGAMMA功能标志,则支持伽玛校准。
校准伽玛渐变会产生一些处理开销,不应经常使用。
在不支持伽玛校准的计算机上运行时,在 dwFlags 参数中包含 DDSGR_CALIBRATE 标志不会导致此方法失败。 该方法成功,无需校准即可设置新的伽玛渐变值。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | ddraw.h |
Library | Ddraw.lib |
DLL | Ddraw.dll |