NSImage のサイズ
Cocoa の NSImage の size プロパティは、画像ファイルに DPI 指定が埋め込まれている場合などに、ピクセル単位でない場合があります。
画像のサイズをピクセル単位で取得したい場合には、以下のように pixelsSize プロパティを定義して利用します。
@interface NSImage (NSImagePixelsExtension) - (NSSize)pixelsSize; @end @implementation NSImage (NSImagePixelsExtension) - (NSSize)pixelsSize { for (NSBitmapImageRep* e in [self representations]) { if ([e isKindOfClass:[NSBitmapImageRep class]]) { return NSMakeSize(e.pixelsWide, e.pixelsHigh); } } return self.size; } @end