45

I can't seem to find Icon Composer on the Xcode versions at run on Mountain Lion.

enter image description here

Where is it? Has it been taken out? How to get it back?

4 Answers 4

46

It's been moved into one of the add-on packages for Xcode, and is now part of the Graphics Tools for Xcode package.

Apparently this is (at least partly?) because this is no longer the 'officially recommended' way to generate (high resolution) icons. See the OS X Human Interface Guidelines and the High Resolution Guidelines for more info.

I believe Icon Composer doesn't support the highest resolution icons required these days (1024x1024), and you're encouraged to use iconutil instead, which does, and allows you to convert between ICNS and "iconsets" (effectively just a folder containing a collection of PNG files of different resolutions).


If you still want it, you can get it as follows:

In Xcode, go to the Xcode > Open Developer Tool > More Developer tools....

You'll need to log in (or register) with your (free) Apple Developer account, and then you'll be shown a list of available packages for Xcode, including the Graphics Tools for Xcode. Grab the latest one and install.

This DMG of Graphics Tools contains:

  • CI Filter Browser
  • Icon Composer
  • OpenGL Driver Monitor
  • OpenGL Profiler
  • OpenGL Shader Builder
  • Pixie
  • Quartz Composer
  • Quartz Composer Visualizer
  • Quartz Debug
4
  • 1
    Actually you are mistaken. Icon Composer in its latest version does support the 1024x1024 size. Just go to the menubar and go to view > Show 1024x1024 or click the 1024x1024 button at the bottom of the window. I have made icons with that size before. Commented Aug 19, 2012 at 3:14
  • I found the answers above useful, especially from drfrogsplat. In addition to using Icon Composer, I find that I prefer a utility from iDeveloper - "Icon Generator" to quickly make icons in every required size. It's in the Mac AppStore.
    – ICL1901
    Commented Aug 19, 2012 at 3:41
  • 4
    Apple sez, "There is no longer a 1024x1024 size. That’s replaced by 512x512@2x," and "Don’t use Icon Composer—it can’t create high-resolution icns files." ...and lastly, "Use iconutil to Create an icns File Manually The iconutil command-line tool converts iconset folders to deployment-ready, high-resolution icns files. (You can find complete documentation for this tool by entering man iconutil in Terminal.)"
    – iynque
    Commented Jan 11, 2013 at 21:41
  • 3
    FYI: Icon Composer is no longer available in Additional Tools for Xcode 8.2 Commented Dec 22, 2016 at 20:37
15

What I found easier than downloading, installing, and finding Icon Composer was using the command-line tool iconutil.

  1. Put your png files of each size into a folder. The folder must have the extension .iconset
  2. Enter this command into the Terminal window:

    iconutil -c icns <iconset filename>

    where <iconset filename> is the path to the folder containing the set of pngs.

  3. The output .icns file is written to the same location as the folder.

You must have the following set of pngs:

icon_16x16.png
[email protected]
icon_32x32.png
[email protected]
icon_128x128.png
[email protected]
icon_256x256.png
[email protected]
icon_512x512.png
[email protected]
5
  • 2
    What's the difference between, for example, icon_128x128.png and [email protected]?
    – andrewrk
    Commented Dec 12, 2014 at 6:49
  • @andrewrk apparently, that means the resolution of the image should be doubled (2x). So [email protected] should be 256x256. Commented Feb 13, 2015 at 3:45
  • @GeorgeEdison ok then what's the difference between [email protected] and icon_256x256.png?
    – andrewrk
    Commented Feb 13, 2015 at 4:43
  • @andrewrk: there is no difference in size. This can be verified by using iconutil on an .icns file and examining the images that result. (Though I'm not sure I understand why either.) Commented Feb 13, 2015 at 5:37
  • 1
    @NathanOsman the difference is UID. While a 128x128@2x may be technically able to display the same data as an 256x256@1x, the output would be a lot smaller on the 128 variant and as such a human looking at it may benefit from simplified graphics at 2x resolutions.
    – dualed
    Commented Sep 18, 2015 at 12:46
13

Check out Icon Composer 2x. It's a replacement for Apple's Icon Composer that supports Retina Resolution Icons.

You can get it here: http://www.lemonmojo.com/work#IconComposer2x

I wrote the app, it's free and source code is available on Github if you're interested.

0
5

I created a droplet that creates an icon from a PNG using applescript, here's the code:

    on open input
    repeat with input in input
        set inputalias to input as alias
        tell application "Finder"
            set inputname to name of inputalias
            set inputcontainer to container of inputalias
        end tell
        if inputname ends with ".png" then
            set foldername to ((text 1 through ((length of inputname) - 4) in inputname) & ".iconset") as text
            tell application "Finder"
                try
                    make new folder at inputcontainer with properties {name:foldername}
                end try
                set thefolder to folder foldername of inputcontainer
                set iconnames to "icon_16x16.png
[email protected]
icon_32x32.png
[email protected]
icon_128x128.png
[email protected]
icon_256x256.png
[email protected]
icon_512x512.png
[email protected]"
                set iconnames to paragraphs of iconnames
                repeat with iconname in iconnames
                    duplicate inputalias to thefolder with replacing
                    set iconfile to file inputname of thefolder
                    set name of iconfile to iconname

                end repeat
            end tell

            set folderpath to POSIX path of (thefolder as alias)
            do shell script "iconutil -c icns " & (quoted form of folderpath)
            display dialog ("Icon created for " & inputname) giving up after 10
            tell application "Finder" to delete thefolder
        else
            display dialog (inputname & " cannot be made into an icon. Please choose a PNG file.")
        end if
    end repeat
end open
1
  • 1
    For future on-lookers: step.1: open applescript step.2: copy and paste the code JoeFrizzell posted above. Step.3: save as .app Step.4: drag and drop your .png onto the .app you just created.
    – Sentry.co
    Commented Dec 6, 2016 at 16:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .