私は画像をトリミングするために、このコードを使用しています:作物ビットマップ問題
Bitmap raw = ((BitmapDrawable)hWlp).getBitmap();
DisplayMetrics metrics = new DisplayMetrics();
WindowManager windowManager = (WindowManager)
context.getSystemService(Context.WINDOW_SERVICE);
windowManager.getDefaultDisplay().getMetrics(metrics);
int width = metrics.widthPixels;
int height = metrics.heightPixels;
wallpaper = Bitmap.createBitmap(raw, width/2, 0, width, height);
私の元画像(生)は800x960で、対象画像が800×480(画面サイズ)です。だから、私はこのエラーが出る理由を理解していない:がある)(私の場合X +幅(2分の480 + 480)に
java.lang.IllegalArgumentException: x + width must be <= bitmap.width()
場合を720とbitmap.widthをされた960
画像のアスペクト比は変更されますが、画像は切り取られません。 –
はい私は私の答えを変更しました –