objective-c - UIImage,有没有一种简单的方法可以使其变暗或全黑

标签 objective-c cocoa cocoa-touch uiimage

我想获取一个 Objective-C UIImage 并将其设为全黑,但仍具有相同的 alpha 值,以便它成为其前图像的轮廓。我想知道是否有比仅获取 CGImage 数据并更改每个像素的值更方便的方法?

最佳答案

您可以通过使用 kCGImageAlphaOnly 和 1 个组件创建 CGBitmapContext 来提取 alpha 信息,然后绘制到其中。然后你就会得到一张只有 Alpha 的图像。

然后您可以使用 kCGBlendModeDestinationIn 将其合成到全黑图像上。这应该会为您留下一个带有原始 Alpha 值的全黑图像。

关于objective-c - UIImage,有没有一种简单的方法可以使其变暗或全黑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4099041/

相关文章:

objective-c - XCode/Cocoa Objective-C - 几个问题

cocoa - 如何防止Cocoa在每个完全不可见的 subview 上调用drawRect

objective-c - 优化这个 for 循环

iOS 8 建议的应用程序图标锁屏

objective-c - 仅要求标准帐户的管理员权限

iphone - 如何截断 NSString?

iphone - 如何在 objective-c 中进行惰性实例化?

ios - 在 Swift 中一次性重置整个模型

iphone - 立即显示 ActivityIndi​​cator

iphone - 如何在 UINavigationBar 上的任意位置设置自定义按钮?