HEIC→JPG変換
すべてブラウザ内で動きます。ファイルやデータが外部に送られることはありません。
このツールについて
iPhoneや最近のAndroid端末は写真をHEICで保存しますが、この形式は多くのサイトや印刷サービス、古いソフトでは開けません。ここにファイルを入れればJPGが返ってきます。可逆のコピーが必要ならPNGでも保存できます。
変換はどう行われる?
HEICファイルはWebAssemblyにコンパイルされたlibheifとlibde265でデコードし、Squooshと同じコーデックでJPGに再エンコードしています。どちらの処理もWeb Worker上で動くので、4MBほどの写真なら数秒で終わり、ページも固まりません。デコーダーは約1MBのWebAssemblyで、ファイルを選んだ時点で初めてダウンロードされます。ページを開くだけなら追加の読み込みはありません。
JPG出力には画質スライダーがあり、初期値は90です。スマホの写真ならこの値で細部が保たれます。PNG出力にスライダーがないのは、PNGの圧縮が可逆だからです。保存されるファイルは元の名前のまま拡張子だけが変わるので、IMG_0042.HEICはIMG_0042.jpgになります。
ひとつ知っておくと良い点があります。HEICは1チャンネルあたり10ビットや12ビットを保存できますが、JPGにはそれができません。そうした写真は通常の8ビットに縮められるため、明るいHDR写真は「写真」アプリで見るときよりやや平坦に見えることがあります。大半を占める8ビットのHEICなら、JPGの圧縮以外の劣化は起きません。
変換のために写真はアップロードされる?
いいえ。ブラウザがファイルを読み、デコードし、JPGを書き出すまですべて自分の端末の中で完結します。どこにも送信されません。この用途でアップロード型のサイトを避ける理由はそこにあります。再エンコードすると、スマホが元ファイルに書き込んだEXIF情報は失われます。撮影場所のGPS座標も含まれます。写真を公開するつもりならむしろ好都合ですが、撮影日時が必要なら先に元ファイルから控えておいてください。
どんなファイルを扱える?
拡張子が.heic、.heif、.hifのファイルです。iPhoneの写真も、キヤノンのカメラが書き出すHEIFファイルもこれに含まれます。WindowsやブラウザによってはHEICのファイル種別をまったく報告しないため、ファイル名でも判定しています。HEICは、画像をHEVCで圧縮したHEIFファイルにAppleが付けた呼び名です。
デコードにはlibheifとlibde265を使用しています。どちらもLGPL-3.0ライセンスです。