使用Cocoa API的综合图像处理示例

时间:2010-07-30 09:38:58

标签: cocoa image-processing

有人能指出使用cocoa API进行图像处理的综合示例吗?我正在为Mac开发应用程序,而不是为iPhone设备开发。我经常遇到UIImage操作,它提供了一组直观的方法来实现任务,例如每像素操作和以不同格式保存到文件中。在Appkit,NSImage的情况下,我真的发现难以操纵图像的每像素数据并保存为不同的文件格式,例如PNG而不仅仅是TIFF。

2 个答案:

答案 0 :(得分:4)

如果你想使用像素,CGImage和CGImageSource以及CGImageDestination是要走的路。与AppKit的NSImage不同,后者通常是为处理任何类型的图像而设计的,CGImage类是专门为光栅图像设计的。

答案 1 :(得分:0)

您可以检索图像对象的位图表示并修改其数据

NSBitmapImageRep *rep = [[image representations] objectAtIndex: 0];
unsigned char *bmpData = [rep bitmapData];

要以PNG格式保存修改后的表示,请执行以下操作:

NSData *data = [bits representationUsingType: NSPNGFileType properties: nil];
[data writeToFile: @"/path-to-your-file/image.png" atomically: NO];