ICO を PNG に 変換
Windows用のアイコンファイル(.ico)を、ブラウザ内で高速かつ安全に背景透過のPNG画像へ変換します。
ICOをここにドロップ
最大50MBまで対応
Windows用のアイコンファイル(.ico)を、ブラウザ内で高速かつ安全に背景透過のPNG画像へ変換します。
最大50MBまで対応
ICO は、1990 年に Windows 3.0 用に発明されたアイコン ファイル形式で、現在でも Web 上の事実上のファビコン形式として使用されています。その名前とは異なり、ICO ファイルは、異なるサイズと色深度の複数の画像を保持できるコンテナです。一般的な Windows デスクトップ ICO では、同じアイコンの 16×16、32×32、48×48、64×64、128×128、および 256×256 のバージョンがバンドルされる場合があります。オペレーティング システムは、表示コンテキストに一致するサイズを選択します。 ICO を PNG に変換するとは、これらの埋め込み画像を 1 つ以上抽出し、スタンドアロンの PNG ファイルとして保存することを意味します。
このコンバータはブラウザの ICO ヘッダーを解析し、埋め込まれたすべての画像エントリを識別し、それぞれをデコードします。最新の ICO ファイルのほとんどは、内部的に画像を PNG として保存します。古いものは BMP スタイルの生のビットマップ データを使用します。両方のエンコーディングが処理されます。出力は、埋め込まれた画像ごとに 1 つの PNG です。つまり、一般的な Windows アイコンの場合、異なるサイズの 6 つ以上の PNG ファイルを意味します。
ファイルがデバイスの外に出ることはありません。解析は JavaScript で行われ、DataView を使用して ICO ディレクトリを読み取り、各画像の適切なデコーダにディスパッチします。出力 PNG は、canvas.toBlob('image/png') によって生成されます。
ICO は Windows 中心の形式であり、適切に処理できる画像エディタはほとんどありません。 Photoshop にはプラグインが必要です。多くの Web ベース ツールは ICO をまったく読み取ることができません。 Linux デスクトップ環境では、ICO が 2 番目のクラスとして扱われます。 PNG は広くサポートされています。既存の ICO を PNG に変換すると、任意のツールで開いて編集できるファイルが生成されます。
もう 1 つの一般的な理由は、個々のサイズを抽出することです。ファビコンを更新する Web 開発者は、多くの場合、既存の ICO の 32×32 または 64×64 バージョンのみを必要とします。従来のアイコンを再描画するデザイナーは、開始点として最大の埋め込みバージョンを必要とします。どちらのワークフローも、ICO コンテナーを直接処理するのではなく、サイズごとに 1 つずつ個別の PNG ファイルを抽出することでメリットが得られます。
ICO をドロップし、埋め込みサイズごとに 1 つの PNG を取得します。
ICO ファイルは 6 バイトのヘッダー (ICONDIR) で始まり、その後にエントリのディレクトリ (ICONDINTRY、各 16 バイト)、そして各エントリの画像データが続きます。各ディレクトリ エントリは、幅、高さ、色数、画像バイトを指すオフセットとサイズを指定します。
画像データは、BMP スタイルの DIB (BITMAPFILEHEADER なし) または直接埋め込まれた完全な PNG ファイルとしてエンコードされます。 PNG エンコードされたエントリは、256 × 256 の最新のアイコンで一般的であり、先頭に標準の PNG 署名が付いています。 BMP スタイルのエントリでは、ファイル ヘッダーが省略されますが、情報ヘッダーとピクセル データが含まれます。
このコンバータはディレクトリを読み取り、各エントリを見つけて、適切なデコーダにディスパッチします。 PNG エントリは、Blob 要素と Image 要素を使用してデコードされます。 BMP エントリは、BITMAPINFOHEADER を解析し、ピクセルをキャンバスに手動で書き込むことによって読み取られます。出力は常に PNG です。