#!/bin/sh -f
# 
# tgiftogif: Tgif の obj ファイルから gif ファイルへの変換
# 
#     [1997/02/14] OSHIRO Naoki.
#     [1997/11/08] OSHIRO Naoki. ColorPS を利用するようにした．
# 
#     $Log:$
#

# [Thanks to]
#
#   MASUTANI Yasuhiro: give me some advices for main procedure.
#

# Default setting
prtgif="prtgifj3 -color -ps";
reso=128
scale=.5
scalesmall='-width 100'
tmp=/tmp

# transform tgif to gif
for f
do
  base=`basename $f .gz`
  base=`basename $base .obj`
  dir=`dirname $f`
  obj=${tmp}/${base}$$.obj
  case $f in
    *.gz) zcat $f | tgifaddcolorinfo > $obj;;
    *) cat $f | tgifaddcolorinfo > $obj;;
  esac
#ls -l $f $obj
#continue
#rm $obj

  ps=${tmp}/${base}$$.ps
  gif=${dir}/${base}.gif
  gifsmall=${dir}/${base}-s.gif
  type=`head -1 $obj`
  # trap "rm -f $obj $ps $gif; exit" 1 15

  case $type in
    "%TGIF 3") prtgif='prtgifj3 -color -ps';;
    #"%TGIF 2.16J-p12") prtgif='prtgifj -ps';;
    *) prtgif='prtgifj3 -color -ps';;
  esac
#echo $obj
#ls -l $gif
#continue

  if [ -s $gif ]; then
    echo -n "Override $gif?"
  fi
  
  $prtgif $obj 
  gs -sDEVICE=ppmraw -r$reso -q -dNOPAUSE -sOutputFile=- $ps quit.ps \
  | pnmcrop | pnmscale $scale \
  | ppmquant 256 | ppmtogif > $gif
  gs -sDEVICE=ppmraw -r$reso -q -dNOPAUSE -sOutputFile=- $ps quit.ps \
  | pnmcrop | pnmscale $scalesmall \
  | ppmquant 100 | ppmtogif > $gifsmall

  rm -f $obj $ps
  #trap "" 1 15
done

exit
