令人毛骨悚然的边缘

时间:2013-04-05 04:43:01

标签: imagemagick rmagick

我正在尝试在RMagick中创建撕边效果。有没有类似于photoshop结晶的过滤器?

另外,我在这里找到了这个ImageMagick代码http://www.imagemagick.org/Usage/thumbnails/#torn

  convert thumbnail.gif \
      \( +clone -alpha extract -virtual-pixel black \
         -spread 10 -blur 0x3 -threshold 50% -spread 1 -blur 0x.7 \) \
      -alpha off -compose Copy_Opacity -composite torn_paper.png

但是,我不明白这一点。有人可以提供一些建议吗?

1 个答案:

答案 0 :(得分:2)

此命令主要做两件事:创建具有撕裂纸效果的蒙版,将蒙版应用于图像。通过使用+ clone和括号,它可以在一行中完成它们。然而,作为两个命令,它不那么令人困惑:

convert thumbnail.gif \
        -alpha extract \
        -virtual-pixel black \
        -spread 10 \
        -blur 0x3 \
        -threshold 50% \
        -spread 1 \
        -blur 0x.7 \
        mask.png

convert thumbnail.gif mask.png \
        -alpha off \
        -compose Copy_Opacity \
        -composite torn_paper.png

第一个命令相当复杂。但是你可以在ImageMagick文档中找到每个组件命令的正确解释:

此外,通过将命令分成这两部分,您可以看到掩码本身的样子。它基本上与纸张效果相反。整个图像中间的白色,在“撕裂边缘”周围褪色为黑色。

第二个命令要简单得多。 Copy_Opacity,如ImageMagick docs中所述,是一种使图像的某些部分透明或不透明的方法。蒙版中的任何内容都将在生成的图像中变为透明。实际上,第二个命令使用蒙版以风格上有趣的方式“擦除”原始缩略图的边缘。