제가 이미지 관련 앱을 제작 할려고 하는데..

제목에서와 같이 bitmap -> byte 시에

bitmap의 width*height*3만큼의 byte가 생성이 될꺼라고 생각했는데..

실제 값이 더 적게 나와서요;; 다른 이유가 있는건가요??

그래서 제가 bitmap의 RGB값을 가져 올려고

byte[] tempByte = new byte[3*width*height];
int pix;
int count = 0;

    for(int i=0; i<w; i++){
        for(int j=0; j<h; j++){
            pix = image.getPixel(i, j);
            tempByte[count++] = (byte)((pix & 0x00ff0000) >> 16);
            tempByte[count++] = (byte)((pix & 0x0000ff00) >> 8);
        }
    }

로 해서 tempByte값을 이용해서 그림을 출력하게 되면 그림이 깨져서 나오더라고요..

그래서 byte값도 logcat으로 출력해보니 예상값이랑은 다르게 나와서 그런데..

bitmap에 pixel이 ARGB라서 위와 같이 프로그램 짜면 RGB로 구할수 있지 않나요??

혹시 제가 잘못 알고 있는게 있는가요??