gpt4 book ai didi

image - 如何使用 SwiftUI 将图像剪切为 2

转载 作者:行者123 更新时间:2023-12-02 02:16:29 30 4
gpt4 key购买 nike

我有这样一张图片 enter image description here

我想使用 SwiftUI 在中心将它分成两部分。给我留下 2 张我可以访问的单独图像。但是我不知道如何将原件分成顶部和底部。这两部分必须对齐才能创建原始图像。

顶级图片: enter image description here

底部图像: enter image description here

我试过使用几何读取器读取高度和宽度并返回高度为一半的图像,但是这两个图像不喜欢这样。

GeometryReader { geo in
image
.frame(width: geo.width, height: geo.height / 2, alignment: .center)
.clipped()
}

最佳答案

这里有一种方法:使用 clipped() 修饰符。


enter image description here


struct ContentView: View {

@State private var spacing: CGFloat = CGFloat()
@State private var imageSize: CGSize = CGSize()

var body: some View {

let image = Image(systemName: "star")
.resizable()
.scaledToFit()
.frame(width: 200, height: 200, alignment: .center)
.background(Color.yellow)
.cornerRadius(10.0)
.background(GeometryReader { proxy in Color.clear.onAppear() { imageSize = proxy.size } })


return ZStack {

VStack(spacing: spacing) {

image.frame(width: imageSize.width, height: imageSize.height/2, alignment: .top).clipped()

image.frame(width: imageSize.width, height: imageSize.height/2, alignment: .bottom).clipped()
}

VStack { Spacer(); Slider(value: $spacing,in: 0.0...100.0) }

}
.padding()
.compositingGroup()
.shadow(radius: 10.0)

}
}

关于image - 如何使用 SwiftUI 将图像剪切为 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67100000/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com