MiniMagick::Image.trim
是所有需要的。如果没有像素迭代器,将修剪应用于克隆图像将会非常简单,并且可以针对最小的结果采取行动。
require 'mini_magick'
def trimed_image(path)
image = MiniMagick::Image.open(path)
test_image = image.clone
test_image.trim
if test_image.width < image.width || test_image.height < image.height
test_image
else
image
end
end
测试用例convert rose: -resize x100 rose.png
rose = trimed_image("rose.png")
rose.write("rose_output.png")
没有变化的预期。与convert -size 100x100 gradient: -background black -extent 200x200-50-50 -alpha copy trim.png
trim = trimed_image("trim.png")
trim.write("trim_output.png")
修剪
测试透明图像的预期。