2012-09-19 3 views
4

반송파로 미니 magick 보석을 사용하여 이미지를 자르려고합니다. 나는 사용자를 만들 때 다음과 같은 문제에 직면하고있다.레일에 캐리 웨이브가있는 MiniMagick을 사용하는 이미지 자르기에서 오류가 발생했습니다.

Errno::ENOENT in UsersController#create 

No such file or directory - identify -ping /tmp/mini_magick20120919-5600-ai31ph.jpg 

내 코드 : 모델/user.rb

class User < ActiveRecord::Base 

    attr_accessor :crop_x, :crop_y, :crop_h, :crop_w 
    attr_accessible :username,:profile 
    after_update :reprocess_profile, :if => :cropping? 

    #field :username 

    mount_uploader :profile, ProfileUploader 

    def cropping? 
    !crop_x.blank? and !crop_y.blank? and !crop_h.blank? and !crop_w.blank? 
    end 

    def profile_geometry 
    #img = MiniMagick::Image.open(self.profile.large.path) 
    #@geometry = {:width => img[:width], :height => img[:height] } 
    end 

    private 

    def reprocess_profile 
    #puts self.profile.large.path 
    #img = MiniMagick::Image.open(self.profile.large.path) 
    #crop_params = "#{crop_w}x#{crop_h}+#{crop_x}+#{crop_y}" 
    #img.crop(crop_params) 
    #img.write(self.profile.path) 
    #profile.recreate_versions! 
    end 

end 

업 로더/profile_uploader.rb

# encoding: utf-8 

class ProfileUploader < CarrierWave::Uploader::Base 

    # Include RMagick or ImageScience support: 
    #include CarrierWave::RMagick 
    # include CarrierWave::ImageScience 
    include CarrierWave::MiniMagick 

    # Choose what kind of storage to use for this uploader: 
    storage :file 
    # storage :fog 

    # Override the directory where uploaded files will be stored. 
    # This is a sensible default for uploaders that are meant to be mounted: 
    def store_dir 
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
    end 

    def extension_white_list 
    %w(jpg jpeg gif png) 
    end 

    version :large do 
    end 

    version :thumb do 
    process :resize_to_fill => [100, 100] 
    end 

end 

어떤 문제가 있을까요? 어떤 해결책을 제안하십시오.

답변

2

이미지 파일을 설치해야합니다. 우분투 :

sudo apt-get install imagemagick 
관련 문제