ruby-on-rails – 使用carrierwave获取gif中的第一张图像
发布时间:2020-12-16 23:19:02 所属栏目:百科 来源:网络整理
导读:我使用载波上传gifs工作正常,问题出现当我尝试生成拇指版本并将gif转换为jpeg只有gif中的第一个图像作为拇指,我得到一个错误: LocalJumpError in ImagesController#createno block given (yield)app/controllers/images_controller.rb:21:in `new'app/contr
我使用载波上传gifs工作正常,问题出现当我尝试生成拇指版本并将gif转换为jpeg只有gif中的第一个图像作为拇指,我得到一个错误:
LocalJumpError in ImagesController#create no block given (yield) app/controllers/images_controller.rb:21:in `new' app/controllers/images_controller.rb:21:in `create' 请求 参数: {"utf8"=>"?","authenticity_token"=>"lPEjP1WtPxFdizL2/FAWGHzOZPtecb5nKzKO8dg5ZdE=","image"=>{"image"=>#<ActionDispatch::Http::UploadedFile:0x007ff5d4cdc720 @original_filename="some-file-name.gif",@content_type="image/gif",@headers="Content-Disposition: form-data; name="image[image]"; filename="some-file-name.gif"rnContent-Type: image/gifrn",@tempfile=#<File:/var/folders/c8/1t7w8nln4b3bvs4_nv2cyn2m0000gt/T/RackMultipart20120326-5101-gcyvk0>>,"remote_image_url"=>"","title"=>"The red panda","nsw"=>"0"},"commit"=>"Roll GIF"} 这是我用来生成拇指的代码: version :thumb do process :resize_to_limit => [200,200] process :convert => 'jpg' end 希望你们能提前帮助和感谢. 解决方法
要使用carrierwave从gif图像中删除动画,您可以定义以下处理器:
def remove_animation manipulate! do |img,index| index == 0 ? img : nil end end 所以,拇指版的代码将是: version :thumb do process :remove_animation process :resize_to_limit => [200,200] process :convert => 'jpg' end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容