ビューのビットマップをキャプチャすることになっている非常に単純なコードがあります。これは以前はLeopardで機能していましたが、SnowLeopardではひどく壊れているようです。
ウィンドウのボタンを押すと応答するコードは次のとおりです。
- (IBAction)snapshot:(id)sender
{
NSView* view = [[sender window] contentView];
NSBitmapImageRep* bitmap
= [view bitmapImageRepForCachingDisplayInRect:[view bounds]];
NSData *tiff = [bitmap TIFFRepresentation];
[tiff writeToFile:[@"~/Desktop/snapshot.tiff" stringByExpandingTildeInPath]
atomically:YES];
}
ボタンをクリックしてスナップショットを撮ると、完全に透明な画像になります。
私はここで完全に無知ですか、それともこのビットマップキャッシング方法は壊れていますか?
単純なプロジェクト(基本的には、このコードを呼び出すボタンを備えたスターターNSDocumentプロジェクト)は、ここにあります。