2012-05-15 3 views
0

클립과 설정을 사용합니다.원본 클립이 너무 작 으면 클립이 미리보기를 만들지 않습니다.

has_attached_file :attached, 
     :styles => { 
     :small => ["170x170>", :jpg], :large => ["400x400>", :jpg] 
     } 

원본 파일이 너무 작 으면 축소판을 만들지 않기를 원합니다. 예 : 원본 파일이 250x250 인 경우 "small thumbnail"(170x170), 이 생성되지만 큰 축소판은 생성되지 않습니다.

하지만, 설정 위 모두 "작은"과 "큰"이 생성됩니다 ...

는 또한, 내가 미리 설정을 전환합니다. 예 : 사례 1 : 원본 파일이 250x250 인 경우 '작은'및 '큰'미리보기 이미지가 모두 생성됩니다. case2 : 원본 파일이 250x250 인 경우 '작은'미리보기 이미지 만 생성됩니다.

동적으로 케이스 1과 케이스 2를 교환하고 싶습니다.

좋은 아이디어가 있습니까?

답변

0

질문의 첫 번째 부분 : 원본 클립이 너무 작 으면 축소판을 만들지 마십시오. 지시 한 크기보다 큰 이미지 클립의 크기를 조정하려면 클립 클립을 지정해야합니다. 이 작업은> 접미사

그리고 질문의 두 번째 부분과 관련하여 수행됩니다 : 당신은 스스로를해야 할

을 - 종이 클립 프로세서는

여기

이 클립 문서로 작성된 것입니다 무엇을 어떻게 작동하는지 확인 [ 1]

Paperclip은 확장 가능한 포스트 프로세서를 지원합니다. 첨부 파일에 대한 스타일 세트를 정의하면 기본적으로 해당 "스타일"은 실제로 "미리보기 이미지"일 것으로 예상됩니다. 그러나 엄지 손톱 이미지 그 이상을 할 수 있습니다. Paperclip :: Processor의 하위 클래스를 정의하면에 첨부 된 파일에서 원하는 모든 처리를 수행 할 수 있습니다. Rails 응용 프로그램의 lib/paperclip_processors 디렉토리에있는 파일은 클립으로 자동로드되므로 사용자 정의 프로세서를 쉽게 정의 할 수 있습니다. has_attached_file하는 프로세서 옵션 : 당신은 한 프로세서를 지정할 수 있습니다

has_attached_file을 : 스캔 : 스타일 => {: 텍스트 => {: 품질 => : 더 나은}} : 프로세서 => [: OCR]

이렇게하면 업로드 된 파일과 함께 해시 "{: quality => : better}"가 전달되는 가상 클래스 인 Paperclip :: Ocr이로드됩니다. 프로세서 정의에 대한 자세한 내용은 Paperclip :: Proc

[1] https://github.com/thoughtbot/paperclip

관련 문제