如何在另一个 uiimage 上方或下方以透明方式遮罩 uiimage?



我正在尝试拍摄背景透明的三角形图像,并根据用户的喜好在三角形部分或背景部分应用波点图像。例如,如何将波尔卡圆点应用于三角形部分,然后将条纹应用于图像的透明部分。有没有针对这种事情的遮罩技术?

非常感谢,

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!)

最新更新