В настоящее время я пытаюсь закодировать собственную систему обрезки изображений, подобную другим, в Интернете, где пользователь может выбрать область обрезки, а затем соответствующим образом обрезать изображение. Приложение находится в Rails, и мы используем Paperclip с Amazon S3 для хранения файлов. У меня много неприятностей, хотя я хочу, чтобы RMagick соответствующим образом обрезал файл с S3. Вот текущий код (который не работает):Rails: обрезка изображений с помощью Paperclip, S3 и RMagick
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 через скрепку. –