5749061 [rkeene@sledge /home/rkeene/projects/favicon.ico]$ cat -n png2favicon.sh
 1 #!/bin/bash
 2 
 3 PNGFILE=$1
 4 ICONFILE=$2
 5 if [ -z "${PNGFILE}" ]; then
 6     echo "Usage: png2favicon <pngfile> [<iconfile>]" >&2
 7     exit 1
 8 fi
 9 if [ -z "${ICONFILE}" ]; then
10     ICONFILE=favicon.ico
11 fi
12 
13 if [ ! -f "${PNGFILE}" ]; then
14     echo "No such file, ${PNGFILE}" >&2
15     exit 1
16 fi
17 if [ -f "${ICONFILE}" ]; then
18     echo "Icon file, ${ICONFILE}, exists.  Refusing to overwrite." >&2
19     exit 1
20 fi
21 
22 TMPFILE_PNM="/tmp/`basename ${PNGFILE}`$$${RANDOM}.pnm"
23 TMPFILE_PGM="/tmp/`basename ${PNGFILE}`$$${RANDOM}.pgm"
24 
25 echo -n "${PNGFILE} -> ${ICONFILE} ..."
26 
27 pngtopnm "${PNGFILE}" | pnmquant 256 2>/dev/null > "${TMPFILE_PNM}"
28 pngtopnm -alpha "${PNGFILE}" > "${TMPFILE_PGM}"
29 ppmtowinicon -output "${ICONFILE}" -andpgms "${TMPFILE_PNM}" "${TMPFILE_PGM}"
30 
31 rm -f "${TMPFILE_PNM}" "${TMPFILE_PGM}"
32 
33 echo " done."

png2favicon.sh is a shell script to convert PNGs with alpha channels (transparency) to Windows Icons, for favicon.ico.
5749062 [rkeene@sledge /home/rkeene/projects/favicon.ico]$

Click here to go back to the directory listing.
Click here to download this file.
last modified: 2006-10-04 18:57:12