我的服务同时包含网络版和iPhone版。在iPhone上,我们确保用户通过在上传时进行裁剪来提交方形版本。我们也允许在网站上传,但我们没有这样的功能。
因此,我想将任何上传的图像缩放到适合612 * 612区域。什么是实现这一目标的最佳方式?
我正在使用Ruby / mini_magick
答案 0 :(得分:9)
您只需使用MiniMagick中的resize
方法,Github页面上有一个示例:
据推测,你将图像作为一堆字节存储在内存中,所以像这样:
image = MiniMagick::Image.read(your_image_bytes)
image.resize('612x612')
scaled_image_bytes = image.to_blob
# Or image.write(filename)
MiniMagick使用标准的ImageMagick几何字符串进行尺寸调整,并使用fine manual WxH
几何图形
给定的高度和宽度的最大值,保留纵横比。
所以使用'612x612'
会缩放图像以适应612px的正方形,同时保留纵横比。
您还可以使用Jcrop允许您的网络用户裁剪上传的图片以适合广场。