2010-01-30 50 views
6

我正在尋找與-[NSWorkspace iconForFile:]完全相同的方法,但如果可能的話,它會以更高的分辨率返回圖標。特別是,我有一個使用QuickLook顯示文件預覽的應用程序,如果沒有快速查看插件可用,我希望它回退到文件圖標。然而,使用iconForFile:方法會產生一個小的32x32圖標。有更好的方法嗎?一個返回NSImageCGImageRef是首選,但較少訪問的方法可能也不錯。在Mac OS X中的文件的高分辨率圖標?

回答

5

-[NSWorkspace iconForFile:]的返回圖像包含多個表示,包括更高分辨率的表示。

如果您嘗試在512x512上繪製它,它會自動選擇適當的表示。

3

這裏是使圖標更大的方式:

NSImage * icon = [NSWorkspace iconForFile:yourPath]; 
[icon setSize:NSMakeSize(64,64)]; 

完蛋了。祝你好運!

+0

'-setSize'充滿了危險,應該避免,除非你知道你在做什麼。 – 2012-04-18 14:00:36

+1

該代碼來自http://developer.apple.com/library/mac/documentation/cocoa/Conceptual/Workspace/Articles/InformationAboutFiles.html#//apple_ref/doc/uid/20001004-39665 – UJey 2012-04-21 16:22:08