giftopnm
convert a GIF file into a portable anymap
see also :
ppmtogif - ppmcolormask - pnmcomp
Synopsis
giftopnm
[--alphaout={alpha-filename,-}]
[-verbose] [-comments] [-image
N] [GIFfile]
add an example, a script, a trick and tips
examples
source
fi
if ! type
giftopnm 2>/dev/null
then
echo "$0: conversion
tool giftopnm not found " 1>&2
result="$dir/$base.png"
giftopnm "$f" | pnmtopng >
$result &&
echo "wrote
$result"
done
source
*.pcx ) pcxtoppm $filename > $pnmfile ;;
*.tif ) tiftoppm $filename > $pnmfile ;;
*.gif ) giftopnm $filename > $pnmfile ;;
description
This is a
graphics format converter from the GIF format to the PNM
(i.e. PBM, PGM, or PPM) format.
If the image
contains only black and maximally bright white, the output
is PBM. If the image contains more than those two colors,
but only grays, the output is PGM. If the image contains
other colors, the output is PPM.
If you have an
animated GIF file, you can extract individual frames from it
with gifsicle and then convert those using
giftopnm.
A GIF image
contains rectangular pixels. They all have the same aspect
ratio, but may not be square (it’s actually quite
unusual for them not to be square, but it could happen). The
pixels of a Netpbm image are always square. Because of the
engineering complexity to do otherwise, giftopnm
converts a GIF image to a Netpbm image pixel-for-pixel. This
means if the GIF pixels are not square, the Netpbm output
image has the wrong aspect ratio. In this case,
giftopnm issues an informational message telling you
to run pnmscale to correct the output.
options
--alphaout=alpha-filename
giftopnm creates a PGM
(portable graymap) file containing the alpha channel values
in the input image. If the input image doesn’t contain
an alpha channel, the alpha-filename file contains
all zero (transparent) alpha values. If you don’t
specify --alphaout, giftopnm does not generate
an alpha file, and if the input image has an alpha channel,
giftopnm simply discards it.
If you specify
- as the filename, giftopnm writes the alpha
output to Standard Output and discards the image.
See
pnmcomp(1) for one way to use the alpha output
file.
-verbose
Produce verbose output about
the GIF file input.
-comments
Only output GIF89 comment
fields.
-image N
Output the specified gif image
from the input GIF archive (where N is
’1’, ’2’, ’20’...).
Normally there is only one image per file, so this option is
not needed.
All flags can
be abbreviated to their shortest unique prefix.
license
If you use giftopnm, you are using a patent on the LZW
compression method which is owned by Unisys, and in all
probability you do not have a license from Unisys to do so.
Unisys typically asks $5000 for a license for trivial use of the
patent. Unisys has never enforced the patent against trivial
users, and has made statements that it is much less concerned
about people using the patent for decompression (which is what
giftopnm does than for compression. The patent expires in
2003 / 2004, depending on the country.
Rumor has it that IBM also owns a patent covering
giftopnm.
A replacement for the GIF format that does not require any
patents to use is the PNG format.
restrictions
This does not correctly handle the Plain Text Extension of the
GIF89 standard, since I did not have any example input files
containing them.
see also
ppmtogif ,
ppmcolormask , pnmcomp ,
gifsicle <http://www.lcdf.org/gifsicle>,
ppm.
author
Copyright (c)
1993 by David Koblas (koblas[:at:]netcom[:dot:]com)