2010-04-19 75 views
2

我想獲得在NSImage.h中定義的常量的圖像文件,例如NSImageNameGoRightTemplate。我想複製和編輯其中的一些。有人知道這些圖像的位置嗎?我太愚蠢,找不到他們的驅動器...NSImage中常量的圖像文件位於哪裏?

回答

1

據我所知,他們不位於一個地方,他們的名字可能並不反映在所有常數的名稱。

它們可以位於框架的「資源」文件夾,如

/System/Library/Frameworks/AppKit.framework/Resources/ 
在應用程序

或直接,就像

/System/Library/CoreServices/Finder.app/Contents/Resources/ 

您還可以看看一個主題化應用像CandyBar一樣。也許你會在二進制文件中看到一些路徑。

+0

謝謝您的回答。 我在/System/Library/Frameworks/Quartz.framework/Frameworks/ImageKit.framework/Versions/A/Resources中發現了很多圖片。按照您的建議,Finder包中還有很多。但是,我沒有找到我實際上正在尋找的那個。也許它們位於這個二進制文件中:/System/Library/PrivateFrameworks/CoreUI.framework//Resources/ArtFile.bin。但看不懂。我會創建我自己的。 – marsl 2010-04-21 12:40:17

1

我用一個類別與此陣,如果我要「自動生成」一堆「笨」圖片...

@implementation NSImage (SystemImages) 

+ (NSArray*) systemImages { static NSArray *images; 

    return images = images ?: ({ NSMutableArray *imgs = @[].mutableCopy; 

    for (id name in @[    
     NSImageNameQuickLookTemplate, 
     NSImageNameBluetoothTemplate, 
     NSImageNameIChatTheaterTemplate, 
     NSImageNameSlideshowTemplate, 
     NSImageNameActionTemplate, 
     NSImageNameSmartBadgeTemplate, 
     NSImageNameIconViewTemplate, 
     NSImageNameListViewTemplate, 
     NSImageNameColumnViewTemplate, 
     NSImageNameFlowViewTemplate, 
     NSImageNamePathTemplate, 
     NSImageNameInvalidDataFreestandingTemplate, 
     NSImageNameLockLockedTemplate, 
     NSImageNameLockUnlockedTemplate, 
     NSImageNameGoRightTemplate, 
     NSImageNameGoLeftTemplate, 
     NSImageNameRightFacingTriangleTemplate, 
     NSImageNameLeftFacingTriangleTemplate, 
     NSImageNameAddTemplate, 
     NSImageNameRemoveTemplate, 
     NSImageNameRevealFreestandingTemplate, 
     NSImageNameFollowLinkFreestandingTemplate, 
     NSImageNameEnterFullScreenTemplate, 
     NSImageNameExitFullScreenTemplate, 
     NSImageNameStopProgressTemplate, 
     NSImageNameStopProgressFreestandingTemplate, 
     NSImageNameRefreshTemplate, 
     NSImageNameRefreshFreestandingTemplate, 
     NSImageNameBonjour, 
     NSImageNameComputer, 
     NSImageNameFolderBurnable, 
     NSImageNameFolderSmart, 
     NSImageNameFolder, 
     NSImageNameNetwork, 
     NSImageNameDotMac, 
     NSImageNameMobileMe, 
     NSImageNameMultipleDocuments, 
     NSImageNameUserAccounts, 
     NSImageNamePreferencesGeneral, 
     NSImageNameAdvanced, 
     NSImageNameInfo, 
     NSImageNameFontPanel, 
     NSImageNameColorPanel, 
     NSImageNameUser, 
     NSImageNameUserGroup, 
     NSImageNameEveryone, 
     NSImageNameUserGuest, 
     NSImageNameMenuOnStateTemplate, 
     NSImageNameMenuMixedStateTemplate, 
     NSImageNameApplicationIcon, 
     NSImageNameTrashEmpty, 
     NSImageNameTrashFull, 
     NSImageNameHomeTemplate, 
     NSImageNameBookmarksTemplate, 
     NSImageNameCaution, 
     NSImageNameStatusAvailable, 
     NSImageNameStatusPartiallyAvailable, 
     NSImageNameStatusUnavailable, 
     NSImageNameStatusNone]) 
    [imgs addObject:[NSImage imageNamed:name]]; 
    imgs.copy; 
    }); 
} 
@end 
+0

爲什麼你添加每張圖片1000次?沒有足夠的時間添加它? – mah 2014-10-20 13:16:21

+2

@mah我不知道...一些身體掠奪者留下了那個愚蠢的答案。這是一個稍微不那麼愚蠢的編輯,至少是一個實際的類別,哈哈。 – 2014-10-28 03:44:58