Ребята, помогите, пожалуйста реализовать обрезку изображения по маске с дальнейшим сохранением.
Есть функция:
func maskImage(image:UIImage, mask:(UIImage))->UIImage{
let imageReference = image.cgImage let maskReference = mask.cgImage let imageMask = CGImage(maskWidth: maskReference!.width, height: maskReference!.height, bitsPerComponent: maskReference!.bitsPerComponent, bitsPerPixel: maskReference!.bitsPerPixel, bytesPerRow: maskReference!.bytesPerRow, provider: maskReference!.dataProvider!, decode: nil, shouldInterpolate: true) let maskedReference = imageReference!.masking(imageMask!) let maskedImage = UIImage(cgImage:maskedReference!) return maskedImage }
Сохранить пытаюсь через функцию:
@IBAction func saveaction(_ sender: UIButton) {
let imageData = UIImagePNGRepresentation(pickedImaged.image!) let compressedPNGImage = self.maskImage(image: UIImage(data: imageData!)!, mask: UIImage(named: "tiDolznaRabotatNaMenyaPadla.png")!) UIImageWriteToSavedPhotosAlbum(compressedPNGImage, nil, nil, nil) }
Сохранение происходит, но без маски…