ios - 从给定的 UIImage 创建有色 UIImage

标签 ios objective-c uiimageview uiimage tint

我有一张图片,想创建一张如下所示的黑色图片:

Original Image Tinted Image

我有一个 View 和一个 ImageView ,因为它是 subview 。 ImageView 的 alpha 为 0.5,其色调颜色为黑色。 View 的背景颜色也设置为黑色。使用此生成第二个屏幕截图,我想要一个类似的输出到新的 UIImage。

PS:我需要一个可以独立于背景 View 等进行存储或重复使用的新图像。

我也尝试过在报告重复之前进行以下检查:

How would I tint an image programatically on the iPhone?

Overlaying a UIImage with a color?

Making a UIImageView grey

iPhone: How to Dynamically Color a UIImage

我也尝试过从 View 中获取图像,但这无济于事,因为 View 中有更多组件未在此处显示。

最佳答案

iPhone - flattening a UIImageView and subviews to image = blank image可能会帮助您解决问题。这个想法是“在上下文中呈现”一个具有 2 个 subview (图像和黑色覆盖 View )的 UIView 对象以获得图像。如果您在图像中有更多不需要的 subview ,只需在渲染时隐藏它们。

关于ios - 从给定的 UIImage 创建有色 UIImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29330334/

相关文章:

ios - 如何关闭应用程序的家庭共享

ios - 不同的类有相似的方法

objective-c - #Swift 中的定义和变量

uiimageview - 从 'UIImageView*' 分配给 'UIImage*' 的不兼容指针类型

swift - 为什么在我滚动 UITableView 时图像不断调整大小?

iphone - UITableViewCell 带图片自定义尺寸

ios - 在 Swift 中以编程方式制作 Segue

ios - 获取 "next"UITableViewCell 的 indexPath

ios - 将函数结果返回到输出参数

objective-c - 初始化与数据 : expected struct NSData * warning