2013-11-02 21 views
1

我想用bash for loop在幾幅圖像上畫一條imagemagick。我希望線條位於每張圖片上稍微不同的位置。不幸的是,這個間距需要用十進制數來定義,即我是|公元前。在bash for loop中使用imagemagick繪製一條線

最後,我想我的循環,看起來像:

j=1 
k=.3 
for i in *.jpg 
do 
convert $i -draw "line $"(($k + $j))" | bc ,10 $"((($k + $j))" | bc ,20" "${i%.*}line.jpg" 

j=$(($j + 1)) 

done 

但是,我甚至無法獲得這更簡化的例子的工作:

convert $i -draw "line $"(($j+2.1))" | bc ,581 $j, 514" test.jpg 

任何想法?歡呼的幫助和信息!

回答

4

經過大量的試驗和錯誤之後,下面在imagemagick實用程序中使用bash for循環創建了增量十進制值convert,convert。

j=56 
k=4.5111 
for i in *.jpg 
do 
    p=$(echo "$j + $k" | bc) 
    convert $i -draw "line $p, 581 $p, 514" "${i%.*}.jpg" 

    j=$(($j + 1)) 
done