分析と広告のためのCookie
分析と広告のためにCookieを使っており、どちらもGoogleに送られます。拒否しても、目に見える動作は何も変わりません。プライバシーポリシーを読む
HEIF を BMP にする変換は、普通の 24 ビット Windows ビットマップを書きます。圧縮なし、1 ピクセルにつき 3 バイト、行は下から上へ。プログラムが他の何も受け付けないときだけの正解で、1200 万画素の写真はおよそ 36.6 MB になります。すべてこのページの中で完結します。
一度に100ファイルまで。フォーマットが混ざっていても構いません。
順番に変換し、まとめてZIPでダウンロードします。
HEIF から BMP
BMP はレガシー形式で、このページはそれを取り繕いません。名前に値する圧縮も、メタデータも、人が気にするどの軸で見ても PNG に対する優位性もありません。Microsoft が 1987 年に公開し、このページが書く 40 バイトのヘッダーは 1990 年の Windows 3.0 とともに登場し、世界はそこから先へ進みました。
それでも生き延びさせているのは、一度も先へ進まなかったソフトです。計測器の制御パネル、キオスク端末の表示、組み込み機器の起動画面、ファームウェアの画像読み込み、2003 年に一度だけコンパイルされて以来誰も触っていない社内ツール。これらはビットマップを読みます。ライブラリなしで瑣末に解析できるからです。あなたの状況がこれなら、BMP は悪い選択ではなく唯一の選択で、以下はそのバイトを正しくする話です。
BM という 2 文字で始まる 14 バイトのファイルヘッダー、続いて 1 つのカラープレーンと 24 ビット深度を宣言する 40 バイトの BITMAPINFOHEADER、そしてピクセルデータです。1 ピクセルあたり 3 バイト、青・緑・赤の順。これは仕様が求める順序であり間違いではありません。行は下から上へ保存され、これも仕様どおりです。
すべての行は 4 バイトの倍数まで詰められます。幅 4,032 ならパディングなしの 12,096 バイト、幅 4,031 なら 12,093 バイトに 3 バイトのパディングが加わります。行が連続していると仮定して解析するパーサーは、最初の行以降すべての行をずれた状態で読んでしまいます。自作の BMP ローダーにありがちな古典的な失敗です。
何も圧縮しないので、変換前に出力を計算できます。パディングされた行の長さ掛ける高さ、プラス 54 バイトのヘッダーです。4,032 かける 3,024 の 1200 万画素の写真は 36,578,304 バイトのピクセルデータ——およそ 36.6 MB——になり、元の HEIF はおそらく 2 か 3 MB だったはずです。
およそ 15 倍という係数が普通の結果で、だからこそ他のどの組み合わせよりも最大幅の設定がここで重要になります。渡すソフトが写真を 1,024 ピクセル幅で表示するなら、1,024 幅で変換すれば必要なものが 36 MB ではなくおよそ 3 MB で手に入ります。
この書き込み側は 24 ビットのピクセルを作るので、透明のための余地がありません。元にある透明な部分は先に平坦化されてから符号化され、何の上に平坦化されるかはドロップゾーンの上にある背景色で決まります。既定は白で、この設定は 2026 年 8 月に HEIC と HEIF のソースにも拡張されました。それ以前は PNG や WebP などアルファを持つと想定される形式からしか使えませんでした。
.heif ファイルがほぼ常に持つ写真では平坦化するものが何もなく、この論点は理屈の話にとどまります。切り抜きを持つ書き出し済みの図であれば重要になり、その場合 PNG は透明を保ちますが BMP は保てません。
HEIF の復号器が作り出したすべてのピクセルは、そのまま BMP に書かれるので、この方向は独自の圧縮の跡を新たに加えません。その狭い意味で、これは可逆な変換で、ファイルは復号結果への忠実な記録です。
ただし何も元に戻しません。カメラは HEIF を書いたときに写真を圧縮しており、その判断は復号器が渡すピクセルにすでに焼き込まれています。2 MB の写真の 36 MB のビットマップは、2 MB が持っていたのとちょうど同じだけの絵を、はるかに賢くない方法で保存しているだけです。
HEIF はチャンネルあたり 10 ビットまで規定されていて、広色域も扱えます。24 ビットの BMP はチャンネルあたり 8 ビットしか持てず、色空間という概念そのものがありません。数値が何を意味するかを書く場所がヘッダーのどこにもないのです。
ですから変換は切り捨てを行い、受け取るソフトはその値をそのまま普通の sRGB として解釈します。それが唯一の妥当な既定だからです。BMP を要求する種類のプログラムにとっては、たいてい問題になりません。絵が写真ではなく較正済みの計測データである場合にだけ知っておく価値があります。
BMP には EXIF も、タイムスタンプも、カメラの機種も、GPS 座標も入りません。2 つの別々の理由が重なっています。変換は生のピクセルへ復号してから再符号化するので、どんなメタデータブロックも生き残れないことと、そもそもこの形式にはそれを保存する場所がほとんどないことです。
それが望ましいこともあります。保存・索引・公開表示を行うシステムに絵を渡すとき、ビットマップはこれ以上ないほど中立的な入れ物です。ピクセルと寸法だけで、撮影者や場所を特定するものは何もありません。
ほぼすべてで、これがこの形式の唯一の本物の強みです。Microsoft Paint、GIMP、IrfanView はどれも開き、始まって以来すべての Windows API が理解し、ブラウザーも表示します。BMP はここで数少ないブラウザー対応が「完全」と記録された形式の 1 つで、結果を確認するにはタブに開くだけで済みます。
バッチごとに一度、その確認をする価値があります。渡した先の独自のソフトで画像が上下逆さまだったり色が入れ替わって見えたりしたら、原因はほぼ常に、行が上から下だと仮定するリーダーや RGB の順序を仮定するリーダーで、ファイル自体は正しいことがほとんどです。
復号器とビットマップの書き込み処理はどちらもブラウザーのタブの中で動くので、写真はアップロードされず、待ち行列にも入りません。これはこのページを読む人にとって実用的な意味を持ちます。渡すファイルは製造ラインの写真や患者記録、現地調査など、建物の外に出るべきではないものであることが多いからです。
無料枠は入力 100 MB までを受け付け、どの HEIF もそれを心配する必要はありません。ここで大きくなるのは出力の側です。フォルダーは進捗を示しながら変換され、2 個以上完了すると「すべてを ZIP で」というボタンが現れます。無圧縮のビットマップは ZIP の中でよく圧縮されるので、使う価値があります。
戻る道はありません。このサイトは LGPL-3.0 の libheif で HEIF を読みますが、この形式を書くことはできません。それには静的サイトが満たせない条件のライセンスの下にある HEVC 符号化器が必要だからです。
ビットマットは 15 倍の容量を占め、厳密により少ない情報しか持たないので、賢明な運用はそれをコピーとしてではなく出力として扱うことです。必要なときに機械のために作り、使い、消し、HEIF を保管しておけば、古いソフトが次にまた求めてきたときにいつでももう一度作れます。
| HEIF | BMP | |
|---|---|---|
| 正式名称 | High Efficiency Image File Format | Windows ビットマップ |
| 拡張子 | .heif | .bmp, .dib |
| メディアタイプ | image/heif | image/bmp |
| 圧縮方式 | 非可逆 — サイズを画質で買う | 無圧縮 |
| 最初の公開 | 2015 | 1987 |
| 発行元 | MPEG | Microsoft |
| 仕様 | ISO/IEC 23008-12 | — |
| ライセンス | 公開仕様、標準化はされていない | 公開仕様、標準化はされていない |
| 現在の位置づけ | 現行 | 旧式、ただし今もどこでも読める |
| ビット深度 | 10 | 8 |
| 扱える色 | YCbCr, 広色域 | RGB, インデックスカラー |
| ブラウザで開けるか | 一部のブラウザ | すべてのブラウザ |
| 代わりに検討される形式 | JPG, AVIF | PNG, TIFF |
BMP にはアルファチャンネルがありません。透明を含む HEIF ファイル から出てくると、その部分は塗りつぶされています——指定がなければ白です——そして BMP 側のどの設定でも、その透明を取り戻すことはできません。
BMP が持てるのは静止した 1 フレームだけです。動く HEIF ファイル からは最初のフレームだけが残り、あとは落ちます。この変換はそこから 1 枚の絵を取り出すもので、動きを運ぶものではありません。
HEIF は 1 チャンネルあたり 10 ビットまで扱え、BMP に残るのは 8 ビットです。この余裕こそが、思い切った補正をかけてもトーンジャンプを出さずに耐えるぶんです。ですから変換は編集のあとに行ってください。先ではありません。
BMP は今のブラウザーならどれでも開けます。HEIF はそこまでも届きません。ファイルがウェブページや申込フォームへ向かうのであれば、たいていはそれがこの変換の理由のすべてです。
結果は元より大きくなり、そして良くはなりません。HEIF はすでに細部を捨てており、BMP は残っているものをそれ以上捨てずに保持します。これは今後の劣化を止めますが、すでに起きた劣化を戻しはしません。
2 つは狙っている用途が違います。HEIF はスマートフォンと写真、BMP はプログラム間のデータ受け渡しです。ここは考える価値があります。一方が存在する理由が、そのままもう一方が使いにくい理由になっていることが多いからです。
HEIF は MPEG の形式です(2015 年に登場)。 記録は 1 チャンネルあたり 10 ビットです。
BMP は Microsoft の形式で、1987 年から使われています。Microsoft Paint、GIMP、IrfanViewがこの形式を読めます。
BMP は 1987 年、HEIF は 2015 年に登場しました。人に渡すならたいてい古いほうが安全で、新しいほうは同じ仕事をより少ないバイト数で片づけます。
いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。
はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。
BMP は圧縮するので、データはいくらか失われます。初期設定では気づかない程度ですが、確実にしたい場合は品質を上げてください。 変換先の形式は透明を扱えないため、透明だった部分は背景色で塗りつぶされます。
BMP にはアルファチャンネルがありません。透明を含む HEIF ファイル から出てくると、その部分は塗りつぶされています——指定がなければ白です——そして BMP 側のどの設定でも、その透明を取り戻すことはできません。
BMP が持てるのは静止した 1 フレームだけです。動く HEIF ファイル からは最初のフレームだけが残り、あとは落ちます。この変換はそこから 1 枚の絵を取り出すもので、動きを運ぶものではありません。
結果は元より大きくなり、そして良くはなりません。HEIF はすでに細部を捨てており、BMP は残っているものをそれ以上捨てずに保持します。これは今後の劣化を止めますが、すでに起きた劣化を戻しはしません。