Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # 参数设置
- IMAGE="0.png"
- FRAME=30
- DIFF=2
- TEMP_DIR="temp_frames"
- OUTPUT="0.gif"
- # 创建临时目录
- mkdir -p $TEMP_DIR
- # 计算总帧数
- TOTAL_FRAMES=$((360 / DIFF))
- # 旋转图像并生成帧
- for ((i=0; i<TOTAL_FRAMES; i++)); do
- ANGLE=$((i * DIFF))
- convert $IMAGE -background "#99ccff" -rotate $ANGLE -gravity center -extent $(identify -format "%wx%h" $IMAGE) $TEMP_DIR/frame_$i.png
- done
- # 使用 ffmpeg 将帧转换为 gif
- ffmpeg -framerate $FRAME -i $TEMP_DIR/frame_%d.png -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -loop 0 $OUTPUT
- # 清理临时文件
- rm -rf $TEMP_DIR
- echo "GIF 已生成: $OUTPUT"
Advertisement
Add Comment
Please, Sign In to add comment