BETA

【Rails】Active Storageで写真のEXIF情報を除去

投稿日:2018-11-14
最終更新:2018-11-14

個人開発のWebアプリ「まちかどルートをv3.8にバージョンアップしました。

今回の新機能はクリアコメントへの写真添付です。

ところがアップロードされた写真に、撮影場所を示す緯度や経度、さらにはどんな機種(スマホやカメラなどの型番)で撮ったかといったEXIF情報がそのままになっていました。

というわけで今回、EXIF情報を除去する方法をまとめました。

Gemfile

まちかどルートではユーザーの投稿に写真を添付できるようにするため、Rails 5.2の新機能のひとつであるファイルアップローダーのActive Storageを使っています。

そしてさらに写真を縮小してから画面に表示できるようにするためMiniMagickというRuby gemも導入しています。

gem 'mini_magick'

strip: true

はじめは下記のコードで写真を表示していました。

<%= image_tag post.image.variant(resize: "246x200") %>

variantresizeによって写真を縮小できます。

ただしEXIF情報まで除去してくれませんでした。

そこで

<%= image_tag post.image.variant(resize: "246x200", strip: true) %>

strip: trueを付け足します。これによってEXIF情報の除去に成功しました。

補足

前回の記事でもそうでしたけどActive Storageはとても手軽にファイルアップロードの機能を追加できるかわりにもう一歩踏み込もうとすれば「どうしたらいいんだろう」と苦労します。これからも少しずつ学んでいこうと思います。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@west2538onRailsの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう