Report-an-Apple-bug Friday! 4

2006-02-24 23:59:00 -08:00

I couldn’t remember on Friday what it was that I wanted to report. I finally remembered the Saturday afternoon after. so once again, I’m posting it late and forging the date. No rhyme intended.

This bug is TIFF files not supported as bundle icons, an enhancement request. As usual, I did not modify it for the open web except to HTMLize.


Summary:

Mac OS X only accepts IconFamily (icns) files as bundle (e.g. application) icons. Mac OS X should also accept TIFF files, which are more flexible and arguably easier to create (depending on your Terminal-fu).

Steps to Reproduce:

  1. Create a bundle.
  2. Place a TIFF file named “Icon.tiff” in the Contents/Resources subdirectory of the bundle.
  3. In Contents/Info.plist, set CFBundleIconFile to either “Icon.tiff” or “Icon”.

Expected Results:

Mac OS X, upon noticing the bundle, recognizes the TIFF file as the bundle’s icon. Finder uses as the bundle’s icon the image from the TIFF whose dimensions most closely match the target icon size defined in View Options.

Actual Results:

The bundle has a generic bundle or application icon.

Regression:

None known.

Notes:

A TIFF file can hold one or more images of any size. TIFF files containing more than one image can be created with the third-party tiffcp utility, or Apple’s tiffutil -cat that is based on tiffcp.

An IconFamily file is limited to five resolutions: 16-pt, 32-pt, 48-pt, 128-pt, and 256-pt. Also, the 256-pt resolution cannot be created with any current software. It is theoretically supported by the operating system, but no current application can create an IconFamily containing a 256-pt image — not even Icon Composer. tiffutil/tiffcp can and will easily add a 256-pt image to a TIFF file, or any other size image.

Besides the obvious MIP-mapping advantages, TIFF also supports compression. Images in a TIFF file can be compressed with JPEG, LZW, or PackBits, among other codecs. IconFamily does not support any compression. So given a TIFF file and an IconFamily file with the same set of images, the TIFF file would likely be smaller with the advantage of compression. This would also help ameliorate the disk-space hit of adding 256-pt images to some bundle icons.

UPDATE 2006-08-27: This was written before I found out that the 256-px images are compressed when they are stored into an IconFamily structure/file, and decompressed upon retrieval.

Leave a Reply

Do not delete the second sentence.