[英]How to remove the transparent area of an UIImageView after masking?
在我的一个iOS应用程序中,我试图使用CGImageMask
剪切图像的CGImageMask
。 我已成功使用以下代码屏蔽图像:
- (UIImage *)maskImage:(UIImage *)referenceImage withMask:(UIImage *)maskImage {
CGImageRef maskRef = maskImage.CGImage;
CGImageRef mask = CGImageMaskCreate(CGImageGetWidth(maskRef),
CGImageGetHeight(maskRef),
CGImageGetBitsPerComponent(maskRef),
CGImageGetBitsPerPixel(maskRef),
CGImageGetBytesPerRow(maskRef),
CGImageGetDataProvider(maskRef), NULL, false);
CGImageRef masked = CGImageCreateWithMask([referenceImage CGImage], mask);
return [UIImage imageWithCGImage:masked];
}
所以,我的形象将是:
myImageView.image = [self maskImage:[UIImage imageNamed:@"image.png"]
withMask:[UIImage imageNamed:@"mask.png"]];
问题:输出图像与参考图像('image.png')的大小相同,周围有透明区域。 但我想避开那些透明区域,并裁剪结果图像。 我怎样才能做到这一点? 有几个掩模,并且掩模框架与所有掩模框架不相似。 我在这里附上问题概述的参考图像。 请帮帮我的朋友。 提前致谢。
查找自动裁剪UIImage。 这应该是透明的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.