https://blog.51cto.com/u_16099263/6670634
- ARGB8888
ARGB8888各通道的排列顺序验证:https://blog.csdn.net/afei__/article/details/81415286
import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.util.Log;
import android.widget.ImageView;
import java.nio.Buffer;
import java.nio.ByteBuffer;
public class MainActivity extends Activity {
private static final String TAG = "MainActivity";
private ImageView displayIv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Bitmap bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
bitmap.eraseColor(0xff336699); // AARRGGBB
byte[] bytes = new byte[bitmap.getWidth() * bitmap.getHeight() * 4];
Buffer dst = ByteBuffer.wrap(bytes);
bitmap.copyPixelsToBuffer(dst);
// ARGB_8888 真实的存储顺序是 R-G-B-A
Log.d(TAG, "R: " + Integer.toHexString(bytes[0] & 0xff));
Log.d(TAG, "G: " + Integer.toHexString(bytes[1] & 0xff));
Log.d(TAG, "B: " + Integer.toHexString(bytes[2] & 0xff));
Log.d(TAG, "A: " + Integer.toHexString(bytes[3] & 0xff));
displayIv = (ImageView) findViewById(R.id.display_iv);
displayIv.setImageBitmap(bitmap);
}
}
ARGB8888各通道的排列顺序为RGBA
0 条评论