画像のリサイズ・形式変換と、位置情報を含むメタデータの削除を、ブラウザの中だけで行う道具です。 ファイルはサーバへ送信されません。
スマートフォンやカメラで撮った写真には、撮った場所の緯度経度が埋め込まれていることがあります。 Exif と呼ばれる領域に、機種名や撮影日時と一緒に入っています。
見た目には分かりません。そのまま送ったり、掲示板や SNS 以外の場所へ載せたりすると、 自宅や職場の場所が分かってしまうことがあります。
手箱イメージは、画像を読み込んだ時点で何が入っているかを表示します。 位置情報があれば緯度経度まで出します。消す前に、ご自分の目で確かめてください。
メタデータの外し方には2通りあります。目的に合う方をお選びください。
Exif には「この写真は90度回して表示する」という指定が入っていることがあります。 これを外すときに元の絵をそのまま扱うと、写真が横倒しになります。 手箱イメージは、作り直すときに向きを絵そのものへ反映してから扱うので、 メタデータが無くなっても正しい向きのままです。
書き出したファイルに Exif が残っていないことは、外から確かめられます。
exiftool 書き出したファイル.jpg
GPS の項目が出てこなければ、位置情報は残っていません。
exiftool が無い場合は、ファイルの中に Exif という並びが残っていないかを見ても確かめられます。
位置情報を扱う道具だからこそ、その画像自体がどこへも送られていないことが大事です。 開発者ツールで、通信をそのまま見ることができます。
blob: で始まる行この道具は画像を扱う外部ライブラリを使っていません。読み込み・拡大縮小・書き出しは すべてブラウザに備わっている機能です。そのため、書き出しのときに増えるファイルもありません。
curl -i -X POST --data-binary @写真.jpg https://tebako.ncgv.jp/image/
405 Method Not Allowed が返ります。読み取り(GET)以外は受け付けません。 本文の大きさも 1 キロバイトまでに制限してあり、画像が入る余地がありません。
| 形式 | 読み込み | メタデータだけ外す | 書き出し |
|---|---|---|---|
| JPEG | ○ | ○ | ○ |
| PNG | ○ | ○ | ○ |
| WebP | ○ | × | ○(環境による) |
| GIF・BMP・AVIF など | △ | × | ×(別の形式で書き出します) |
「メタデータだけ外す」が使えない形式は、作り直しになります。その場合も情報は残りません。 読み込みはブラウザの機能を使うため、対応はお使いのブラウザによって変わります。
画面の組み立てに Preact(MIT)を使っています。 画像の読み込み・拡大縮小・書き出しはブラウザの Canvas API で、 Exif と PNG のメタデータの読み取り・削除はこのサイトのコードで直接行っています。 画像を扱う外部ライブラリは使っていません。