Mini_magick

MiniMagick中Image对象有一个shave方法,正好可以满足这个需求。在irb中运行:
require ‘mini_magick’
img = MiniMagick::Image.from_file “1.jpg”
#取得宽度和高度
w,h = img[:width],img[:height] #=> [2048, 1536]
shaved_off = ((w-h)/2).round #=> 256
img.shave “#{shaved_off}x0″ #此处表示宽度上左右各截取256个像素,高度上截取0像素
img.write “2.jpg”
在使用shave方法处理后,图片已经是正方形了(像素数1536×1536)。此时保存得到的2.jpg如图:

之后想得到不同尺寸的缩略图,只消调用resize方法。
img.resize 100
img.write “3.jpg”
得到的3.jpg如下图:

你可能感兴趣的:(ini)