File: ppmimgvquant.sh

package info (click to toggle)
imgvtopgm 1.2-1
  • links: PTS
  • area: main
  • in suites: slink
  • size: 636 kB
  • ctags: 268
  • sloc: ansic: 1,557; makefile: 100; sh: 95
file content (71 lines) | stat: -rw-r--r-- 1,737 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/bin/sh
##
## ppmimgvquant.sh
##	Simple palette mangler for image viewer pgm files.
##
## Copyright (C) 1997 Eric A. Howe
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 2 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
##
##   Authors:  Eric A. Howe (mu@trends.net)
##
## $Mu: imgvtopgm/ppmimgvquant.sh 1.7 1998/06/02 22:31:31 $
##
MAPFILE=/tmp/$$.ppmimgvquant.$$

cleanup() {
	[ -r $MAPFILE ] && rm -f $MAPFILE
}

trap cleanup 2 3 9 13 15 

usage() {
	NAME=`basename $1`
	echo "$NAME [-hv] [ppmquant options]"
	cat <<_DONE_DONE_DONE_
	Convert the palette of a PPM image to the standard Image Viewer
	palette. All options except -h and -v are passed to ppmquant(1).

	-h	Display this usage message and exit.
	-v	Display the version number and exit.
_DONE_DONE_DONE_
}

version() {
	NAME=`basename $1`
	echo "$NAME @@VERSION@@"
}

DONE="no"
while [ $DONE != "yes" ]; do
	case X"$1" in
	X"-h")	usage $0;	exit 0	;;
	X"-v")	version $0;	exit 0	;;
	X*)	DONE="yes"		;;
	esac
done

cat > $MAPFILE <<_DONE_DONE_DONE_
P3
4 1
255
  0   0   0
 85  85  85
170 170 170
255 255 255
_DONE_DONE_DONE_

ppmquant -map $MAPFILE "$@" | ppmtopgm
cleanup