2012-08-13 5 views
1

내가 로컬 ImageMagick과 함께 MiniMagick를 사용하여 레일 3.2 응용 프로그램과 텍스트 작성, 잘 로컬로 작동 코드ImageMagick이는

img.combine_options do |c| 
    c.gravity 'Center' 
    c.font "#{::Rails.root}/public/fonts/Impact.ttf" 
    c.pointsize '125' 
    c.kerning '-6' 
    c.draw "text 0,-120 '#{self.line1}'" 
    c.draw "text 0,-16 '#{self.line2}'" 
    c.draw "text 0,88 '#{self.line3}'" 
    c.fill "#ffffff" 
end 

이 조각을 실행하는거야 '흰색'으로 채집 한 적용되지 않습니다 예상대로 이미지 상단에 흰색이 나온다.

일단 이것을 Heroku (Cedar)에 배포하면 오류는 발생하지 않지만 텍스트는 이미지 상단에 검은 색으로 표시됩니다.

내가 Heroku에서 MiniMagick과 ImageMagick을 함께 사용 한 것은 이번이 처음인데, 아마도 색상이 부족한 것 같습니까? 이미지가 PNG입니까?

답변

3

제대로 '그릴'옵션 ImageMagick를 통해 MiniMagick에 command line options available을 읽은 후 나는 문제 해결이 단락 발견 : 그래서 전에이 옵션을 사용하십시오

옵션은 명령 행 순서대로 처리됩니다 - 옵션을 그립니다.

그래서 "그릴"PARAM 상기 채움 색상 이동 옵션이 ​​전달되는 순서를 변경하여 아래로 그것을 해결 :

img.combine_options do |c| 
    c.gravity 'Center' 
    c.font "#{::Rails.root}/public/fonts/Impact.ttf" 
    c.fill "#ffffff" 
    c.pointsize '125' 
    c.kerning '-6' 
    c.draw "text 0,-120 '#{self.line1}'" 
    c.draw "text 0,-16 '#{self.line2}'" 
    c.draw "text 0,88 '#{self.line3}'" 
end 

문제가 해결.

+0

왜 이것이 로컬에서 발생하지 않는다고 생각하십니까? 나는 똑같은 문제를 겪는다. – Nobita

+0

처음에는 가능한 다른 버전을 의심했지만 위의 예에서 텍스트가 이미지에 쓰여지기 전에 글꼴과 색을 설정해야한다는 것을 알았다면 의미가 있습니다. –