Я пытаюсь создать новое изображение из необработанных данных без знака *. У меня есть биты на пиксель из сохраненных данных.
Я попытался преобразовать необработанные данные в NSData, но в результате изображение было ноль,
unsigned char * bitmap = myData;
NSUInteger myImageDataLength = strlen ((const char *) bitmap);
NSData * d = [NSData dataWithBytes: длина растрового изображения: myImageDataLength];
imgView.image = [UIImage imageWithData: d];
Затем я попытался использовать контекст для создания изображения следующим образом:
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
int width = mWidth;
int height = mHeight;
size_t bpp = mBpp;
size_t bpc = 8;
size_t bpr = (width * 4);
CGContextRef context = CGBitmapContextCreate(bitmap, width, height, 8, bpr, colorspace, kCGImageAlphaNone);
CGImageRef cgImage = nil;
if (context != nil) {
cgImage = CGBitmapContextCreateImage (context);
CGContextRelease(context);
}
CGColorSpaceRelease(colorspace);
UIImage *newImage = [UIImage imageWithCGImage:cgImage];
Я получаю сообщение об ошибке, подобное
<Error>: CGBitmapContextCreate: unsupported parameter combination: 8 integer bits/component; 24 bits/pixel; 3-component color space; kCGImageAlphaNone; 64 bytes/row.
Я пытался решить эту проблему, задав много значений, но не смог найти никакого результата. Я гуглил в интернете, чтобы найти это решение, но все остальные создают изображение из существующих изображений, чтобы они получали значения битов для компонентов и все такое ... Как я могу создать изображение из этих данных ???
Исходное изображение:
![enter image description here](https://i.stack.imgur.com/U0XuQ.png)
Результирующее изображение:
![enter image description here](https://i.stack.imgur.com/vhDKk.png)
Результирующее изображение должно быть деформировано. (Деформировано так же, как fatBooth и другое приложение)