我想要做的是通过 IMGKit 保存一个带有全尺寸快照的网站 url。在其中一个视图中,我还希望拥有快照的缩略图版本。我正在使用carrierwave将快照与MiniMagick的对象相关联来操作它,问题是它生成了“缩略图”图像但没有调整它的大小,因此我有两个全尺寸快照,然后以“拇指”为前缀之一。
我在rails中有这个模型
class Webpage
mount_uploader :snapshot, SnapshotUploader
field :url, type: String
field :title, type: String
after_create :get_snapshot
private
def get_snapshot
file = Tempfile.new(["#{id}#{title}".downcase, '.jpg'], 'tmp', :encoding => 'ascii-8bit')
image = IMGKit.new(url, quality: 90).to_jpg
file.write(image)
file.flush
self.snapshot= file
self.save
file.unlink
end
end
我在上传器中有这个以创建缩略图版本:
class SnapshotUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
version :thumb do
process resize_to_fill: [180, 180]
end
end
使用控制台,我尝试使用 MiniMagick 调整图像大小,它运行良好,儿子我不知道发生了什么。我不确定我是否做得对,所以任何帮助将不胜感激。谢谢。