pickImage static method

Future<File?> pickImage(
  1. bool isGallery, {
  2. CameraDevice prefferedCameraDevice = CameraDevice.rear,
  3. CropStyle? cropStyle,
  4. CropAspectRatio? aspectRatio,
})

Implementation

static Future<File?> pickImage(bool isGallery,
    {CameraDevice prefferedCameraDevice = CameraDevice.rear,
      CropStyle? cropStyle,
      CropAspectRatio? aspectRatio}) async
{
  final ImagePicker picker = ImagePicker();

  File? image;
  // String? _imageFile;
  try {
    int imageQualityPercent = 80;
    customPrint('about to pick image with image quality $imageQualityPercent');
    XFile? pickedFile;
    if (isGallery) {
      pickedFile = await picker.pickImage(
          source: ImageSource.gallery,
          imageQuality: imageQualityPercent,
          maxHeight: 600);
    } else {
      pickedFile = await picker.pickImage(
          source: ImageSource.camera,
          imageQuality: imageQualityPercent,
          preferredCameraDevice: prefferedCameraDevice,
          maxHeight: 600);
    }
    customPrint('the error is $pickedFile');
    // int length = await pickedFile!.length();
    customPrint('the length is');
    // customPrint('size : ${length}');
    // customPrint('size: ${await pickedFile.readAsBytes()}');
    CroppedFile? croppedFile = await ImageCropper().cropImage(
      sourcePath: pickedFile!.path,
      uiSettings: [
        AndroidUiSettings(
          toolbarTitle: 'Cropper',
          toolbarColor: Colors.deepOrange,
          toolbarWidgetColor: Colors.white,
          aspectRatioPresets: [
            // CropAspectRatioPreset.original,
            CropAspectRatioPreset.square,
          ],
        ),
        IOSUiSettings(
          title: 'Cropper',
          aspectRatioPresets: [
            // CropAspectRatioPreset.original,
            CropAspectRatioPreset.square,
          ],
        ),
      ],
    );

    // _imageFile = croppedFile!.path;
    image = File(croppedFile!.path);
    customPrint(image);
    return image;
  } catch (e) {
    customPrint("Image picker error $e");
  }
  return null;
}