ICO を PNG に変換 — 中の絵を取り出す

アイコンファイルは複数の大きさの同じアイコンを入れた入れ物で、PNG はちょうど 1 枚の絵しか持ちません。ですから ICO を PNG にする変換は、その中の絵を 1 つ選び、残りを置いていくことです。選ばれるのはいちばん大きなもので、透明はそのまま保たれます。ファイルを上に置けばブラウザーの中で復号され、書き直されます。

  • 処理される場所 ブラウザーの中です。ファイルがアップロードされることはありません。
  • 可逆 何も捨てられません。PNGはICOが持っていたものをそのまま保持します。
  • ファイルサイズの上限 1ファイルあたり100MBまで。無料、アカウント不要です。

一度に100ファイルまで。フォーマットが混ざっていても構いません。

ICOからPNGへの変換で実際に起きること

ICO 139 KBPNG 139 KB 0% 小さい

なだらかな階調、やわらかい輪郭、粒状感のある写真です。PNGが想定している、あるいは想定していない典型例で、数値がどちらなのかを示します。 どちらの画像もコードで描き、このページで動くのと同じ変換器でエンコードしています。つまりサイズは当サイト自身の出力です。

ICO 7 KBPNG 7 KB 0% 小さい

背景が透明で、図形にグラデーションがかかっています。PNGは両方を保持するか、片方だけ保持するか、透明部分を単色で塗りつぶすかのいずれかです。ここが見落とされがちな差です。 どちらの画像もコードで描き、このページで動くのと同じ変換器でエンコードしています。つまりサイズは当サイト自身の出力です。

ICO 3 KBPNG 3 KB 1% 小さい

インターフェース、グラフ、ロゴのような、平坦な色と硬い輪郭です。上の写真とは挙動がまったく違い、答えが「ファイルの中身による」になる理由でもあります。 どちらの画像もコードで描き、このページで動くのと同じ変換器でエンコードしています。つまりサイズは当サイト自身の出力です。

アイコンファイルはフォルダーで、PNG はその中の 1 ページです

これは多くの変換ツールが教えてくれないことです。ICO は画像ではなく、それぞれ大きさの違う複数の画像を持つ小さなディレクトリです。混み合ったタスクバーで鮮明な 16 ピクセル版を、デスクトップで鮮明な 256 ピクセル版を、どちらも拡大縮小せずに Windows が表示できるようにするためです。よくできたアプリケーションアイコンはたいてい 4 から 6 個のエントリを持ちます。PNG には 1 枚の絵の余地しかなく、ディレクトリという概念自体がありません。

ですからこの変換は再符号化ではなく、選択に続いて再符号化を行うものです。興味深い問いはどのエントリが選ばれるかで、このページの残りはすべてそこから導かれます。

いちばん大きなエントリが PNG になります

復号はこのページに同梱されたライブラリではなく、あなたのブラウザーが行います。どのブラウザーのアイコン復号器もディレクトリの中でいちばん大きな画像を返します。これは仮定ではなく実測しました。16、32、48、256 ピクセルのエントリをそれぞれ違う色で描いたアイコンファイルを作り、結果を取り違えようがないようにしたところ、256 エントリの色で 256 ピクセルの PNG が戻ってきました。ディレクトリを小さい順、大きい順、シャッフルした順に書き換えても何も変わりませんでした。

実務上の結果は、選べないということです。ファイルが 256 ピクセルの画像を持っているなら、それが得られる絵で、16、32、48 ピクセルの絵はメッセージもなく捨てられます。しかもそれらこそ、誰かがいちばん時間をかけたエントリであることが多いのです。

256 ピクセルが、どんなアイコンにも共通の天井です

ICO のエントリは幅と高さをそれぞれ 1 バイトで記録し、255 で頭打ちになり、値 0 を 256 の意味に予約しています。これがすべての天井です。世界中のどのアイコンファイルも 256 ピクセルを超える画像を持たないので、そこから作られる PNG もそれより大きくはなりません。

これは誰かにロゴを求められたときに重要です。アイコンファイルは元となる素材ではなく、256 ピクセルの PNG をスライドの全幅に置いたり任意のサイズで印刷したりすれば、ぼやけて見えます。サムネイル以上の用途に PNG を使うなら、アイコンを変換するのではなく元のアートワークを探しに行ってください。アイコンはそこから作られたのであって、逆ではありません。

透明な角は変換をそのまま通り抜けます

どちらの形式も本物の 8 ビットアルファチャンネルを持てるので、角の丸いアイコンや切り抜かれたマーク、柔らかいドロップシャドウは描かれたとおりに PNG へ届きます。選ぶべき背景色も、あとで切り取る白い箱もありません。テストアイコンでは出力の角のピクセルは 0,0,0,0——不透明度ゼロの黒ではなく完全な透明——と読めました。

これが PNG がここで正しい行き先で JPG が違う理由です。アイコンが色付きの背景——暗いテーマのドキュメントサイト、スライド、アプリストアのグリッド——に置かれる可能性が少しでもあるなら、アルファチャンネルこそこの変換をわざわざ行う理由そのものです。

ピクセルそのものは何も捨てられません

どちら側も可逆です。アイコンは生のピクセルへ復号され、その正確な値が PNG に書かれるので、間違えようのある品質設定はなく、同じファイルを 2 回変換しても世代劣化は起きません。変わるのは梱包であって絵ではありません。

PNG はそのあと oxipng を通り、平凡な符号化器が書くものの大きな部分を、ピクセルに一切触れずに取り除きます。8,471 バイトのテストアイコンから作られた 256 ピクセルの PNG は 1,737 バイトで、元のアイコンより小さくなりました。アイコンは同じ絵を 4 つ複製して持っていましたが、PNG は 1 つだけ持つからです。

16 や 32 ピクセルの絵を代わりに取り出すには

小さいエントリが本当に欲しいものなら、このページはそれを渡せず、ブラウザーの復号器を経由するどの変換ツールも同じです。良いアイコンの小さいサイズは縮小コピーではなく、線を整数ピクセルに合わせ、細部を削って、その大きさでも読み取れるように描き直されています。256 ピクセルの PNG を縮小すると、見た目にはっきり劣った結果になります。

この仕事にはアイコン編集ソフトを使ってください。GIMP は ICO を開いて各エントリを別々のレイヤーとして表示し、1 つずつ書き出せて、費用もかかりません。IcoFX は Windows 上で同じことを、より親しみやすい操作画面で行います。

古い favicon.ico が実際に持っているもの

ウェブから拾った favicon は、天井が示唆するよりずっと小さいことがよくあります。高解像度画面が重要になる前に書かれたファイルは 16 ピクセルの絵しか持たないことが多く、16 と 32 の両方を持つこともあります。256 ピクセルのエントリが一般的になったのは Windows とブラウザーが大きなタイルにそれを使い始めてからです。ですから古いサイトの favicon.ico は 16 ピクセルの PNG しか生み出さないことがあり、それがそのファイルが持っていたものの正直な上限です。

結果は正しく見え、favicon 以外にはほとんど使い物になりません。これは変換の欠陥ではありません。それより大きい絵はそもそも保存されていませんでした。そのサイトが大きい版を公開しなかった証拠として受け止め、マークは別の場所を探してください。

PNG を favicon やアプリアイコンのセットに戻す

現代の favicon のマークアップは PNG を直接受け付け、多くのサイトは今では従来のアイコンファイルに加えて、ルートに 32 ピクセルの PNG、180 ピクセルの apple-touch-icon、SVG を宣言しています。サイトを刷新するために ICO を PNG に変換したなら、ここで得られる PNG は、元が十分大きなエントリを持っていた場合、それらの宣言にそのまま使える入力です。

ネイティブアプリのアイコンでは、プラットフォームが厳密なピクセル寸法を求めます。256 ピクセルの PNG では 512 や 1024 ピクセルの枠を正直に埋められません。プラットフォームがそれを求めるなら、アイコンファイルは出発点として不向きで、ベクター素材かフル解像度の原本が正しい出発点です。

アイコンファイルのフォルダーを一度にまとめて変換する

セット全体を置いてください。それぞれのアイコンが個別に復号・書き出しされ、結果は ZIP で返ります。これはよくある用事の形です。誰かがアプリケーションアイコンのディレクトリを引き継ぎ、ドキュメントページや資産一覧のためにそのすべてを画像として必要としています。

処理はブラウザーの中で行われるので待ち行列もファイルごとのアップロードもなく、10 番目のファイルも最初のファイルとまったく同じように扱われます。小さいエントリしか持たないファイルは小さい PNG になるので、セットが一様だと決めつけず ZIP の中の寸法を確認してください。混在するアイコンセットはほとんどの場合、一様ではありません。

ICO を PNG に変換する手順

  1. お手元の ICO ファイル をこのページに落とすか、押してファイルを選んでください。
  2. 変換先に PNG を選びます。変換はブラウザーの中で行われ、ファイルはアップロードされません。
  3. できあがった PNG ファイル をダウンロードします。

ICO と PNG——何が変わるか

ICOとPNGの比較
ICOPNG
正式名称Windows アイコンPortable Network Graphics
拡張子.ico.png
メディアタイプimage/x-iconimage/png
圧縮方式可逆 — 何も捨てない可逆 — 何も捨てない
最初の公開19851996
発行元MicrosoftPNG Development Group
仕様ISO/IEC 15948
ライセンス公開仕様、標準化はされていないオープン標準
現在の位置づけ限定的現行
ビット深度816
扱える色RGB, インデックスカラーRGB, グレースケール, インデックスカラー
最大の画像1辺 256 px1辺 2,147,483,647 px
ブラウザで開けるかすべてのブラウザすべてのブラウザ
代わりに検討される形式SVGWebP, SVG, JXL

失われるもの

PNG が持てるページは 1 枚です。複数ページの ICO ファイル は 1 ファイルにまとまらず、ページごとに変換されます。

残るもの

失われるものはありません。ICO も PNG も中身を劣化なしに保持します。この変換が変えるのは包み方であって品質ではないので、劣化が積み重なる心配をせずに何度でも繰り返せます。

透明は保たれます。ICO も PNG もアルファチャンネルを扱えるので、切り抜いた部分は切り抜かれたままで、その後ろに何かが塗られることはありません。

結果を開く

GIMPは ICO と PNG のどちらも読めるので、別のプログラムを開かずに、結果を元のファイルと並べて確かめられます。

どちらの形式が何のためのものか

ICO は Microsoft の形式です(1985 年に登場)。 記録は 1 チャンネルあたり 8 ビットです。

PNG は PNG Development Group の形式で、1996 年から使われています。規定は ISO/IEC 15948 です。Adobe Photoshop、GIMP、Paint.NETがこの形式を読めます。

ICO から PNG:よくある質問

ICO ファイル はどこかにアップロードされますか。

いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。

ICO から PNG への変換は無料ですか。

はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。

ICO を PNG に変換すると品質は落ちますか。

いいえ。PNG は同じ内容を何も捨てずに保持できるので、結果は品質の点で元のファイルと同じです。

複数ページの ICO ファイル は 1 つの PNG に収まりますか。

PNG が持てるページは 1 枚です。複数ページの ICO ファイル は 1 ファイルにまとまらず、ページごとに変換されます。

ICO から PNG への変換は可逆ですか。

失われるものはありません。ICO も PNG も中身を劣化なしに保持します。この変換が変えるのは包み方であって品質ではないので、劣化が積み重なる心配をせずに何度でも繰り返せます。

ICO から PNG にすると、透明は残りますか。

透明は保たれます。ICO も PNG もアルファチャンネルを扱えるので、切り抜いた部分は切り抜かれたままで、その後ろに何かが塗られることはありません。

これらのフォーマットについて

この数値の出典

このページがICOとPNGについて述べていることは検証できます。根拠となる資料は次のとおりです。