在Android中,将图片压缩到指定大小需要遵循以下步骤:
Bitmap originalBitmap = BitmapFactory.decodeFile(imagePath);
float scaleX = (float) targetWidth / originalBitmap.getWidth();
float scaleY = (float) targetHeight / originalBitmap.getHeight();
Matrix matrix = new Matrix();
matrix.postScale(scaleX, scaleY);
Bitmap compressedBitmap = Bitmap.createBitmap(originalBitmap, 0, 0, originalBitmap.getWidth(), originalBitmap.getHeight(), matrix, true);
FileOutputStream fos = new FileOutputStream(outputPath);
compressedBitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.close();
注意:在进行图片压缩时,请确保处理好内存管理,以避免出现内存溢出(OutOfMemoryError)问题。在处理大型图片时,可以考虑使用Android的BitmapRegionDecoder类来分块加载和处理图片。