Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NSImage different size in code different shown by Finder/Preview

Tags:

cocoa

nsimage

I have a couple of images that i use in my application(one of them is attached). The strange thing is that the real image size(shown by finder and preview) is 1200x701 px.

When I access image from the code and as for its size, I get 360x210px. What is going on?

Code I'm using to get the size of the image:


NSImage *newImg =  [[NSImage alloc] initWithContentsOfURL:
                   [NSURL URLFromPasteboard:[sender draggingPasteboard]]];
float h = [newImg size].height; //height is 210px - should be 701px
float w = [newImg size].width;  //width is 320px - should be 1200px

The content of the newImg is the same image that has been pointed and loaded - I display it in the NSImageView anyway so I see. Just the size taken with -size is wrong.

This is the image:

alt text http://www.tomaszkrasnyk.yoyo.pl/image.jpg

like image 388
krasnyk Avatar asked Feb 26 '23 21:02

krasnyk


1 Answers

I believe that -[NSImage size] returns the size in points, not pixels. That's why NSImageRep has both a size method and pixelsHigh and pixelsWide methods. Your image is apparently not at a 72 dpi resolution.

like image 131
JWWalker Avatar answered May 16 '23 05:05

JWWalker