downsizeImage function

Future<File> downsizeImage(
  1. File image, {
  2. double scale = 0.5,
  3. int quality = 85,
})

Implementation

Future<File> downsizeImage(File image,
    {double scale = 0.5, int quality = 85}) async {
  // 이미지 파일을 Uint8List로 변환
  Uint8List imageData = await image.readAsBytes();

  // 이미지가 2MB를 초과하는지 확인하고, 초과한다면 다운스케일링
  Uint8List resizedImageData =
      resizeImageIfNeeded(imageData, scale: scale, quality: quality);

  // 기존 파일 경로에 다운스케일링된 이미지 덮어쓰기
  return await image.writeAsBytes(resizedImageData);
}