Appleアイコンの画像形式
Apple Icon Image形式は、Apple Inc.のmacOSで使用されるアイコン形式です。 16ビット×16、32×32、48×48、128×128、256×256、512×512、1024×1024ピクセルのアイコンをサポートし、1ビットと8ビットの両方のアルファチャネルと複数の画像状態(例:開いているフォルダーと閉じているフォルダー)。固定サイズのアイコンは、オペレーティングシステムによってスケーリングされ、任意の中間サイズで表示できます。
ファイル構造
ファイル形式は、8バイトのヘッダーとそれに続く任意の数のアイコンで構成されます。
ヘッダ
オフセット | サイズ | 目的 |
---|---|---|
0 | 4 | マジックリテラル、 "icns"(0x69、0x63、0x6e、0x73)でなければなりません |
4 | 4 | ファイルの長さ(バイト単位、msbが最初) |
アイコンデータ
オフセット | サイズ | 目的 |
---|---|---|
0 | 4 | アイコンの種類。以下のOSTypeを参照してください。 |
4 | 4 | データの長さ(バイト単位(タイプと長さを含む)、msbファースト) |
8 | 変数 | アイコンデータ |
圧縮
鉛 値 | 尾 バイト | 結果 非圧縮 |
---|---|---|
0…127 | 1…128 | 1…128バイト |
128…255 | 1バイト | 3…130コピー |
時間の経過とともにフォーマットが改善され、ピクセルデータの一部の圧縮がサポートされます。 32ビット(「is32」、「il32」、「ih32」、「it32」)およびARGB(「ic04」、「ic05」)ピクセルデータは、PackBitsと同様の形式で(チャネルごとに)圧縮されることがよくあります。いくつかのソースは、OSが圧縮または非圧縮の両方のデータチャンクをサポートしていると述べました。
次の擬似コードは、データを解凍します。
例:02 01 02 02 80 03 81 04 82 05は01 02 02 03 03 03 04 04 04 04 05 05 05 05 05に解凍する必要があります
アイコンの種類
OSType | 長さ(バイト) | サイズ(ピクセル) | サポートされているOSバージョン | 説明 |
---|---|---|---|---|
アイコン | 128 | 32 | 1.0 | 32×32 1ビットモノラルアイコン |
ICN# | 256 | 32 | 6.0 | 1ビットマスク付き32×32 1ビットモノラルアイコン |
icm# | 48 | 16 | 6.0 | 1ビットマスク付き16×12 1ビットモノラルアイコン |
icm4 | 96 | 16 | 7.0 | 16×12 4ビットアイコン |
icm8 | 192 | 16 | 7.0 | 16×12 8ビットアイコン |
ics# | 64(32 img + 32マスク) | 16 | 6.0 | 16×16 1ビットマスク |
ics4 | 128 | 16 | 7.0 | 16×16 4ビットアイコン |
ics8 | 256 | 16 | 7.0 | 16x16 8ビットアイコン |
is32 | 異なる(768) | 16 | 8.5 | 16×16 24ビットアイコン |
s8mk | 256 | 16 | 8.5 | 16x16 8ビットマスク |
icl4 | 512 | 32 | 7.0 | 32×32 4ビットアイコン |
icl8 | 1,024 | 32 | 7.0 | 32×32 8ビットアイコン |
il32 | 異なる(3,072) | 32 | 8.5 | 32x32 24ビットアイコン |
l8mk | 1,024 | 32 | 8.5 | 32×32 8ビットマスク |
ich# | 288 | 48 | 8.5 | 48×48 1ビットマスク |
ich4 | 1,152 | 48 | 8.5 | 48×48 4ビットアイコン |
ich8 | 2,304 | 48 | 8.5 | 48×48 8ビットアイコン |
ih32 | 変化する(6,912) | 48 | 8.5 | 48×48 24ビットアイコン |
h8mk | 2,304 | 48 | 8.5 | 48×48 8ビットマスク |
it32 | 異なる(49,152) | 128 | 10.0 | 128×128 24ビットアイコン |
t8mk | 16,384 | 128 | 10.0 | 128×128 8ビットマスク |
icp4 | 不定 | 16 | 10.7 | JPEG 2000またはPNG形式の16x16アイコン |
icp5 | 不定 | 32 | 10.7 | JPEG 2000またはPNG形式の32x32アイコン |
icp6 | 不定 | 64 | 10.7 | JPEG 2000またはPNG形式の64x64アイコン |
ic07 | 不定 | 128 | 10.7 | JPEG 2000またはPNG形式の128x128アイコン |
ic08 | 不定 | 256 | 10.5 | JPEG 2000またはPNG形式の256×256アイコン |
ic09 | 不定 | 512 | 10.5 | JPEG 2000またはPNG形式の512×512アイコン |
ic10 | 不定 | 1024 | 10.7 | JPEG 2000またはPNG形式のアイコン10.7で1024×1024(または10.8で512x512 @ 2x「網膜」)アイコン |
ic11 | 不定 | 32 | 10.8 | JPEG 2000またはPNG形式の16x16 @ 2x「網膜」アイコン |
ic12 | 不定 | 64 | 10.8 | JPEG 2000またはPNG形式の32x32 @ 2x「網膜」アイコン |
ic13 | 不定 | 256 | 10.8 | JPEG 2000またはPNG形式の128x128 @ 2x「網膜」アイコン |
ic14 | 不定 | 512 | 10.8 | JPEG 2000またはPNG形式の256x256 @ 2x「網膜」アイコン |
ic04 | 不定 | 16 | 16x16 ARGB | |
ic05 | 不定 | 32 | 32x32 ARGB | |
icsB | 不定 | 36 | 36x36 | |
icsb | 不定 | 18 | 18x18 |
- 長さ列の括弧()内の値は、圧縮されていない長さです。
- ARGB形式は、「ARGB」のASCII値と、密集した4つの圧縮チャネルで構成されます。
他のタイプ
OSType | 長さ(バイト) | 説明 |
---|---|---|
「目次」 | 不定 | 「目次」ファイル内のすべての画像タイプのリストとそのサイズ(Mac OS X 10.7で追加) |
「icnV」 | 4 | 4バイトのビッグエンディアンフロート-アイコンに作成されたIcon Composer.appのバンドルバージョン番号に等しい |
'名前' | 未知の | |
「情報」 | 259 | 情報バイナリplist。使用方法不明 |
サポート
さまざまな画像ビューアーが* .icnsファイルをロードできます。また、PNGとの間の無料およびオープンソースのコンバーターも存在します。GTK+は、2007。以降、*。icnsリソースをロードできます。およびIconBuilder。
MacOSは、*。icnsファイルをパックおよびアンパックする組み込みのiconutilコマンドラインツールを提供します。
外部リンク
- IconFamily – Apple icnsファイルを読み書きするためのオープンソースのObjective Cクラス
- osxiconutils-Apple icnsファイルを操作するコマンドラインツール