我希望能够获取一个 UIImage 实例,修改它的一些像素数据,然后用该像素数据取回一个新的 UIImage 实例。我在这方面取得了一些进展,但是当我尝试更改 CGBitmapContextGetData 返回的数组时,最终结果总是在图像上叠加垂直蓝线。我希望能够更改图像中像素的颜色和 alpha 值。
有人可以提供一个端到端的例子来说明如何做到这一点,从一个 UIImage 开始,以一个带有修改像素的新 UIImage 结束?
这可能会回答您的问题:How to get the RGB values for a pixel on an image on the iphone
我猜你会按照这些说明获取数据的副本,修改它,然后创建一个新的 CGDataProvider (CGDataProviderCreateWithCFData),使用它来创建一个新的 CGImage (CGImageCreate),然后从中创建一个新的 UIImage。
不过,我实际上还没有尝试过(目前无法访问 Mac)。