iOS使UIImage的一部分透明

前端之家收集整理的这篇文章主要介绍了iOS使UIImage的一部分透明前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个UI Image,其中一部分被用户选择以清除(使透明).为了做出选择,我用了NSBezierPath.

如何在iOS中清除/使透明的UIImage部分?

解决方法

首先,我假设你有一个UIBezierPath(iOS),而不是一个NSBezierPath(Mac OS X).

为此,您将需要使用核心图形,创建图像上下文,将UIImage绘制到该上下文中,然后清除NSBezierPath指定的区域.

// Create an image context containing the original UIImage.
UIGraphicsBeginImageContext(originalImage.size);
[originalImage drawAtPoint:CGPointZero];

// Clip to the bezier path and clear that portion of the image.
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextAddPath(context,bezierPath.CGPath)
CGContextClip(context);
CGContextClearRect(context,CGRectMake(0,originalImage.size.width,originalImage.size.height);

// Build a new UIImage from the image context.
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
原文链接:https://www.f2er.com/iOS/329953.html

猜你在找的iOS相关文章