以前在别的论坛,或网站。上传头像时。总是不是很好,有的直接缩略,有的。从中间剪切。
在线剪切可以给用户更好的体验。呵
今天就用jsCropperUI-1.2.0
加上rmagick 做一个简单的在线头像剪切。。效果还可以如图。前端页面用jsCropperUi 给的例子很好做出
后台代码也就几行而己
begin
img = Magick::Image::read(tmpfile).first
unless width == 0 or height == 0
img.crop!(x1,y1,width,height)
end
img.thumbnail!(120, 150)
img.write(outfile){ self.quality = 95; self.density = 92; }
rescue Exception => err
@upload_image_error = 'Could not process your image file. Pleasetry again.' + err
puts "****************#{@upload_image_error}*********************"
end
tmpfile 为上传来的原始文件。
outfile 为要输出的地址
quality , density 为质量和精细度
很简单的就可以完成了