A command-line tool to postprocess iconutil-generated .icns files to make them compatible with Mac OS X 10.5
Objective-C
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

oldiconutil

A tool to postprocess iconutil-generated .icns files to make them compatible with Mac OS X 10.5

Syntax

Syntax: oldiconutil {--help|[--inplace [--compression ]|--list] } Convert a .icns icon file holding PNG-encoded icons (supported in 10.6) to JPEG 2000-encoded icons (supported in 10.5).

--help - Show this message.

icnsFilePath - Path of input icns file. Output file will have _10_5 appended to its name, unless the --inplace option is given, in which case it'll replace the input file.

If --list is given, oldiconutil will simply print a description of the file.

--compression - One of the compression formats of tif, bmp, gif, jpg, png, jp2, immediately followed by a number from 0.0 (best compression) through 1.0 (no compression) indicating how much to compress. If you do not provide a format, the default is jp2 (JPEG 2000), if you do not specify a compression factor, it defaults to 1.0 (uncompressed). Note not all formats may be recognized by Mac OS X Finder (especially in 10.5), but are provided for people who want to experiment.

Background

In Mac OS X 10.6, Apple introduced support for PNG-compressed icon data in .icns files. In Mac OS X 10.8, Apple introduced support for Retina icons and the iconutil command-line tool for generating icons from a folder of PNG files.

However, iconutil only knows how to generate PNG-compressed icon data, which means that you can't use it to create a Retina icon that will still display properly on Mac OS X 10.5.

Note: There seems to be a file size limit of some sort on 10.5 as well. Adjust the compression to reduce your icon's size if it still doesn't display on 10.5.

Solution

oldiconutil post-processes any .icns files you give it, extracts the PNG data and re-compresses it using JPEG 2000. If you give it an icon generated by iconutil, you can create a Retina icon that displays correctly and beautifully on Mac OS X 10.8 all the way back through Mac OS X 10.5

License

Copyright 2012 by Elgato Systems GmbH.

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:

   1. The origin of this software must not be misrepresented; you must not
   claim that you wrote the original software. If you use this software
   in a product, an acknowledgment in the product documentation would be
   appreciated but is not required.

   2. Altered source versions must be plainly marked as such, and must not be
   misrepresented as being the original software.

   3. This notice may not be removed or altered from any source
   distribution.