Updated for Xcode 13.0 beta 2
SwiftUI gives us the
mask() modifier for masking one with another, which means you can mask an image using text or an image using an image, or more.
For example, this creates a 300x300 image of stripes, then masks it using the text “SWIFT!” so that the letters act as a cut out for the image:
Image("laser-show") .resizable() .frame(width: 300, height: 300) .mask( Text("SWIFT!") .font(.system(size: 72)) )
mask() modifier is different from
clipShape(), because it also applies any transparency from the masking view – you get to have holes in your underlying view based on the transparency of your mask. On the other hand,
clipShape() only adjusts the outside shape of the view you apply it to.
SPONSORED From August 2nd to 8th you can join a FREE crash course for mid/senior iOS devs who want to achieve an expert level of technical and practical skills – it’s the fast track to being a complete senior developer!
Link copied to your pasteboard.