假设:
纹理和照片(没有透明背景)
如何为照片添加纹理?
具体来说,我需要以下步骤:
convert -size 1056x576 tile:Castillo_001.gif Castillo_tiled.gif
MiniMagick的任何线索?或者ImageMagick中答案的任何线索?
非常感谢。
答案
ImageMagick的:
convert IMG_1970.JPG \( -size 2816x1584 tile:background.png -negate \) -compose ColorDodge -composite out.jpg
完整答案:
# I just negatived the background already
img = MiniMagick::Image.open(File.join('IMG_1970.JPG'))
background = MiniMagick::Image.open(File.join('background_negative.png'))
background.combine_options do |c|
c.size "#{img['width']}x#{img['height']}"
c.tile background.path
end
img = img.composite(background) do |c|
c.compose "ColorDodge"
end
答案 0 :(得分:1)
使用tile:
格式创建纹理图像是正确的。只需应用-negate选项即可反转结果。之后,简单的撰写&复合命令将“颜色减淡”效果应用于任何给定图像。请参阅Compose Examples文章。
convert \( -size 1056x576 tile:Castillo_001.gif -negate \) \
source_image.jpg -compose Lighten -composite out_image.jpg