iPhoneで撮った画像が勝手に回転してる問題

iPhoneで撮った写真がパソコンに移動したりホームページに載せたりすると変に回転してる。

これ経験したことある人多いのではないでしょうか?実はこれExifという規格のオリエンテーションが影響してるんです。

Exifとは

以下はWikipediaから引用したExifの説明です。

Exchangeable image file format(エクスチェンジャブル・イメージ・ファイル・フォーマット)は、富士フイルムが開発し、当時の日本電子工業振興協会 (JEIDA)で規格化された、写真用のメタデータを含む画像ファイルフォーマット。デジタルカメラの画像の保存に使われる。略称はExifで「エグジフ」(もしくは「イグジフ」)。
カメラの機種や撮影時の条件情報を画像に埋め込んでいて、ビューワやフォトレタッチソフトなどで応用することができる。Exif2.2ではExif Printという規格を組み込んでおり、撮影時の条件情報を元に自動的に最適化を行って、的確な状態でプリント出力を可能にしている。また撮影者や著作権情報、コメントなど付随することが出来る。

引用元:Wikipedia

長々と引用させていただきましたが、言いたいのは「撮影時の条件情報を画像に埋め込んでいて」の部分です。

撮影時の向き情報

Exifには撮影時の情報としてカメラやスマホをどう傾けて撮影したかの情報が含まれています。

例えば撮影する時って撮りたいものに応じてスマホやカメラの向きを変えますよね?撮影したデータと一緒にその「撮影時の向き」がデータに保存されています。

撮影したデータはスマホやカメラを正方向とした時のデータになりますので、撮影した時に意図した向きの画像にはなっていない可能性があります。しかし、画像を表示するアプリが一緒に保存されている「撮影時の向き」を考慮して表示してくれれば、撮影したときに意図した方向の画像を表示することができます。なのでこのExifの「撮影時の向き」は便利で素晴らしい情報だと思います。ただ厄介なのは、アプリによってこの「撮影時の向き」を考慮して表示してくれるものと表示してくれないものがあることです。

考慮してくれる場合は撮影したときに撮ろうとした画像の向きで表示されます。例えばスマホを縦長に持って撮影した画像は表示時も縦長の画像として表示されます。しかし、考慮してくれない場合はスマホやカメラの正位置方向から撮影した画像として表示されるので、ユーザがどんな向きで撮影したのかが反映されません。例えばスマホを縦長に持って撮影した画像も表示時には横長の画像で表示されたりします。

例えばiPhoneの写真アプリはこの情報を考慮して表示してくれるので、撮影した時と同じ画像が表示されます。しかし、例えばWindows7なんかのプレビューで画像を開いた場合には、同じ画像のはずなのに撮影した時と向きがあっていないので変に回転してしまっている画像に見えてしまいます。撮影時と異なる向きになってしまっている場合はまずこのExifの「撮影時の向き」情報が影響していると考えて問題ないです

ホームページなどに画像を載せて向きが変だったりすると嫌ですよね。

スポンサーリンク

解決方法は?

見る環境によって見え方が異なることが問題なので、それを防いでやることで解決できます。

Exifの「撮影時の向き」情報を削除し、画像データ自体を回転してやることが1点目の解決方法です。

Exifが対応している形式はJPEG、TIFFなどに限られていますので、違う形式に変換してやればExif情報を削除することが可能です。削除後に画像を自分の意図した方向に回転してやれば画像データ自体を回転してやることが可能です。またExifはアプリによって削除することも可能です。

WordPressではプラグインを使用してこの問題を簡単に解決することが可能です。そのプラグインとはEWWW Image Optimizerです。このプラグインは、上記の「Exif情報の削除」と「画像の回転」を一度に実行してくれるプラグインです。

このプラグインの設定で「メタデータを削除」にチェックを付け、この設定で「メディアを追加」から画像を追加してやればそれだけで「Exif情報の削除」と「画像の回転」を一度に実行してくれます。もう少し説明しておくと、このプラグインは、画像をExifの「撮影時の向き」情報を基に画像の回転を行います。なので、自分が撮影した時に確認したカメラの画面と同じ画像の向きに回転が行われます。その上でExif情報を全て削除してくれます。これにより、WordPressで画像をアップロードすれば全て自分が意図した向きの画像を後悔することが可能です。

MEMO

プラグインのインストールについてはこちらで説明していますのでぜひ参考にしてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です