我正在尝试拍摄背景透明的三角形图像,并根据用户的喜好在三角形部分或背景部分应用波点图像。例如,如何将波尔卡圆点应用于三角形部分,然后将条纹应用于图像的透明部分。有没有针对这种事情的遮罩技术?
非常感谢,
func maskImage(image:UIImage, mask:(UIImage))->UIImage{
let imageReference = image.CGImage
let maskReference = mask.CGImage
let imageMask = CGImageMaskCreate(CGImageGetWidth(maskReference),
CGImageGetHeight(maskReference),
CGImageGetBitsPerComponent(maskReference),
CGImageGetBitsPerPixel(maskReference),
CGImageGetBytesPerRow(maskReference),
CGImageGetDataProvider(maskReference), nil, true)
let maskedReference = CGImageCreateWithMask(imageReference, imageMask)
let maskedImage = UIImage(CGImage:maskedReference!)
return maskedImage}
用法
let image = UIImage(named: "image2.png")
let maskingImage = UIImage(named: "mask6.png")
imageView.image = maskImage(image!, mask: maskingImage!)