如何在swift中使用蒙版图像?

时间:2018-04-07 15:09:59

标签: ios swift uiimage

我想用掩码图像掩盖UIImageView,如:

let mask = UIImageView(image: MASKIMAGE)
profileImageView.mask = mask

但是遮罩图像中的黑色部分必须透明。 enter image description here

怎么做?

谢谢!

2 个答案:

答案 0 :(得分:1)

您是否使用带透明像素的MASKIMAGE PNG 图片?不要将JPEG用于蒙版。您希望透明的黑色区域实际上应包含alpha通道值0。

R = Some value (122)
G = Some value (23)
B = Some value (33)
A = 0 for fully transparent area

如果图片包含Alpha值1,则需要编辑图像并将其重新添加到资源中,以便只有您需要的信息(蒙版形状)的alpha值为1以及其他一切0。你可以在photoshop或任何其他图像编辑软件中完成。

答案 1 :(得分:0)

解决!

现在我可以将非白色变为透明。

let components: [CGFloat] = [0,254,0,254,0,254]
let alphaImage = UIImage(cgImage: (MASKIMAGE.cgImage?.copy(maskingColorComponents: components))!)
let mask = UIImageView(image: alphaImage)
profileImageView.mask = mask