手短な結論
HEIC は iPhone の写真を保存するのには向いていますが、オープンなウェブに画像を公開する際の既定としては、いまだにあまり適していません。フォーマットとしてはサイズを節約でき、視覚品質もよく保たれ、モダンな Apple のソフトウェア内ではスムーズに動きます。問題は、同じファイルがブラウザ、アップロードフォーム、CMS、メールクライアント、Windows デバイス、Android デバイス、画像 CDN、SNS の投稿予約ツールなどを通過しなければならないときに始まります。
公開ウェブサイトには、公開する前に変換しましょう。ウェブ配信には WebP か AVIF、互換性フォールバックとして JPEG を残し、PNG はフォームが求めるとき、または可逆な編集用コピーが要るときだけに使います。iPhone のスペース節約用マスターを残したいなら、元の HEIC を保管しておきましょう。
これは HEIC が悪いフォーマットだからではありません。ウェブ画像には、幅広いデコーダ対応、予測可能な MIME 処理、サムネイル生成、フォールバック動作、シンプルなサーバー処理が必要で、HEIC はその運用面のいくつかでまだ弱いからです。
HEIF と HEIC はまったく同じものではない
多くの記事が飛ばす最初の細部:HEIF と HEIC は関係はしていても、同じではありません。
HEIF は High Efficiency Image File Format の略で、コンテナです。コンテナは画像データ、サムネイル、シーケンス、メタデータ、深度情報などの補助データを格納できます。HEIC は iPhone 写真でおなじみの形で、画像データを HEVC(H.265 とも)で符号化した HEIF ファイルです。
この違いは実際のワークフローで効いてきます。あるシステムが HEIF コンテナは理解できても、典型的な .heic 写真を読むには HEVC デコーダが別途必要、ということが起こります。Microsoft のサポート案内もその分裂を反映しており、Windows ユーザーが Apple 風の HEIF/HEVC メディアを扱うには、フォトアプリが使う前に HEIF と HEVC の両方のコンポーネントが必要になることがある、とされています。
平たく言うと:
| 用語 | 意味 | 重要な理由 |
|---|---|---|
| HEIF | コンテナ形式 | 異なる画像符号化やメタデータを収められる |
| HEIC | HEVC で圧縮した HEIF | よく見る iPhone 写真ファイル |
| HEVC | 多くの HEIC ファイル内部の圧縮技術 | ライセンス/デコーダ問題の元になりがち |
| JPG/JPEG | 古くから広くサポートされる写真フォーマット | 大きいが、ほぼどこでも使える |
| WebP/AVIF | モダンなウェブ配信フォーマット | 公開サイトに向く |
ウェブ互換性の問題は、たいてい「ピクセルが悪い」のではなく、「受け取り側のソフトウェアに、コンテナとコーデックの適切な経路が揃っていない」ということです。
iPhone が HEIC を使う理由
Apple は iOS 11 と macOS High Sierra で HEIF と HEVC のサポートを導入しました。Apple サポートは実務的な理由を明確に述べています:HEIF と HEVC は JPEG や H.264 と同程度の視覚品質を保ちながらより高い圧縮効率を持ち、そのため端末や iCloud 写真でのストレージ消費が少なくて済みます。
このトレードオフはスマートフォンのカメラには理にかなっています。人は何千枚もの写真を撮り、何年も保存し、その多くを「写真」「メッセージ」「AirDrop」「iCloud」「プレビュー」など、Apple 側で意識してあるアプリで見ます。その世界の中では、HEIC はほぼ「透明」です。写真は普通に見え、ストレージは節約できます。
Apple はユーザーに互換性の切り替えも用意しています。iPhone や iPad で「カメラ」>「フォーマット」>「互換性優先」にすれば、新しい写真は JPEG で撮られます。「高効率」に戻せば HEIF/HEVC に戻ります。Apple はさらに、AirDrop、メッセージ、メールなどで共有する際、受信側が新しいフォーマットに対応していない場合には端末が自動でより互換性の高いバージョンを送る「ことがある」とも記しています。
その「ことがある」が曲者です。自動変換は助けにはなりますが、すべてのウェブアップロード経路をカバーしません。「ファイル」から選ぶ、iCloud からオリジナルを書き出す、生の .heic を CMS にドラッグする、デスクトップのフォルダからアップロードする、といった操作では、サイト側が元の HEIC を受け取ってしまうことがあります。
本当の問題はブラウザ対応
ウェブサイトが必要としているのは「どこかのデバイスの誰かが」画像を開けることではありません。訪問者のブラウザが <img> タグ、CSS 背景、SNS プレビュー、CMS プレビュー、検索プレビュー、画像 CDN、時にはメールクライアントやアプリの Webview で画像をデコードできる必要があります。
MDN の画像フォーマットガイドが挙げるウェブ画像フォーマットは AVIF、GIF、JPEG、PNG、SVG、WebP です。HEIC はこの一般的なクロスブラウザ集合には含まれません。Safari 17 は Safari、Safari View Controller、WKWebView で HEIC 対応を追加し、Apple 中心の取り込みや編集フローには役立ちますが、Safari の機能だからといって Chrome、Firefox、Edge、Android、Windows、埋め込みブラウザ、あらゆるアプリ Webview で安全に使えるとは限りません。
微妙なのはここです。「Safari は HEIC に対応する」と「HEIC は公開ウェブで安全に使える」は別の主張です。
| ブラウザ/ワークフロー | 公開配信での HEIC の実状 |
|---|---|
| Apple 上の Safari 17+ | HEIC を扱える。Apple デバイス系ワークフローに有用 |
| Chrome / Edge / Firefox の公開配信 | HEIC がレンダリングされることを前提にしない |
| Android のアプリ内ブラウザ | HEIC がレンダリングされることを前提にしない |
| CMS のメディアライブラリプレビュー | ブラウザとサーバー側の画像スタック次第 |
| 画像 CDN のリサイズ | 処理バックエンドのデコーダ対応次第 |
| メールクライアント | 明示的にテストされていない限り HEIC はリスクとみなす |
公開画像 URL には、ブラウザやツールが想定しているフォーマットを使いましょう。WebP、AVIF、そして JPEG のフォールバックは HEIC ほど「かっこよく」はありませんが、ページが壊れ画像アイコンを見せることは避けられます。
Safari 17 の対応は助けにはなるが、フォールバックの必要性を消しはしない
WebKit は Safari 17、Safari View Controller、WKWebView での HEIC 対応を発表しました。Apple Developer の WWDC23 メディアフォーマットセッションでも、HEIC は iPhone からアップロードされた写真を変換せずに扱う手段として位置付けられており、特に Apple のウェブや App View の文脈で有用とされています。
これは確かな前進です。Apple デバイスのユーザーが使うウェブアプリなら、以前より直接的に iPhone 写真を取り込み・プレビュー・編集できるということです。
しかし Apple 自身、HEIC は他のプラットフォームでは広く対応されておらず、代替フォーマットとして使うのが望ましい、とも述べています。同じセッションでは、ブラウザが対応しているフォーマットを選べるよう <picture> 要素を使うことが推奨されています。
Apple ユーザーが多い、コントロールされたアプリ向けなら、こういうパターンをテストする価値があります:
<picture>
<source srcset="/photos/hero.heic" type="image/heic" />
<source srcset="/photos/hero.avif" type="image/avif" />
<source srcset="/photos/hero.webp" type="image/webp" />
<img src="/photos/hero.jpg" width="1200" height="800" alt="Product photo" />
</picture>
多くの公開サイトでは発想を逆にします:まず AVIF か WebP、フォールバックに JPEG、HEIC は元のアップロードや内部マスターとしてのみ保存する。公開ページが HEIC の可用性に依存すべきではありません。
HEIC が実際のウェブフローで崩れる場所
HEIC の失敗はドラマチックには見えません。たいてい退屈で、そして分かりにくいです:
- アップロードボタンはファイルを受け付けたが、プレビューが真っ白。
- サーバーが
image/heicを許可 MIME に含めていないので拒否される。 - ブラウザが返す
file.typeが空、または想定外。 - CMS は元ファイルを保存できるが、サムネイルを生成できない。
- 画像最適化プラグインがそれをスキップする。
- CDN がリサイズできない。
- SNS の共有プレビューに画像がない。
- Windows の受信者は開けない添付ファイルを見る。
- ヘルプデスクに「写真が壊れている」というチケットが来るが、明らかな原因はない。
自分の iPhone では動くのに HEIC が信用ならなく感じるのはこのためです。ウェブ公開は連鎖です。ファイルはファイルピッカーでの認識、クライアントのプレビュー、アップロード検証、サーバーでのデコード、派生ファイルの生成、CDN 配信、ブラウザのレンダリング、さらには検索・SNS プレビューまで生き延びる必要があります。どこか 1 か所で対応が欠けるだけで、破綻します。
Windows 対応 ≠ ブラウザ対応
Windows は、Microsoft Store の適切な拡張機能やアプリの対応があれば、HEIF/HEVC ファイルを扱えるケースがあります。Microsoft はフォトアプリでこれらのファイルを使うには HEIF と HEVC 拡張機能が必要になる場合がある、と述べています。また、OneDrive はウェブ上で HEIF/HEVC ファイルをプレビューできる一方、Windows にダウンロードしたファイルはローカルで開くのに別途コーデックが必要になることがある、とも記しています。
しかしそれは、Windows の訪問者のブラウザがあなたの .heic 画像 URL をレンダリングできる、という意味ではありません。OS のプレビュー対応、OneDrive のプレビュー対応、フォトアプリの対応、ブラウザの画像デコード、それぞれ別物です。
これは開発者がハマりやすい罠です:
- Windows のマシンで拡張機能を入れると、フォトアプリで HEIC が開ける。
- 開発者はそのファイルを「対応済み」だと結論する。
- 同じファイルを普通のウェブ画像として使うと、別のユーザーで失敗する。
ウェブ配信のためには、OS のプレビューアプリではなく、対象ブラウザでテストしてください。
アップロードフォームが HEIC を拒否する理由
多くのアップロードフォームは、実務上のファイルリストが「JPEG、PNG、あとせいぜい WebP」だった時代に書かれています。チェックはたいていこんな形をしています:
- 拡張子のホワイトリスト:
.jpg、.jpeg、.png、.webp。 - MIME のホワイトリスト:
image/jpeg、image/png、image/webp。 - サーバーの画像ライブラリ:JPEG/PNG/WebP/AVIF のデコーダを想定。
- サムネイルジョブ:HEIC 対応が入っていないライブラリを呼ぶ。
- ファイルサイズ規則:変換後の出力が JPEG である前提。
HEIC はこれらのどのチェックでも落ちる可能性があります。フロントが image/* を受け付けても、サーバー側で拒否されるかもしれません。サーバーが保存しても、サムネイル生成が失敗するかもしれません。サムネイル生成が通っても、最終的な公開 URL がすべてのブラウザでレンダリングされないかもしれません。
ユーザーが写真をアップロードするサイトを運営しているなら、いちばん安全なフローはこうです:
- iPhone からのアップロードがあるなら、HEIC を入力形式として受け入れる。
- クライアントかサーバー側でデコードする。
- 元ファイルが要るなら保存する。
- 公開配信ファイルは WebP/AVIF と JPEG フォールバックで生成する。
- 変換に失敗したときは、ユーザーにわかりやすいメッセージを表示する。
生の HEIC を唯一の公開画像として配信しないこと。
HEIC を何に変換するか
最適な出力は、写真の行き先で決まります。
| 送り先 | 推奨出力 | 理由 |
|---|---|---|
| メール添付 | JPG | 混在した受信者にいちばん安全 |
| 行政や求人応募フォーム | 特に指定がなければ JPG | 大半のアップロード検証が想定している |
| PNG を要求するフォーム | PNG | フォームの要件に従う |
| 公開ウェブサイトの写真 | WebP + JPEG フォールバック | JPEG より小さく、ブラウザ対応も広い |
| 高トラフィックサイトのヒーロー | AVIF + WebP/JPEG フォールバック | パイプラインが対応できるなら強い圧縮 |
| スクリーンショット的な HEIC | PNG または可逆 WebP | 文字や平坦なエッジがきれいに残る |
| Apple 写真内のアーカイブ | HEIC のまま | 容量を節約しつつオリジナルを維持 |
| 古いソフトウェアでの編集 | JPG または PNG | インポートで嫌なサプライズが少ない |
JPG は互換性の解、WebP はふつうウェブ配信の実務解、AVIF はフォールバックを生成・テストできるときに有用、PNG は厳密なピクセルやフォームの明示要件のためのものです。普通の写真のためのものではありません。
ウェブ用途での HEIC 対 AVIF
HEIC と AVIF はどちらもモダンで、どちらも HEIF 系のコンテナに入ることがあるため混同されがちです。サイト運営者にとっての違いは「採用の広さ」です。
MDN は AVIF を Chrome、Edge、Firefox、Opera、Safari で対応されているウェブ画像フォーマットとして挙げています。Chrome の Lighthouse は、AVIF と WebP がモダンな画像フォーマットとして古い JPEG や PNG より転送サイズを小さくできるとして推奨しています。Google の WebP ドキュメントも、WebP は主要ブラウザでネイティブ対応され、ウェブマスターにとって広く有用だと述べています。
HEIC には同等のクロスブラウザストーリーがありません。Apple のワークフローの中では素晴らしくもなり得ますが、公開ウェブは「どこでもレンダリングされるか、きれいに劣化するフォーマット」を報います。
このルールでいきましょう:
- 元の iPhone ストレージには HEIC。
- 日常のサイトの既定には WebP。
- バイト削減がパイプラインの複雑さを正当化するページに AVIF。
- フォールバック用途とウェブ以外の互換用途には JPEG。
- 精密なグラフィックや厳格なアップロード要件には PNG。
変換時のメタデータとプライバシー
HEIC 写真は JPEG と同じような、気になる種類の機微メタデータを持ちえます:GPS 座標、撮影時刻、デバイスモデル、レンズ情報、ソフトウェア履歴などです。コンバータの中にはメタデータを保持するものもあれば、削るもの、部分的にしか残さないものもあります。
PhotoTools のコンバータは HEIC のピクセルをデコードし、ブラウザの canvas パイプラインで再エクスポートします。本プロジェクトでは、HEIC ファイルは MIME タイプまたは .heic/.heif 拡張子で検出され、heic2any で PNG のフレーム blob にデコードされ、createImageBitmap と OffscreenCanvas を通して描画され、最後に convertToBlob() で JPG、PNG、WebP、AVIF に書き出されます。この canvas 経由の再エンコードは、クリーンな配信ファイルが欲しいときに有用ですが、GPS プライバシーが関わる場面では出力を必ず確認してください。
アーカイブ目的でメタデータを保ちたいなら、元の HEIC を残してください。共有のためにメタデータを消したいなら、送信前に変換後のファイルを確認してください。
PhotoTools が HEIC をどう扱うか
PhotoTools は HEIC を「入力形式」として扱い、最良の公開出力とは考えていません。多くのウェブワークフローにとって、この立ち位置は正解です。
HEIC や HEIF のファイルをコンバータにドロップすると、ブラウザ側のコードが MIME タイプまたは拡張子で認識します。マルチフレーム HEIC はフレームごとのカードに展開されます。各フレームは JPG、PNG、WebP、AVIF に書き出せます。元の写真を変換サーバーに送る必要はありません。
以下のようなときに便利です:
- Windows で開く必要のある iPhone 写真。
- HEIC を拒否するウェブフォーム。
- JPEG か WebP を要求する CMS のアップロード。
- 受け入れ可能な形式が明記されている、パスポート写真や申請書用の写真。
- 公開前に WebP にしておきたい商品写真。
- オリジナルを第三者サーバーに送りたくないプライベートな写真。
普段の共有は JPG。ウェブ公開はフォールバック付きの WebP か AVIF。フォームが PNG を明示しているなら PNG。
iPhone 写真を公開する前の実践チェックリスト
写真が HEIC から始まるときは、次のチェックリストを使ってください:
- 送り先が受け入れているファイル形式を確認する。
- 公開サイトなら、生の HEIC を唯一のソースとして公開しない。
- あなたのサイトが対応しているなら、配信には WebP か AVIF を使う。
- 古いブラウザ、メール、厳格なアップロードシステムのために JPEG フォールバックを残す。
- PNG は精密なピクセルやフォームの要件で必要なときだけ使う。
- 写真を実際に表示される最大サイズにリサイズする。
- メタデータを残すのか消すのかを判断する。
- 最終ページを Safari 以外でもテストする。
短く言えば、HEIC は良い撮影・保存フォーマットですが、まだ信頼できる汎用ウェブ配信フォーマットではありません。オリジナルとして扱い、あなたの読者とパイプラインが実際に開けるバージョンを書き出しましょう。
参考にした技術資料
本稿は Apple サポートの HEIF/HEVC ガイダンス、WebKit の Safari 17 HEIC アナウンス、Apple Developer のウェブ向けメディアフォーマットセッション、MDN の画像フォーマットガイド、Microsoft のフォトアプリ HEIF/HEVC 拡張機能ガイダンス、Microsoft の OneDrive における HEIF/HEVC ノート、Chrome Lighthouse の画像フォーマット推奨、そして Google の WebP ドキュメントに照らしてレビューしました。