CarrierWave并resize到特定宽度
在Rails 3.0中使用CarrierWave如何使代码调整宽度大于500像素的图像大小为500像素宽并适当调整高度 – 保持宽度与高度的初始比率相同。
您可以使用:
process :resize_to_limit => [500, nil]
process :resize_to_limit => [500, 0]
这将处理图像不超过500px,同时保持适当的宽高比并允许任何高度。
我知道这是一个老问题,但我需要类似的东西。
我希望图像大小超过给定大小时resize,但如果它们更小则不按比例放大。
resize_to_limit(宽度,高度)
调整图像大小以适合指定的尺寸,同时保留原始高宽比。 仅当图像大于指定尺寸时才会调整图像大小。 生成的图像可能比较小尺寸中指定的更短或更窄,但不会大于指定值。
详细信息: http : //carrierwave.rubyforge.org/rdoc/classes/CarrierWave/MiniMagick.html#M000051
如果只想限制宽度,请使用:
process :resize_to_limit => [500, -1]
并使用:
process :resize_to_limit => [-1, 500]
仅限高度。
假设您使用的是RMagick或MiniMagick,请将此行添加到您的上传器类:
process :resize_to_fit => [500]
更多信息:
http://carrierwave.rubyforge.org/rdoc/classes/CarrierWave/RMagick.html#M000064 http://www.imagemagick.org/RMagick/doc/image3.html#resize_to_fit