ANI ファイル形式とは?
.ani ファイルは Windows アニメーション カーソルであり、静的な .cur ファイルのアニメーション版です。Microsoft によって開発され、1995 年に Windows 95 と共に導入されました。これは、オペレーティング システムがマウス ポインターのアニメーションとして循環させる一連のカーソル フレームを格納します。代表的な例は、Windows がタスクを処理している間に表示される回転する砂時計です。
内部的に .ani は RIFF コンテナー形式を使用しています。これは .wav オーディオや .avi ビデオと同じバイナリ コンテナー ファミリーです。ファイルはオフセット 0 の 4 バイト RIFF、オフセット 4 のリトルエンディアンのファイル サイズ、およびオフセット 8 のフォーム タイプ ACON (ANImated CONtent) で始まります。anih チャンクにはアニメーション ヘッダーが含まれ、フレーム数、ステップ数、およびデフォルトの表示レートが格納されます。オプションの rate および seq チャンクにより、フレームごとのタイミング(1/60 秒単位のジフィー)と非順次再生順序が可能になります。カーソル画像自体は icon サブチャンクの LIST 内にあり、各サブチャンクはホットスポット座標を含む完全な .ico 互換のカーソル フレームです。
各フレームは 1 ビット モノクロから 8 ビット アルファ チャネルを備えた 32 ビット RGBA までの色深度をサポートしており、滑らかなアンチエイリアス処理されたポインター エッジを実現します。フレーム サイズは通常 32×32 または 48×48 ピクセルですが、高 DPI ディスプレイ用に最大 256×256 までサポートされています。コンテナー レベルでの圧縮はありません。この形式は Windows 専用であり、1990 年代半ばから構造的に変更されていません。カスタムの .ani ポインターを適用するには、コントロール パネルの Windows ポインター設定を開きます。
セキュリティと安全性
リスク: MEDIUMほとんどの .ani ファイルは無害なアニメーション ポインターですが、この形式には注目すべきセキュリティ上の歴史があります。Windows の ANI 解析の欠陥('anih' ヘッダー)が、悪意のあるカーソルを読み込むだけでリモート コード実行を可能にする脆弱性として悪用されました(2005 年の MS05-002 および 2007 年の MS07-017/CVE-2007-0038)。これらの特定のバグはかなり前に修正されていますが、信頼できるソースからのカーソル パックのみをインストールし、Windows を最新の状態に保つという教訓は変わりません。信頼できない ZIP からのカーソルは、パッチが適用されていないシステムでは低いながらもゼロではないリスクを伴います。
形式の詳細
概要ANI ファイルを開くプログラム
技術的詳細
詳細仕様| コンテナー形式 | RIFF (Resource Interchange File Format)、フォーム タイプ ACON (ANImated CONtent) |
| マジック バイト | オフセット 0 に 0x52 0x49 0x46 0x46 ("RIFF")、オフセット 8 に "ACON" |
| バイト順序 | 全体を通してリトルエンディアン |
| アニメーション ヘッダー チャンク | "anih" チャンクにフレーム数、ステップ数、デフォルト表示レート、フレーム幅/高さ、ビット数、およびフラグを格納 |
| フレームごとのタイミング | オプションの "rate" チャンク:1 ステップにつき 1 つの DWORD(単位は 1/60 秒のジフィー)。欠落している場合は anih ヘッダーのレートにフォールバック |
| フレーム シーケンス | オプションの "seq" チャンクにより、格納順序とは無関係に非順次または繰り返しのフレーム再生順序が可能 |
| フレーム格納構造 | "icon" サブチャンクの LIST チャンク。各サブチャンクは完全な CUR/ICO 形式のカーソル画像を保持 |
| フレームごとの色深度 | ピクセルあたり 1, 4, 8, 24, または 32 ビット。32 bpp には滑らかなアンチエイリアス処理されたポインター エッジのための 8 ビット アルファ チャネルが含まれる |
| ホットスポット | 各フレームには、アクティブなクリック ポイントとして登録されるピクセルを示すホットスポット (x, y) 座標が埋め込まれている |
| フレーム寸法 | 通常は 32x32 または 48x48 px。高 DPI ディスプレイ用に最大 256x256 px までサポート |
| 圧縮 | RIFF コンテナー レベルではなし。個々のフレームは非圧縮の BMP ベースの CUR/ICO ビットマップとして格納 |
| 一般的なファイル サイズ | フレーム数と色深度に応じて 5 KB から 200 KB |
| MIME タイプ | application/x-navi-animation、または image/x-ani としても認識される |
| プラットフォーム サポート | Windows ネイティブ専用。Windows カーソル サブシステムによって直接使用される。macOS や Linux では組み込みのサポートなし |
| リリース日 | 1995 (Windows 95 - animated mouse pointers) |
| 最新バージョン | Stable since the 1990s; format unchanged |
| 仕様書 | learn.microsoft.com |
ANI の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。ANI ファイルについて最初の質問をしてみましょう。