iPhone: изменение CGImageAlphaInfo для CGImage
У меня есть изображение PNG, которое имеет неподдерживаемый растровый графический контекстный пиксельный формат. Всякий раз, когда я пытаюсь изменить размер изображения,CGBitmapContextCreate()
дроссели на неподдерживаемый формат
Я получаю следующую ошибку (ошибка отформатирована для удобства чтения):
CGBitmapContextCreate: unsupported parameter combination:
8 integer bits/component;
32 bits/pixel;
3-component colorspace;
kCGImageAlphaLast;
1344 bytes/row.
список поддерживаемых форматов пикселей определенно не поддерживает эту комбинацию. Похоже, мне нужно перерисовать изображение и переместить информацию альфа-канала вkCGImageAlphaPremultipliedFirst или kCGImageAlphaPremultipliedLast.
Я понятия не имею, как это сделать.
В PNG-файле нет ничего необычного, и он не поврежден. Это работает во всех других контекстах просто отлично. Я случайно столкнулся с этой ошибкой, но, очевидно, мои пользователи могли иметь файлы аналогичного формата, поэтому мне придется проверить импортированные изображения моего приложения и исправить эту проблему.