以下の例のような画像を提供する API を使用しています。この値の配列を画像に変換する方法がわかりません。これは見たことがありません。
次の値の配列をUIImageにする方法を知っている人はいますか?
[255,216,255,224,0,16,74,70,73,70,0,1,1,1,0,96,...]
これはストレートピクセルバッファデータのように見えるので、フォーマット(おそらくRBGA?)と画像のサイズ(うまくいけば、固定/推測可能/フォーマットに含まれている)を推測する必要があります。正しく推測すると、CGDataProviderCreateWithDataを使用してCIImageを作成できるはずです。
CGDataProviderRef provider = CGDataProviderCreateWithData(NULL, buffer, bufferLength, NULL);
//a reasonable guess
CGColorSpaceRef colorSpaceRef = CGColorSpaceCreateDeviceRGB();
int bitsPerComponent = 8;
int bitsPerPixel = 32;
int bytesPerRow = 4 * width;
CGImageRef imageRef = CGImageCreate(width, height, bitsPerComponent, bitsPerPixel, bytesPerRow, colorSpaceRef, kCGBitmapByteOrderDefault, provider, NULL, NO, kCGRenderingIntentDefault);
UIImage *newUIImage = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
CGDataProviderRelease(provider);