如何解决Flutter 压缩相机图像
我想通过相机点击照片并想压缩它然后将其上传到服务器
我已经包含了图像压缩依赖项,它向我展示了错误没有为“PickedFile”类型定义 getter 'absolute'。
写了点击图片上传到服务器的代码 // 从相机拍照
Widget bottomSheet() {
return Container(
height: 100.0,width: MediaQuery.of(context).size.width,margin: EdgeInsets.symmetric(
horizontal: 20,vertical: 20,),child: Column(
children: <Widget>[
Text(
"Take A Picture",style: TextStyle(
fontSize: 20.0,SizedBox(
height: 20,Row(mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[
// ignore: deprecated_member_use
FlatButton.icon(
icon: Icon(Icons.camera),onPressed: () {
takePhoto(ImageSource.camera);
},label: Text("Camera"),])
],);
}
void takePhoto(source) async {
final pickedFile = await _picker.getImage(
source: source,);
setState(() {
_imageFile = pickedFile;
});
await FlutterImageCompress.compressWithFile(
_imageFile.absolute.path,minWidth: 2300,minHeight: 1500,quality: 94,rotate: 90,);
}
解决方法
不要使用 FlutterImageCompress.compressWithFile,只需在 _picker.getImage 中添加 imageQuality
_picker.getImage(
source:ImageSource.camera,minWidth: 2300,minHeight: 1500,imageQuality: 75
)
随着图像的图像质量值大小发生变化
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。