2010-04-21 3 views
8

어떻게 PNG 이미지를 NSImage에 읽을 수 있습니까? 나는 다음과 같은 방법을 시도,하지만 난 좀 이상한 값을 받고 있어요 이미지 ..의 폭과 크기를 얻을 때 하나는 매우 적절한 .. 옳은 길에서 나를 안내 할 수 있다면 ..PNG 이미지를 NSImage로 읽는 법

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."); 
} 

감사

+0

이것은 내 .png의 알파 채널을 무시한 것 같습니다. 이것을 유지할 수있는 방법이 있습니까? –

답변

6

이미지를로드하는 코드가 정확합니다.

크기를 표시하는 코드가 잘못되었습니다. NSSize의 멤버는 % f 형식 문자열로 인쇄해야하는 CGFloat입니다.

NSLog(@"size %f %f",picture.size.width, picture.size.height); 
+0

Thx, 빠른 응답을 위해 아래 코드를 Mac OS X로 변환하는 방법을 알려 주실 수 있습니까? 아이폰 앱 -> UIKit 사용 CGRect rect = CGRectMake (offset.x * scale, offset.y * scale, scale * size .width, scale * size.height); UIGraphicsPushContext (ctx); [image drawInRect : rect]; UIGraphicsPopContext(); – Sam

+1

드로잉 가이드 (http://developer.apple.com/mac/library/documentation/cocoa/Conceptual/CocoaDrawingGuide/GraphicsContexts/GraphicsContexts.html)를보십시오. 그래픽 컨텍스트를 얻는 방법과 이미지를 그리는 방법을 설명합니다. –

2

[NSImage imageNamed:tString]을 사용하십시오. tString은 이미지 파일의 기본 파일 이름이어야합니다. 파일 확장자를 포함 할 필요가 없습니다.

+0

Thx는 빠른 답장을 위해 아래 코드를 Mac OS X로 변환하는 방법을 알려 주실 수 있습니까? 아이폰 앱 -> UIKit 사용 CGRect rect = CGRectMake (offset.x * scale, offset.y * scale, scale * size .width, scale * size.height); UIGraphicsPushContext (ctx); [image drawInRect : rect]; UIGraphicsPopContext(); – Sam

관련 문제