Avatar ·

Wie man die Größe eines Bildes (Image) in SwiftUI ändert: Skalierung und Zuschneiden

Hallo zusammen! Ich habe gerade angefangen, SwiftUI zu lernen, und bin auf ein Problem gestoßen: Ich kann die Größe eines Bildes nicht richtig ändern. In UIKit habe ich imageView.contentMode und imageView.frame verwendet, aber in SwiftUI ist alles anders.

Ich habe ein Bild, das ich aus Assets lade:

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

Das Problem ist, dass das Bild in seiner Originalgröße (4000x3000 Pixel) angezeigt wird und über die Bildschirmränder hinausragt. Ich habe versucht, .frame(width: 300, height: 200) zu verwenden, aber das Bild wird einfach abgeschnitten, nicht skaliert. Ich habe verschiedene Modifier ausprobiert, aber nichts funktioniert wie gewünscht.

Könnt ihr mir bitte sagen, wie man die Größe eines Bildes in SwiftUI richtig ändert? Ich brauche:

  1. Das Bild einfach auf eine bestimmte Größe (z.B. 300x200) zu verkleinern, unter Beibehaltung der Proportionen.
  2. Den Container mit dem Bild zu füllen, wobei es beschnitten wird.