Bitmap使用ARGB_8888与RGB_565压缩保存图片的大小一样

今天测试了下,Bitmap使用ARGB_8888与RGB_565压缩保存图片的大小一样,可能RGB_565仅仅节省内存,而输出图片文件时则严格按照JPEG格式规范写入,而JPEG格式本身就没有透明度量。

 

Options opts=new Options();
            opts.inPreferredConfig=Config.ARGB_8888;
            String path="/sdcard/test.png";
            Bitmap bm1=BitmapFactory.decodeFile(path, opts);
            FileOutputStream out1=new FileOutputStream("/sdcard/bm1.jpg");
            bm1.compress(CompressFormat.JPEG, 80, out1);
            
            Options opts2 = new Options();
            opts2.inPreferredConfig=Config.RGB_565;
            Bitmap bm2=BitmapFactory.decodeFile(path, opts2);
            FileOutputStream out2=new FileOutputStream("/sdcard/bm2.jpg");
            bm2.compress(CompressFormat.JPEG, 80, out2);
            
            Log.e("jemen","bm1 byte="+bm1.getByteCount()+",bm2 byte="+bm2.getByteCount());
           

你可能感兴趣的:(Bitmap使用ARGB_8888与RGB_565压缩保存图片的大小一样)