我正在使用 ActiveStorage 和 aws-sdk-s3 将图像上传到AWS。目前,我正在使用 mini_magick gem通过类似
的方式在视图中提供图像 image.variant(resize: '700x300')
可将图像尺寸调整为700x300像素。
我想在上传时压缩图像,说初始图像是4MB,我想将其压缩到250kb左右,然后像其他网站一样上传。上载时会占用AWS空间并增加存储成本。我该如何实现?谢谢。
答案 0 :(得分:2)
您可以通过在使用ActiveStorage存储图像之前对其进行预处理来实现此目的。您可以使用imagemagick进行操作。
但是,由于AWS定价是如何工作的,我想说存储是一个最小的问题,您可以找到定价here。如您所见,1GB甚至不到3美分,很可能由于经常发生的转移而产生了更高的成本,但是如果您想省钱,就可以“转移”较低分辨率的图像,并且永远不会真正显示“原始”文件。