我正在寻找保存图像后自动裁剪图像的方法:
在将 html 转换为 rails 中的图像时,我遇到了一个乏味的问题。 我的问题是当 html 转换为图像时,额外的背景也会附加到 image,我不需要它,所以在通过一些代码保存回调后尝试裁剪图像。
我需要针对问题的具体答案,任何帮助都会得到帮助。
提前致谢
朋友们,我在下面提供了解决方案来回答,但我需要比我提供的解决方案更高效和有效。
1)我想用更短的线做
2) 种植成本低
3) 高效算法
我正在寻找保存图像后自动裁剪图像的方法:
在将 html 转换为 rails 中的图像时,我遇到了一个乏味的问题。 我的问题是当 html 转换为图像时,额外的背景也会附加到 image,我不需要它,所以在通过一些代码保存回调后尝试裁剪图像。
我需要针对问题的具体答案,任何帮助都会得到帮助。
提前致谢
朋友们,我在下面提供了解决方案来回答,但我需要比我提供的解决方案更高效和有效。
1)我想用更短的线做
2) 种植成本低
3) 高效算法
我认为最合适的方法是使用 ImageMagic,它有自己的脚本语言(或 API)。看看这个Railscast。它使用 CarrierWawe ,我认为这对您来说不是问题。
Cloudinary为这种事情提供了很棒的服务。也可以轻松与 Heroku 集成!
保存图像后,我调用此方法来裁剪图像
def reprocess_final_image
image_file_url = Rails.root.to_s+'/public'+self.final_image.url(:original).split('?')[0]
img = Magick::Image.read(image_file_url).first
img.format = "PNG"
img.crop_resized!(240,200, Magick::NorthWestGravity)
img.write(image_file_url)
end
其中裁剪调整大小的方法具有参数 img.crop_resized!(width,height,Gravity)