如何在SwiftUI中遮罩/剪裁图像的底部?

如何在SwiftUI中遮罩/剪裁图像的底部?,swiftui,Swiftui,目前,在SwiftUI中屏蔽图像似乎非常容易,可以使用以下方法实现: .clipShape(RoundedRectangle(cornerRadius:20, style: .continuous)) 甚至,面具。是否有方法通过指定.center、.bottom等来控制图像的哪一部分被屏蔽?到目前为止,我一直在使用偏移量,但我想知道是否有更简单的方法。.clipShape需要一个形状,因此如果要经常剪裁底部,可以创

目前,在SwiftUI中屏蔽图像似乎非常容易,可以使用以下方法实现:

.clipShape(RoundedRectangle(cornerRadius:20,
                                        style: .continuous))
甚至,面具。是否有方法通过指定.center、.bottom等来控制图像的哪一部分被屏蔽?到目前为止,我一直在使用偏移量,但我想知道是否有更简单的方法。

.clipShape需要一个形状,因此如果要经常剪裁底部,可以创建一个特殊形状。大概是这样的:

导入快捷键 结构ContentView:View{ var body:一些观点{ Imagemypic .aspectRatiocontentMode:.fit .clipshapebottomclipperbooth:100 } } 结构底部裁剪器:形状{ 让底部浮动:CGFloat func pathin rect:CGRect->Path{ Rectangle.pathin:CGRectx:0,y:rect.size.height-底部,宽度:rect.size.width,高度:底部 } } Swift 1.0 您可以将填充与形状相结合。这可能是你想要的更简单的方法

Image("profile")
    // Add padding to sides of the shape to control what is masked
    .mask(Rectangle().padding(.bottom, 20))
    .border(Color.orange)
摘自《SwiftUI视图》一书