8
votes

how can i read PNG image to NSImage. I tried the following way,but when i get the width and size of the image i'm getting some weird value.. if any one can direct me in right path.. highly appropriate..

 NSImage * picture =  [[NSImage alloc] initWithContentsOfFile: [bundleRoot stringByAppendingString:tString]];

 NSLog(@"sixe %d %d",picture.size.width, picture.size.height);
 if( picture ){ 
  NSLog(@"Picture is not null"); 
 }else {
  NSLog(@"Picture is null.");
 }

Thanks

2
This seems to disregard the alpha channel in my .png. Is there a way to retain this?Alec Jacobson

2 Answers

6
votes

Your code to load the image is correct.

The code to display the size is incorrect; NSSize's members are CGFloat which should be print with the %f format string:

NSLog(@"size %f %f",picture.size.width, picture.size.height);
2
votes

Use [NSImage imageNamed:tString]. tString should be the base file name of the image file; and need not contain a file extension.