共用方式為


HT_ComputeRGBGammaTable函式 (winddi.h)

HT_ComputeRGBGammaTable函式會導致 GDI 根據 gamma 數位計算裝置紅色、綠色和藍色濃度。

語法

LONG HT_ComputeRGBGammaTable(
  [in]  USHORT GammaTableEntries,
  [in]  USHORT GammaTableType,
  [in]  USHORT RedGamma,
  [in]  USHORT GreenGamma,
  [in]  USHORT BlueGamma,
  [out] LPBYTE pGammaTable
);

參數

[in] GammaTableEntries

針對每個紅色、綠色和藍色濃度,指定資料表中的步驟總數。 此值必須大於 1 且小於或等於 256 (,也就是 2 < = GammaTableEntries< = 256) 。 例如,值為 256 表示 gamma 資料表中有 256 個紅色專案、256 個綠色專案,以及 256 個藍色專案。

[in] GammaTableType

指定 pGammaTable的組織。 有效的資料表類型包括:

GammaTableType 意義
0 gamma 資料表的紅色、綠色和藍色值會交錯在一起。 每個 gamma 步驟都是 3 個位元組;每個位元組各有 1 個位元組,分別代表紅色、綠色和藍色。
1 紅色、綠色和藍色資料表會分開封裝;也就是說,整個紅色資料表後面接著整個綠色資料表,後面接著整個藍色資料表。 個別專案各有 1 個位元組,讓每個子資料工作表長度為 GammaTableEntries 位元組總數。

[in] RedGamma

指定紅色 gamma 值。 這個 USHORT 值會解譯為實數,其四個最小有效位數位于 (隱含) 小數點右邊。 例如,gamma 值為 10000 代表實際數位 1.0000,而 12345 則代表 1.2345。 允許的最小 gamma 值為 0.0000,允許的最大值為 6.5535。

[in] GreenGamma

指定綠色 gamma 值。 這個 USHORT 值會解譯為實數,其四個最小有效位數位于 (隱含) 小數點右邊。 例如,gamma 值為 10000 代表實際數位 1.0000,而 12345 則代表 1.2345。 允許的最小 gamma 值為 0.0000,允許的最大值為 6.5535。

[in] BlueGamma

指定藍色 gamma 值。 這個 USHORT 值會解譯為實數,其四個最小有效位數位于 (隱含) 小數點右邊。 例如,gamma 值為 10000 代表實際數位 1.0000,而 12345 則代表 1.2345。 允許的最小 gamma 值為 0.0000,允許的最大值為 6.5535。

[out] pGammaTable

將寫入 gamma 資料表紅色、綠色和藍色濃度的位元組陣列指標。 傳回的資料表會依照 GammaTableType 參數所指定來組織。

傳回值

傳回值是寫入 pGammaTable的 gamma 專案數目;成功時,此值等於 GammaTableEntries。 如果 GammaTableEntries 小於 2 或大於 256,則傳回值為 0。

pGammaTable中傳回的紅色、綠色和藍色濃度從 0 到 255。

備註

GDI 半色調服務常式會使用特殊調色盤來執行半形。 如果裝置從 16 位或 24 位類型介面的 24 位裝置色彩集區中選取 8 位的圖元調色盤,GDI 會假設紅色、綠色和藍色步驟;每個都有相等的亮度。

GDI 提供這項服務,讓驅動程式可以查詢 GDI 所使用的每圖元半色調調色盤 8 位,或計算裝置的更正和相等 RGB 色彩濃度。

規格需求

   
最低支援的用戶端 可在 Windows 2000 和更新版本的 Windows 作業系統中使用。
目標平台 Universal
標頭 winddi.h (包括 Winddi.h)
程式庫 Win32k.lib
Dll Win32k.sys