Avatar ·

如何在 SwiftUI 中调整图像 (Image) 大小:缩放与裁剪

大家好!我刚开始学习 SwiftUI,遇到了一个问题:无法正常调整图像大小。在 UIKit 中,我习惯使用 imageView.contentMode 和 imageView.frame,而在 SwiftUI 中完全不同。

我有一张从 Assets 加载的图像:

struct ContentView: View {
    var body: some View {
        Image("myPhoto")
    }
}

问题是图像以原始尺寸(4000x3000 像素)显示,并超出屏幕边界。我尝试使用 .frame(width: 300, height: 200),但图像只是被裁剪,而不是缩放。我尝试了不同的修饰符,但都没有达到预期效果。

请告诉我如何在 SwiftUI 中正确调整图像大小?我需要:

  1. 将图像缩小到特定尺寸(例如 300x200)并保持比例。
  2. 用图像填充容器,裁剪