如何使用 imagemagick 制作这种效果
how to make this effect with imagemagick
背景图:
background
最终效果:
gif effect
如何让红心移动并覆盖背景文字?
我试过这个:
转换 back.png (-clone1 -gravity center -geometry +10+10 heart.png ) (-clone 1 *******)
此文只是感动,未盖正文
如何让红心移动并遮住部分背景文字?
戴口罩?
这是使用 Imagemagick 的一种方法。首先,我需要从您的一个动画帧中裁剪出心形,因为您没有提供。
心像:
背景图片:
首先,我在桌面上创建了一个名为 test 的新文件夹,并将两张图片放入其中。
这是 (Bash) Unix 语法中的代码。
我从背景的右侧开始倒退到左侧。然后使用 j=(55-i) 反转 i 索引,以便稍后按字母顺序组合。 jj 计算向小于 10 的索引添加前导零,以便所有帧按字母顺序列在测试文件夹中。
对于每一帧,它提取背景的 alpha 通道并在右侧绘制一个黑色矩形,然后使用 -compose copy_opacity -composite
将该结果放回背景图像的 alpha 通道。这有效地将透明度置于粉红色字母所在的位置。然后我将心脏图像合成为我绘制黑色矩形的相应左边缘。
循环结束后,我从测试目录中收集名称以 tmp_ 开头的所有帧,并创建一个 gif 动画并写入桌面。
x=564
for ((i=0; i<56; i++)); do
j=$((55-i))
jj=`printf "%02d\n" $j`
convert background.png \
\( -clone 0 -alpha extract -fill black -draw "rectangle $x,0 639,123" \) \
-alpha off -compose copy_opacity -composite \
heartshape.png -geometry +${x}+28 -compose over -composite tmp_$jj.gif
x=$((x-8))
done
convert -dispose background -delay 10 tmp_*.gif -loop 0 ../heart_animation.gif
请注意 Windows Imagemagick 和脚本语法不同。如果某种 Windows 用户想要 post 转换,那就太好了。
背景图: background
最终效果: gif effect
如何让红心移动并覆盖背景文字?
我试过这个:
转换 back.png (-clone1 -gravity center -geometry +10+10 heart.png ) (-clone 1 *******)
此文只是感动,未盖正文
如何让红心移动并遮住部分背景文字?
戴口罩?
这是使用 Imagemagick 的一种方法。首先,我需要从您的一个动画帧中裁剪出心形,因为您没有提供。
心像:
背景图片:
首先,我在桌面上创建了一个名为 test 的新文件夹,并将两张图片放入其中。
这是 (Bash) Unix 语法中的代码。
我从背景的右侧开始倒退到左侧。然后使用 j=(55-i) 反转 i 索引,以便稍后按字母顺序组合。 jj 计算向小于 10 的索引添加前导零,以便所有帧按字母顺序列在测试文件夹中。
对于每一帧,它提取背景的 alpha 通道并在右侧绘制一个黑色矩形,然后使用 -compose copy_opacity -composite
将该结果放回背景图像的 alpha 通道。这有效地将透明度置于粉红色字母所在的位置。然后我将心脏图像合成为我绘制黑色矩形的相应左边缘。
循环结束后,我从测试目录中收集名称以 tmp_ 开头的所有帧,并创建一个 gif 动画并写入桌面。
x=564
for ((i=0; i<56; i++)); do
j=$((55-i))
jj=`printf "%02d\n" $j`
convert background.png \
\( -clone 0 -alpha extract -fill black -draw "rectangle $x,0 639,123" \) \
-alpha off -compose copy_opacity -composite \
heartshape.png -geometry +${x}+28 -compose over -composite tmp_$jj.gif
x=$((x-8))
done
convert -dispose background -delay 10 tmp_*.gif -loop 0 ../heart_animation.gif
请注意 Windows Imagemagick 和脚本语法不同。如果某种 Windows 用户想要 post 转换,那就太好了。