2011-10-12 8 views
2

레일즈에서 rmagick을 사용하여 업로드 한 이미지를 하나의 파일 유형에서 JPEG로 변환했습니다. 이제 나는 새로운 이미지에서 전화를 걸 수있다. 내가 그랬어 : 지금은 두 개의 파일을 생성 한 레일 클립 클립 변경 파일

image = Magick::ImageList.new 'public/system/photos/' + @picture.id.to_s + 
           '/original/' + @picture.photo_file_name 

image.write 'public/system/photos/' + @picture.id.to_s + '/original/' + 
      @picture.photo_file_name.sub(/\.\w*/, '.jpg') 

@picture.photo_file_name = @picture.photo_file_name.sub /\.\w*/,'.jpg' 

, 어떻게 원본 파일을 삭제하거나 원본 파일을 덮어 쓰기보다는 지금 생각처럼 새로 작성해야합니까?

+0

이미 Paperclip을 사용하는 경우 Paperclip이 변환을 수행하는 이유 만은 아닙니다. –

+0

@ Jordan 지금까지이 문제를 잊어 버렸습니다. 어떻게 그렇게 되었습니까? – jack

답변

0

재 : 코멘트에 대한 논의, 여기에 종이 클립 문서에서 예제 :

class User < ActiveRecord::Base 
    has_attached_file :photo, 
        :styles => { 
         :small => { 
         :geometry => '38x38#', 
         :quality => 40, 
         :format => 'JPG' 
         }, 
         :medium => { 
         :geometry => '92x92#', 
         :quality => 50 
         } 
end 

참고 ":format => 'JPG'"라인. 여기서 볼 수 있듯이, Paperclip이 JPEG로 파일을 변환하도록하는 것은 쉬운 일이 아니므로, 나머지 사업에 관해서는 할 일이 있습니다. 따라서 이미 Paperclip을 사용하고 있다면 rmagick으로 별도의 변환 단계를 직접 수행 할 필요가 없습니다.