pickImage static method
Future<File?>
pickImage(
- bool isGallery, {
- CameraDevice prefferedCameraDevice = CameraDevice.rear,
- CropStyle? cropStyle,
- 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;
}