0

次のように YuvImage を使用してビットマップから画像をトリミングしようとしました:

        Bitmap bitmap=params[0];
        ByteArrayOutputStream bos=new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos);
        byte[] data=bos.toByteArray();
        //bos=null;
        YuvImage yuvImage=new YuvImage(data, ImageFormat.NV21, bitmap.getWidth(), bitmap.getHeight(),null);
        bos=new ByteArrayOutputStream();
        boolean isCropped=yuvImage.compressToJpeg(rect, 100, bos);
        if(isCropped)
            data=bos.toByteArray();
        bitmap=BitmapFactory.decodeByteArray(data, 0, data.length);
        return bitmap;

これにより、結果の画像が発生します奇妙で怖い...古い白黒テレビのように

を使用せずに画像をトリミングして保存するための別の方法はありますかIntent?

4

1 に答える 1