1
我在Mac上实现一个Photoshop插件,并且我正在使用Cocoa。目前做得不错,但下一步是提供一个“预览”图像,作为我的插件窗口的一部分,并且我被卡住了。我是一个的n00b的OBJ-C程序员,这是不是真的帮助:-)使用Cocoa的Photoshop插件 - 如何获得预览
到目前为止,我有这样的事情:
int dataSize = gFilterRecord->bigDocumentData->wholeSize32.v *
gFilterRecord->bigDocumentData->wholeSize32.h *
gFilterRecord->planes;
NSData *inData = [[NSData alloc] initWithBytesNoCopy:gFilterRecord->inData length:dataSize freeWhenDone:NO];
NSLog(@"LoadImageFromSDK : Data created");
NSImage *imageTmp = [[NSImage alloc] initWithData:inData];
NSLog(@"LoadImageFromSDK : Image created");
//Save to PNG file as a test of this image creation
[[imageTmp TIFFRepresentation] writeToFile:@"/tmp/imageTmp.tif" atomically:YES];
NSLog(@"LoadImageFromSDK : Wrote image to disk");
目前,它崩溃可怕的:
09/07/22 10:23:32上午Adobe Photoshop Elements [46628] *** NSCopyMemoryPages(0x0,0x245f4000,2265088)失败
我可能计算错误的inData大小。帮帮我?
此外,NSImage是否能够正确解释该图像数据blob?或者我应该放弃它,只是做一个逐像素映射到NSImage?