0

我有扩展名为 .RGB 的文件,需要在 uiimageview 上显示它。

为此,我需要将 .RGB 格式转换为 .PNG 或 .JPEG 等特定格式,但无法正确处理。我为此尝试了以下代码。

    UIImage *image=[UIImage imageNamed:@"Attachment.RGB"];
CGImageRef imageRef=[image CGImage];
UIImage *myImage = [UIImage imageWithCGImage:imageRef];
NSData *pngData = UIImagePNGRepresentation(myImage);
UIImage* imageFinal = [UIImage imageWithData:pngData];

image_view.image=imageFinal;

有在线网站可以将 RGB 转换为可见图像。但我没有找到任何目标 c 的解决方案。谁可以帮我这个事 。

问候 Pagyyy123

4

1 回答 1

1

您可以为此使用 readtex.c,这是它的开源实现。请参阅以下代码片段的示例...

static TK_RGBImageRec *tkRGBImageLoad(const char *fileName)
{
   rawImageRec *raw;
   TK_RGBImageRec *final;

   raw = RawImageOpen(fileName);
   if (!raw) {
      fprintf(stderr, "File not found\n");
      return NULL;
   }
   final = (TK_RGBImageRec *)malloc(sizeof(TK_RGBImageRec));
   if (final == NULL) {
      fprintf(stderr, "Out of memory!\n");
      return NULL;
   }
   final->sizeX = raw->sizeX;
   final->sizeY = raw->sizeY;
   final->components = raw->sizeZ;
   RawImageGetData(raw, final);
   RawImageClose(raw);
   return final;
}

http://opensource.apple.com/source/X11server/X11server-85/mesa/Mesa-7.2/progs/util/readtex.c

我希望上面的网址会有所帮助。

于 2012-07-16T07:18:56.817 回答