做的小demo需要将图片存数据库,为了性能,所以需要对图片进行压缩,一开始用的是flutter_luban这个库,但是按照example来写却一直报错,所以用的是flutter_native_image这个库
我的场景比较简单,就是将用image_picker获得的图片压缩
image_picker返回的是一个File,所以压缩代码如下:
///File goodPic
goodPic = await FlutterNativeImage.compressImage(goodPic.path, quality: 50, percentage: 50);
其中:
第一个参数是fileName,传的是图片的path
另外还有可选参数如下:
1.int percentage:默认70,控制图片大小
2.int quality:默认70,控制压缩强度
4.int targetWidget:默认0,和targetHeight一起重新设置image的大小
5.int targetHeight:默认0
除了压缩图片,这个库还有裁剪图片的方法,但是没有认真研究