【发布时间】:2010-10-11 20:55:34
【问题描述】:
我目前正在尝试编写与 Internet 上其他系统类似的自定义图像裁剪系统,用户可以在其中选择裁剪区域,然后相应地裁剪图像。该应用程序位于 Rails 中,我们使用带有 Amazon S3 的 Paperclip 来存储文件。尽管让 RMagick 从 S3 适当地裁剪文件,但我遇到了很多麻烦。这是当前代码(不起作用):
if params[:width].to_i > 0 and params[:height].to_i > 0 then
photo = Photo.find(params[:id])
image_data = Net::HTTP.get_response(URI.parse(photo.photo.url(:big))).body
orig_img = Magick::ImageList.new
orig_img.from_blob(image_data)
args = [params[:x1].to_i, params[:y1].to_i, params[:width].to_i, params[:height].to_i]
orig_img.crop!(*args)
photo.update_attributes({:photo => orig_img.to_blob})
photo.photo.reprocess!
photo.save
end
主要问题是裁剪后的图像没有通过回形针上传回 S3,因此没有正确裁剪。 以前有人用回形针尝试过这样的事情吗?这甚至不可能,但我们将不胜感激。
【问题讨论】:
-
你到底是哪里出了问题?
-
我无法通过回形针将裁剪后的图像上传回 S3。
标签: ruby-on-rails ruby amazon-s3 paperclip