2014-10-17 1 views
0

, 나는 방법 중 하나에 아래의 코드를 아이콘 이미지를로드하려면 : 로그 출력에서 ​​NSImage -initWithContentsOfFile 크기의 이미지를 반환 제로 (0)

NSLog(@"icon path: %@", iconPath); 
NSImage *iconImage = [[NSImage alloc] initWithContentsOfFile:iconPath]; 
return iconImage; 

, 이미지 자원은 분명하다 정확한 위치에서 열리고있다. 오류가 표시되지 않습니다. 그러나 내가 여는 tif 파일은 디버거에서 비어있는 NSSize (너비 = 0, 높이 = 0)로 표시되며 일부 런 어웨이 메모리 세그먼트를 가리키는 것처럼 화면에 표시됩니다.

플래그가 주로 0으로 설정되어있는 예외 colorMatchPreferred하고 multipleResolutionMatching 함유 어레이 (NSArrayM *) 1.

담당자 포인트로 설정된 2 개의 비트 맵 표현 (NSBitmapImageRep 항목).

내가 뭘 잘못하고 있는지 조언 해주세요.

+0

전체 예외 텍스트와 스택 트레이스를 기입하십시오 감사합니다. – Droppy

+0

예외가 없으므로 스택 추적이 없습니다. –

+0

좋아요, 나는 "예외는 colorMatchPreferred 및 multipleResolutionMatching이 1로 설정되어 있습니다"라는 문장으로 혼란스러워했습니다. – Droppy

답변

0
//to get image original size use this code 

NSArray * imageReps = [NSBitmapImageRep imageRepsWithContentsOfFile:fileUrl]; 
     NSInteger width = 0; 
     NSInteger height = 0; 

     for (NSImageRep * imageRep in imageReps) 
     { 
      if ([imageRep pixelsWide] > width) 
       width = [imageRep pixelsWide]; 
      if ([imageRep pixelsHigh] > height) 
       height = [imageRep pixelsHigh]; 
     } 
관련 문제