把文件夹里的jpg图片合成成GIF图片

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
yjcong
帖子: 2470
注册时间: 2006-02-28 3:11

把文件夹里的jpg图片合成成GIF图片

#1

帖子 yjcong » 2008-07-16 19:05

希望没有错误

enjoy

代码: 全选

#!/bin/bash

#需要安装 imagemagick 

pro=`echo ${0##*/}`

echo "输入GIF的尺寸, 使图片面积最小的长度或宽度为有效参数"
echo "所以, 为了保证效果, 请使用比例相近的图片"
echo "==================================" 
echo "输入GIF的宽度(单位: pixels):"
read wid
#########
echo "输入GIF的长度(单位: pixels):"
read hig
#########
echo "输入GIF的名字:"
read nam_tem 
nam="$nam_tem".gif
dnam="$nam_tem"_temtem
if [ -e "$nam" ]||[ -d "$dnam" ];then
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
echo "<<  "$nam_tem" 已存在, 请更换文件名"
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
start-stop-daemon --oknodo -K -q -R 30 -n $pro
fi
########
echo "输入frames的间隔(单位: 0.01 second):"
read tim
echo "=================================="

###################################
num=0
for fil in *.jpg *.JPG ; do
((num+=1))
done

if [ "$num" > 20 ]; then 
echo "图片过多, 是否继续?"
echo " 1  yes"
echo " 2  no "
read opt
fi

if [ "$opt" = no ]|| [ "$opt" = 2  ] || [ "$opt" = NO ]; then
start-stop-daemon --oknodo -K -q -R 30 -n $pro
fi
###################################

mkdir "$dnam"

for tem in *.jpg *.JPG ; do
convert $tem -quality 25% -geometry  "$wid"x"$hig" "$dnam"/$tem 
done

cd "$dnam"

########################
check=`ls`
emp=''
if [ "$check" = "$emp" ];then
echo "------------ error ------------"
start-stop-daemon --oknodo -K -q -R 30 -n $pro
fi
########################

 all=" "
 for name in *.jpg *.JPG ;do
 all=$all" -page +0+0 "$name
 done

echo "==============================="
echo "     请稍候"
echo "==============================="
 
 convert -delay $tim  $all  -loop 0 $nam
 mv $nam ..
 cd ..
 rm -fr "$dnam"
 if [ -e "$nam" ];then
 echo "++++++++++++++++++++++++++++++++"
 echo "++   "$nam
 echo "++++++++++++++++++++++++++++++++"
 else
 echo "------------error--------------"
 fi
上次由 yjcong 在 2008-07-16 20:18,总共编辑 1 次。
一梦三年,
松风依旧,
萝月何曾老.


灵幽听微, 谁观玉颜?
灼灼春华, 绿叶含丹.
头像
mawith
帖子: 1288
注册时间: 2007-10-21 16:41
来自: GD

#2

帖子 mawith » 2008-07-16 19:24

good
吼吼
lethe
帖子: 98
注册时间: 2008-04-29 18:59

#3

帖子 lethe » 2008-07-16 19:24

:shock:
头像
yjcong
帖子: 2470
注册时间: 2006-02-28 3:11

#4

帖子 yjcong » 2008-07-16 19:26

谁试了, 发个图上来看看
一梦三年,
松风依旧,
萝月何曾老.


灵幽听微, 谁观玉颜?
灼灼春华, 绿叶含丹.
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

#5

帖子 xiooli » 2008-07-16 19:41

yjcong 写了:谁试了, 发个图上来看看
晕乎哉,你自己的脚本难道没有试试么?
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#6

帖子 eexpress » 2008-07-16 19:47

不是直接convert的吗????
● 鸣学
头像
yjcong
帖子: 2470
注册时间: 2006-02-28 3:11

#7

帖子 yjcong » 2008-07-16 19:53

eexpress 写了:不是直接convert的吗????
是的. 但里面还有很多参数啊,

你办点正事, 帮我看看
viewtopic.php?t=136797&highlight=
附件
.gif
一梦三年,
松风依旧,
萝月何曾老.


灵幽听微, 谁观玉颜?
灼灼春华, 绿叶含丹.
回复