在 Java 中作為整數的 RGB 表示

https://feeds.feedblitz.com/~/873637988/0/baeldung

RGB 在 Java 中的整數表示

RGB 色彩模型廣泛應用於各種應用程式和設備,因為它與電子顯示的運作方式相符。在 RGB 中,“R”代表紅色,“G”代表綠色,“B”代表藍色。以不同強度混合這三種主要顏色可以產生廣泛的色彩。

在程式語言中(包括 Java),一種常見的做法是將 RGB 顏色表示為單個整數,將三種色彩成分和(有時)alpha(透明度)成分打包到 32 位整數中。

在 32 位整數表示的 RGB 顏色中,通常每種顏色成分分配 8 位。最高的 8 位經常用於 alpha 通道(表示透明度),其後是紅色、綠色和藍色。結構如下:

位元 24-31:Alpha(A)

位元 16-23:紅色(R)

位元 8-15:綠色(G)

位元 0-7:藍色(B)

我們可以使用位元移位操作將 RGB 值轉換為整數表示。

通過移位操作可以創建表示(A)RGB 顏色的整數:

int argb = (alpha << 24) | (red << 16) | (green << 8) | blue; 我們也可以實作一個不帶 alpha 通道的版本: int rgb = (red << 16) | (green << 8) | blue; 我們可以編寫一個函數,使用 RGB 值返回整數表示的函数。首先,實現夾緊功能以限制輸入值: 接著實現一個使用夾緊功能將 RGB 值轉換為整數的函數: 最後,我們可以使用創建的函數將 RGB 值轉換: 從整数表示中提取 RGB 組件就像位元移動位數以將所需部分轉移到低位 8 位,然後屏蔽多餘的高位位元。我們可以通篩選器逐個提取 RGB 組件: 可以通過調整 RGB 組件來製作 RGB 顏色表示的各種轉換。 via Baeldung March 15, 2024 at 05:33AM

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *