これは、wiki ARGB および RGBAからのカラー チャネルのビット数の順序です。
しかし、別のサイトとは異なる注文があります
どちらが正しいですか??
RBGの順番は???
ウィキペディアの写真:
リトルエンディアンアーキテクチャでの 32 ビットARGB
整数のバイトのレイアウトを示します。
あなたの質問の画像は、同じ整数のビッグエンディアンレイアウトに対応しています。ARGB
したがって、答えは次のとおりです。どちらの図も正しいです。メモリ内のビットアドレス指定に関して異なるアーキテクチャを説明しているだけです。
エンディアンに関係なく、ARGB
はA
32 ビット値の最上位バイトでありR
、2 番目に重要であり、B
最下位バイトとして見つけることができます。
したがって、「エンディアン」プラットフォームのタイプに関係なく、対応するビットシフト操作でそれらを正しく抽出できます。
編集
実際、あなたの質問の画像は、、、、、バイトを逆の順序で表示するため(正しくアドレス指定しても)、私には奇妙にA
思えますR
。ウィキペディアの図に固執することをお勧めします。G
B
あなたのコメントへの回答: Javaはと比較して色のTYPE_INT_BGR
エンコードを逆にしました。 java.awt.image.BufferedImage.javaを参照してください。rgb
TYPE_INT_RGB
case TYPE_INT_BGR:
{
colorModel = new DirectColorModel(24,
0x000000ff, // Red
0x0000ff00, // Green
0x00ff0000 // Blue
);
RGB
どちらを使用するかはニーズによって異なりますが、 と で問題ないと思いますARGB
。
それが役立つことを願っています