Leo*_*nid 6 ruby-on-rails ruby-on-rails-3 minimagick
我读过了:
所以我尝试过:
# encoding: utf-8
class ProjectPictureUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
storage :file
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :thumb do
process :cropper
# process :crop
process resize_to_fit: [200, 200]
end
def cropper
manipulate! do |img|
# if model.crop_x.present?
image = MiniMagick::Image.open(current_path)
crop_w = (image[:width] * 0.8).to_i
crop_y = (image[:height] * 0.8).to_i
crop_x = (image[:width] * 0.1).to_i
crop_y = (image[:height] * 0.1).to_i
# end
img = img.crop "#{crop_x}x#{crop_y}+#{crop_w}+#{crop_h}"
img
end
end
def crop
if model.crop_x.present?
resize_to_limit(700, 700)
manipulate! do |img|
x = model.crop_x
y = model.crop_y
w = model.crop_w
h = model.crop_h
w << 'x' << h << '+' << x << '+' << y
img.crop(w)
img
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
然后我使用了cropper:undefined局部变量或者方法`crop_h'用于/uploads/tmp/20121006-2227-4220-9621/thumb_Koala.jpg:#
然后裁剪:未定义的方法`crop_x'for#
模型:
class Project < ActiveRecord::Base
...
mount_uploader :picture, ProjectPictureUploader
end
Run Code Online (Sandbox Code Playgroud)
Rails 3.2,Win7,
convert -version版本:ImageMagick 6.7.9-4 2012-09-08 Q16 http://www.imagemagick.org 版权:Copyright(C)1999-2012 ImageMagick Studio LLC特点:OpenMP
我明白了.
version :thumb do
process resize_to_fit: [300, nil]
process crop: '300x150+0+0'
#process resize_and_crop: 200
end
private
# Simplest way
def crop(geometry)
manipulate! do |img|
img.crop(geometry)
img
end
end
# Resize and crop square from Center
def resize_and_crop(size)
manipulate! do |image|
if image[:width] < image[:height]
remove = ((image[:height] - image[:width])/2).round
image.shave("0x#{remove}")
elsif image[:width] > image[:height]
remove = ((image[:width] - image[:height])/2).round
image.shave("#{remove}x0")
end
image.resize("#{size}x#{size}")
image
end
end
Run Code Online (Sandbox Code Playgroud)
resize_and_crop来自这里:
http://blog.aclarke.eu/crop-and-resize-an-image-using-minimagick/
| 归档时间: |
|
| 查看次数: |
10865 次 |
| 最近记录: |