0

これは Sinatra で行うのと同じコマンドだと思います。

back_door を使用して、ユーザーがアップロードした画像をサーバー側で標準の幅にサイズ変更したいと考えています。私はRMijickが進むべき道だと思いますが、これを実現するためのコードサンプルが欲しいです.

サイズを変更してからrack-pagespeedでキャッシュする方が良いパターンなのか、または要求された画像がすでにサイズ変更されているかどうかを確認して操作をスキップするのかを知りたい.

4

1 に答える 1

0

注: Radiant と back_door 拡張機能をインストールして構成したと仮定しています。

したがって、ubuntu のインストールから始めます。

apt-get install libmagick9-dev

次にgemのインストール

gem install rmagick

次に、gem のバージョンを検証します。

irb -rubygems -r RMagick
irb(main):001:0> puts Magick::Long_version

次に、Apacheをリロードします

/etc/init.d/apache2 reload

次に、ページで次のことを行います。

<r:ruby>
require 'RMagick'
if File.exists?("/var/www/grub/public/page_attachments/0000/0010/MexicanBeefSalad190.jpg")
  #"file exists"
else
  img = Magick::Image.read "/var/www/grub/public/page_attachments/0000/0010/MexicanBeefSalad.jpg"
  img[0].change_geometry('190x190') { |cols, rows, img2|
    img2.scale!(cols, rows)
  }
  img[0].write ("/var/www/grub/public/page_attachments/0000/0010/MexicanBeefSalad190.jpg")
  #"not exists"
end
</r:ruby>
于 2011-03-14T00:34:19.420 に答える