HEIC を JPG に変換する — /tools/heic-to-jpg の思想と使い方
iPhone で撮った HEIC 画像を Windows / Android や古いシステムで開けるよう JPG に変換するツール。サーバーに送らずブラウザ内で変換する仕組みと注意点を Zerosend 編集部が解説。
iPhone で撮影した写真を同僚や取引先に送ったら「開けません」と返ってきた——そんな経験をした人は少なくないはずです。iPhone の標準保存形式である HEIC (High Efficiency Image Container) は、Apple のエコシステムの外では互換性が限定的で、Windows PC や Android 端末、さらには多くの Web サービスでもそのまま扱いにくいのが実情です。
変換方法はいくつかありますが、手軽さとプライバシーの両立という点では、ブラウザ内で処理が完結する方法が理にかなっています。zerosend の HEIC → JPG 変換 はその考え方をベースに作られたツールです。この記事では、HEIC という形式の特性から始め、変換が現実的に必要になる場面、ブラウザ処理の仕組みと実際の手順、そして使うときに知っておくべき注意点まで、実践に直結する形で解説します。
HEIC という形式が抱える互換性の壁
HEIC は Apple が iOS 11(2017年)から採用したコンテナ形式で、内部的には HEVC(H.265)という映像圧縮アルゴリズムを静止画に応用しています。同等の画質を保ちながら JPG の約半分のファイルサイズを実現するため、ストレージ効率の観点では非常に優秀な形式です。iPhone が何年も前から HEIC をデフォルトにしているのはそのためです。
問題は、この形式が Apple の外に出た途端に摩擦を生じさせることにあります。
Windows 10 以降は HEIC ファイルを開くために Microsoft Store から「HEVC ビデオ拡張機能」を別途インストールする必要があります。かつては有償(約120円)でしたが、現在は無償で取得できるケースもあるものの、企業の管理下に置かれた PC では Microsoft Store 自体が制限されていることも多く、そもそも手順を知らないまま「開けない」で終わるユーザーが大半です。
画像編集ソフトでも状況は似ていて、Adobe Photoshop や Lightroom はバージョンによって対応状況が異なり、古い環境に依存している現場では HEIC がそのまま使い物にならないことがあります。Web サービスについては、X(旧 Twitter)や Facebook、note、各種クラウドストレージなど、HEIC のアップロードを受け付けないプラットフォームが今でも存在します。ファイルを選択してアップロードしようとしたら弾かれた、という体験は HEIC 特有のつまずきポイントです。
こうした背景を踏えると、HEIC を JPG に変換するのは「念のため」ではなく、実際のワークフローで避けられない作業になっているケースが多いことが分かります。
変換が必要になる典型的な場面
HEIC の互換性問題が具体的に表面化するのは、どのような状況でしょうか。よくあるパターンを整理しておくと、自分の状況に当てはめやすくなります。
仕事で iPhone を使って撮影した資料写真や現場の状況写真を、Windows 環境のチームメンバーに共有するケースは非常に多いです。メールや社内チャットで送るだけなら届きますが、受け取った側が開けないという問題が生じます。特に HEIC コーデックが入っていない PC では、ファイルアイコンがグレーになったまま何も表示されません。
ブログや SNS への投稿も同様です。iPhone のカメラロールから直接写真を選んでアップロードしようとすると、形式エラーで弾かれることがあります。プラットフォームによってはエラーメッセージすら明確でなく、「なぜかアップロードできない」という状態に陥ります。
フリーランスのカメラマンやデザイナーが iPhone をサブカメラとして使う場合、クライアントへの納品ファイルに HEIC が混在するのは問題です。形式を JPG に統一することは、納品物の品質管理として当然の作業になります。
また、古い機器との連携も見落としがちな場面です。デジタルフォトフレームや一部のプリンターは HEIC 非対応であるため、印刷前の変換が必要になります。これはエンジニアではなく一般家庭のユーザーが直面する状況で、手軽に解決できる手段が求められています。
なぜファイルをアップロードしない方法を選ぶべきか
「HEIC 変換」と検索すると、無料のオンラインサービスが多数ヒットします。使い方は簡単で、ファイルをアップロードして変換されたファイルをダウンロードするだけです。ただ、このフローには根本的な問題があります。ファイルが一度でも外部サーバーに送られた時点で、その写真のコントロールは自分の手を離れます。
iPhone の写真には、本人の顔や家族の姿、家の内部、さらには EXIF データとして撮影日時や GPS 座標が埋め込まれているケースがあります。これらを不特定の第三者が運営するサーバーにアップロードすることは、個人情報保護の観点から見ると軽視できないリスクです。利用規約にデータの使途が明記されていたとしても、実際の運用がどうなっているかをユーザーが確認する手段はほとんどありません。
業務用途ではさらに厳しい制約があります。NDA(秘密保持契約)を結んでいるプロジェクトの撮影素材、医療・法務・不動産などの機密性の高い写真は、外部サーバーへの送信自体がアウトになるケースがあります。こうした場面では「サーバーに送らない」という設計が、単なる付加価値ではなく必須条件になります。
zerosend の HEIC → JPG 変換 は、デコードから JPG の書き出しまでをすべてブラウザ内で処理します。ファイルはネットワークを経由せず、処理はブラウザのタブの中だけで閉じます。ページを閉じれば元のファイルも変換後のファイルも端末のキャッシュにすら残りません。
ブラウザ内変換の技術的な仕組み
ブラウザ内だけで HEIC を JPG に変換できると聞くと不思議に思えるかもしれません。現時点でブラウザの標準機能(Web API)には HEIC のデコード機能がないため、外部ライブラリを使って補います。
zerosend では heic2any というライブラリを使っています。これは C で書かれた libheif ライブラリを WebAssembly(WASM)にコンパイルして JavaScript から利用可能にしたもので、HEIC ファイルの展開処理をブラウザ内のサンドボックス環境で実行できます。
処理の流れを大まかに説明すると、まず選択された HEIC ファイルを FileReader API で ArrayBuffer として読み込みます。その ArrayBuffer を heic2any に渡すと、内部で libheif の WASM モジュールが HEVC デコードを行い、JPEG の Blob オブジェクトとして返します。品質設定を変更したい場合は、Canvas 要素経由でさらに再エンコードをかけることで任意の圧縮率を指定できます。最後に元のファイル名の拡張子を .jpg に変えて書き出します。
初回のみ libheif の WASM(約 2MB)をダウンロードする処理が入るため、最初の変換には少し時間がかかります。2 回目以降はブラウザキャッシュに保持されるため、待ち時間なく即時に変換が始まります。オフライン環境であっても、一度キャッシュに乗っていれば動作します。
複数ファイルの処理はループで順次行われます。数十枚程度であれば快適に処理できますが、100 枚を超えるような大量のバッチ処理では、ブラウザのメモリ状況によっては処理が遅くなることがあります。その場合は 30〜50 枚程度に分けて変換するのが現実的な対処です。
実際の変換手順と設定の選び方
操作そのものはシンプルですが、設定の意味を理解しておくと出力結果の質が上がります。
ツールを開いたら、HEIC または HEIF ファイルをドラッグ&ドロップするか、ファイル選択ダイアログから複数ファイルを選んでください。HEIC と HEIF はコンテナの呼称が異なるだけで、実態はほぼ同じ形式です(HEIF がコンテナの総称で、その中で HEVC エンコードされた静止画が HEIC と呼ばれます)。どちらも変換対象として認識されます。
品質スライダーは JPG の圧縮率を制御します。数値が高いほど高画質で大きいファイルになり、低いほど小さなファイルになります。Web 掲載用なら 75〜80、印刷素材や画像編集のベースとして使うなら 90 前後を目安にするとバランスがとれます。元の HEIC はすでに高効率な圧縮がかかっているため、JPG 品質を 100 にしてもファイルサイズが極端に膨らむわけではありませんが、HEIC → JPEG の再エンコードを経る分、理論的には画質の劣化は避けられません。必要以上に高品質にしても意味がないことは覚えておいてください。
変換が完了すると ZIP ファイルで一括ダウンロードできます。元のファイル名が保持されているため、変換後に別途リネームする手間がかかりません。ブラウザが許可する場合は個別に保存することもできますが、複数ファイルを扱う場合は ZIP の方が効率的です。
変換前に知っておきたい注意点
HEIC から JPG への変換に際して、知っておくと後で困らない点をいくつか補足します。
EXIF データの扱い:HEIC には撮影日時、カメラモデル、絞り値やシャッタースピードなどの撮影情報、そして GPS 座標(位置情報)が EXIF として含まれていることがあります。変換後の JPG でどの情報が引き継がれ、どの情報が失われるかはツールの実装によって異なります。位置情報が削除される場合はプライバシーの観点からむしろ安心ですが、撮影日時が残るかどうかは用途によって重要度が変わります。SNS 投稿前に位置情報を確実に削除したい場合は、変換後に EXIF 削除ツールを別途使うのが確実です。
Live Photo の扱い:iPhone の Live Photo は静止画と短い動画(MOV)がセットになった形式です。HEIC ファイルとして保存されるのは静止画部分のみで、変換後も静止画の JPG が出力されます。動画部分は HEIC の中には入っておらず、別のファイルとして存在しています。Live Photo の動画部分も必要な場合は、iPhone の「写真」アプリで書き出す設定を「現状のまま」にして MOV ファイルを別途取り出す必要があります。
Apple ProRAW と HEIC の混在:iPhone 12 Pro 以降で ProRAW 撮影をしている場合、カメラロールには .dng 拡張子の RAW ファイルが含まれることがあります。これは HEIC ではないため、HEIC 変換ツールでは処理できません。用途に応じて RAW 現像ソフトで別途 JPG に書き出す必要があります。
ファイルサイズの変化:HEIC は非常に効率的な圧縮形式であるため、変換後の JPG は同等画質の場合にファイルサイズが増えることがあります。これは変換の失敗ではなく、形式の特性上の変化です。Web 掲載用にさらに軽くしたい場合は、変換後に 画像圧縮 を使ってサイズを調整することをお勧めします。
変換後の用途に応じた次のステップ
JPG に変換したあと、用途によってはさらに加工が必要になることがあります。
Web やブログに掲載する場合、JPG のファイルサイズが大きいと読み込み速度に影響します。画像圧縮 で品質を落とさずにファイルサイズを削減するか、WebP 形式に変換して現代のブラウザ向けに最適化するのが一般的な対処です。
複数の写真を1枚の PDF にまとめて提出・共有したい場合は、画像 → PDF 変換 を使うと変換後の JPG をそのまま PDF にまとめられます。紙の資料と共有するビジネス用途や、写真を印刷所に入稿する際に PDF 形式を求められるケースに対応できます。
写真の寸法を特定のサイズに揃えたい——たとえばプロフィール画像やサムネイルとして規定の解像度に合わせたい——場合は、画像リサイズ で幅・高さを数値指定して調整できます。
iPhone 写真の互換性問題は、HEIC という形式が優秀であるがゆえに生じるトレードオフです。Apple エコシステムの中だけで完結する使い方なら問題ありませんが、外部と写真をやり取りする機会がある限り、JPG への変換は避けられない作業です。どうせ変換するなら、ファイルを外に送り出すことなくブラウザの中だけで片付けてしまう方が、余計な心配をせずに済みます。
Zerosend Editorial
Zerosend の制作チームによる記事です。ファイルがデバイスの外に出ないことを設計の中心に置き、WASM・Web Worker をベースとするブラウザ完結ツールを開発しています。
Zerosend Editorial について →関連記事
HEIC を JPG に変換する方法|Windows・Mac 対応の完全ガイド
iPhoneで撮影したHEICファイルをWindows・MacでJPGに変換する方法を解説。オンラインツールやOS標準機能の使い方、プライバシーリスクの注意点まで網羅。
複数画像をまとめてPDF化する方法|資料作成を効率化する手順と注意点
JPEGやPNGなど複数の画像ファイルをまとめてPDFに変換する方法を解説。ブラウザだけで完結するツールの使い方から、ページ順・画質の注意点まで実践的にまとめた。
HEICファイルとは?iPhoneで撮った写真が開けない原因と変換方法
iPhoneで撮影したHEICファイルが開けない理由と、Windows・Macでの対処法を解説。ブラウザだけで完結するJPG変換方法も紹介します。