顏色工具模組

取得顏色分色強度值
RGB顏色值轉換HLS顏色值
HLS顏色值轉換RGB顏色值

取得顏色分色強度值

在 Windows API 中有定義這幾個巨集:

函數 引數 說明
GetRValue RGBColor 傳入 RGB 顏色的長整數,傳回紅色長整數
GetGValue RGBColor 傳入 RGB 顏色的長整數,傳回綠色長整數
GetBValue RGBColor 傳入 RGB 顏色的長整數,傳回藍色長整數

不過巨集可不是 API 喔!所以 Windows API 內可沒有這個函數,因為這個定義在 C 語言中

HLS顏色值轉換RGB顏色值

函數:ColorHLSToRGB,傳入 RGB 顏色的長整數

引數 型態 說明
pwHue Long 色調值
pwLuminance Long 亮度值
pwSaturation Long 飽和值

範例:

tColor = ColorHLSToRGB(pwHue, pwLuminance, pwSaturation) ' 傳入 RGB 顏色的長整數

RGB顏色值轉換HLS顏色值

函數:ColorRGBToHLS

引數 型態 說明
clrRGB RGBColor 傳入 RGB 顏色的長整數
pwHue Long 傳回色調值
pwLuminance Long 傳回亮度值
pwSaturation Long 傳回飽和值

範例:

Dim pwHue As Long, pwLuminance As Long, pwSaturation As Long
ColorRGBToHLS QBColor(11), pwHue, pwLuminance, pwSaturation
Debug.Print pwHue, pwLuminance, pwSaturation