在NSImageView中绘制NSBitmapImageRep

时间:2011-02-11 09:47:26

标签: cocoa xcode image

如何在NSImageView中绘制NSBitmapImageRep?

2 个答案:

答案 0 :(得分:14)

NSImage *im = [[[NSImage alloc] init] autorelease];
[im addRepresentation:bitmapRep];
[imageView setImage:im];

答案 1 :(得分:6)

非常简单:

NSImage *image = [[NSImage alloc] initWithCGImage:[bitmapRep CGImage] size:NSMakeSize(width,height)];

然后:

[imageView setImage:image];

另一种可能性是将其转换为TIFF( - (NSData *)TIFFRepresentation)并使用它来创建NSImage对象,但这可能会产生一些开销。

另请注意,NSBitmapImageRep - (CGImageRef)CGImage的方法是10.5或更高。

修改

要获得更清晰的解决方案,请查看@ Ken的答案。