我希望使用jpegoptim
或者optipng
来压缩用户通过Paperclip上传的图片。
我的Paperclip模型已经配置好了:
has_attached_file :image,
:styles => {:thumb => '50x50>', :preview => '270x270>' },
:url => "/system/:class/:attachment/:id/:basename_:style.:extension",
:path => ":rails_root/public/system/:class/:attachment/:id/:basename_:style.:extension"
问题1:
用户上传的原始图像是否可以进行压缩,然后让Paperclip调整大小,使得只需要一个压缩过程?怎么做?
after_post_process
回调来完成此操作,并且可以从image.queued_for_write
获得所有三个文件的实例,我想按文件扩展名触发jpegoptim/optipng,但是当我使用current_format = File.extname(file.path)
时,我得到类似于:.jpg20120508-7991-cqcpf2
。有没有办法获取扩展名字符串jpg
?或者直接检查该字符串是否包含在扩展名字符串中是否安全?