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

另请参阅

IDirectDrawGammaControl