如何在不破坏比例的情况下缩放图像

How to scale image without corrupt the ratio

我想重新缩放图像,但找不到执行此操作的方法。

这是代码

return Column(
      // crossAxisAlignment: CrossAxisAlignment.start,
      // mainAxisAlignment: MainAxisAlignment.end,
      children: [
        Expanded(
          flex: 1,
          child: GestureDetector(
            child: Container(
              padding: const EdgeInsets.all(0.0),
              margin: const EdgeInsets.all(8),
              decoration: BoxDecoration(
                image: DecorationImage(
                  fit: BoxFit.cover,
                  
                  alignment: FractionalOffset.center,
                  image: CachedNetworkImageProvider(slider[idx].imageURL!),
                ),
                borderRadius: const BorderRadius.only(
                    topLeft: Radius.circular(5),
                    topRight: Radius.circular(5),
                    bottomRight: Radius.circular(5),
                    bottomLeft: Radius.circular(5)),
              ),

当前视图

目标视图

图像小部件有一个比例 属性,您可以使用它来放大或缩小图像:https://api.flutter.dev/flutter/painting/ImageInfo/scale.html

从那里您可以指定所需的 aspect ratio 或使用对齐方式(就像您一样)以及设置高度和宽度来手动设置图像大小。

有关调整图像大小的更多信息https://www.woolha.com/tutorials/flutter-display-and-adjust-images-from-assets