颤动:使图像更小

时间:2019-08-24 19:13:39

标签: flutter dart

我正在制作一个flutter应用程序,将图像上传到Firebase存储。

为使图像不太大,我使用以下代码对其进行压缩

  compressImage() async {
    final tempDir = await getTemporaryDirectory();
    final path = tempDir.path;
    Im.Image imageFile = Im.decodeImage(file.readAsBytesSync());
    final compressedImageFile = File('$path/img_$postID.jpg')
      ..writeAsBytesSync(Im.encodeJpg(imageFile, quality: 50));

    setState(() {
      file = compressedImageFile;
    });
  }

如果我使用Android设备上传照片,则有时为500kb,有时为200kb...。 但是,如果使用Apple ios模拟器库存的照片,其大小仍约为1 MB,是否可以选择获取更小的图像,例如最大500kb?

谢谢!

1 个答案:

答案 0 :(得分:1)

将其与抖动图像包固定在一起。调整图像大小后,文件大小会变小。