4
如何用回形针创建圆角?我发现这个解决方案创建了rounded corners with paperclip using convert_options,但它不适用于Rails 3和Paperclip 2.4.5。生成的唯一的,如果我使用ImageMagick alpha parameter,而不是门槛放慢参数转换命令作品:带回形针的圆角
convert example.jpg \
\(+clone -alpha extract \
-draw 'fill black polygon 0,0 0,15 15,0 fill white circle 15,15 15,0' \
\(+clone -flip \) -compose Multiply -composite \
\(+clone -flop \) -compose Multiply -composite \
\) -alpha off -compose CopyOpacity -composite rounded_corners.png
相当于
has_attached_file :avatar,
:styles => { :medium => ["918x483#", :png] },
:convert_options => {:medium => Proc.new{self.convert_options}}
def self.convert_options(px = 15)
trans = ""
trans << " \\(+clone -alpha extract "
trans << "-draw 'fill black polygon 0,0 0,#{px} #{px},0 fill white circle #{px},#{px} #{px},0' "
trans << "\\(+clone -flip \\) -compose Multiply -composite "
trans << "\\(+clone -flop \\) -compose Multiply -composite "
trans << "\\) +alpha off -compose CopyOpacity -composite "
end
该代码段似乎产生正确的转换命令,而是给出了一个“处理stream-xyz的缩略图时出错“。
Command :: convert '/tmp/stream20120109-15817-1lju7p6-0.jpg[0]' -resize "918x"
-crop "918x483+0+105" +repage \(+clone -alpha extract -draw 'fill black polygon
0,0 0,15 15,0 fill white circle 15,15 15,0' \(+clone -flip \) -compose
Multiply -composite \(+clone -flop \) -compose Multiply -composite \) +alpha off
-compose CopyOpacity -composite '/tmp/stream20120109-15817-1lju7p6-....png'
[paperclip] An error was received while processing: #<Paperclip::PaperclipError:
There was an error processing the thumbnail for stream20120109-15817-1lju7p6-0>
感谢您回来让我们知道解决方案。它帮助了我。 – peterept 2015-03-10 13:07:19
它的工作,但只是与PNG,这是可能与JPG? – dtelaroli 2017-02-15 13:26:36