【Windows】Ruby on Rails + Carrierwave + RMagickで画像のリサイズ
今回の内容
Ruby on Railsチュートリアルに載っていた画像のリサイズがWindowsで行っているととても難しく、うまくいかなかったのでうまくいった方法を備忘録としてメモ
環境
Windows10
Ruby on Rails 5.1.4
Rmagick 2.16.0
CarrierWave 1.2.2
ImageMagick をインストール
このサイトを参考に進んでいきます。
http://www.imagemagick.org/download/binaries/ImageMagick-6.9.9-33-Q16-HDRI-x64-dll.exe
をダウンロードし、インストールします。(ビット数は環境に応じて指定してください)
最新版ではない理由は、
RMagick 2.16.0 の時点では ImageMagick 7 系に未対応であり、ImageMagick 6 系を入れる必要がある
となっているからです。
インストール時に
- Add application directory to your system path
- Install development headers and libraries for C and C++
の2つにチェックを入れます。
環境変数の設定
環境変数の設定を開き、
- CPATH = {ImageMagick インストールディレクトリ}/include
- LIBRARY_PATH = {ImageMagick インストールディレクトリ}/lib
の2つを設定します。
{ImageMagick インストールディレクトリ}は普通にインストールを進めると
C:\Program Files\ImageMagick-6.9.9-Q16-HDRI(バージョンやビット数などは各自)になると思います。
RMagickのインストール
使用したいRailsアプリケーションのディレクトリに移動し、
Gemfileに
を記述し、bundle installを実行します。
動作確認
先ほどのサイトに詳しく載っているので割愛します。
使用例
基本的な内容は初めに紹介したRuby on Railsチュートリアルと同じです。
変更点は
となっているところを
とするだけです。
完成!
これで大きすぎる画像を投稿すると任意の大きさにリサイズし、保存することが出来ました!