我的服务有网页版和iPhone版。在iPhone上,我们通过在上传时进行裁剪来确保用户提交的是正方形图片。我们也允许在网站上上传图片,但是我们没有这样的功能。
因此,我想将任何上传的图片缩放到适合612 * 612区域的大小。最好的方法是什么?
我正在使用Ruby / mini_magick。
我的服务有网页版和iPhone版。在iPhone上,我们通过在上传时进行裁剪来确保用户提交的是正方形图片。我们也允许在网站上上传图片,但是我们没有这样的功能。
因此,我想将任何上传的图片缩放到适合612 * 612区域的大小。最好的方法是什么?
我正在使用Ruby / mini_magick。
resize
方法,GitHub 页面上有示例:
你可能已经将图像作为一堆内存中的字节。所以可以像下面这样实现:
image = MiniMagick::Image.read(your_image_bytes)
image.resize('612x612')
scaled_image_bytes = image.to_blob
# Or image.write(filename)
MiniMagick使用标准的ImageMagick几何字符串进行大小调整,并从精细手册中了解到,WxH
表示一个几何字符串:
给出高度和宽度的最大值,保留纵横比。
因此,使用'612x612'
将缩放图像以适应612像素正方形,同时保持纵横比。
您还可以使用Jcrop允许您的网页用户剪裁上传的图像以适合一个正方形。