Обычно я загружаю изображения с веб-сервера, а затем кэширую их на диск, но перед тем, как сделать это, я хочу замаскировать их.
Я использую код маскировки, который, кажется, все указывают на который можно найти здесь:
http://iosdevelopertips.com/cocoa/how-to-mask-an-image.html
Что происходит, хотя, это то, что изображение отображается нормально, но версия, которая записывается на диск с
UIImage *img = [self maskImage:[UIImage imageWithData:data] withMask:self.imageMask];
[UIImagePNGRepresentation(img) writeToFile:cachePath atomically:NO];
У
альфа-канал инвертирован по сравнению с тем, который отображается позже (здесь используется тот же экземпляр UIImage).
Есть идеи? Мне нужно, чтобы кэшированная версия была замаскирована, иначе отображение изображений в табличном представлении становится очень медленным, если мне приходится каждый раз маскировать их.
Редактировать: Так что да, UIImagePNGRepresentation (img), похоже, инвертирует альфа-канал, не имеет ничего общего с кодом, записывающим на диск, что довольно очевидно, но я все равно проверил.