Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
Giftopnm User Manual(0)				       Giftopnm	User Manual(0)

       giftopnm	- convert a GIF	file into a PNM	image

       giftopnm	 [--alphaout={alpha-filename,-}]  [-verbose] [-comments] [-im-
       age={N,all}] [-repair] [-quitearly] [GIFfile]

       Minimum unique abbreviation of option is	acceptable.  You may use  dou-
       ble  hyphens  instead  of single	hyphen to denote options.  You may use
       white space in place of the equals sign to separate an option name from
       its value.

       This program is part of Netpbm(1).

       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 out-
       put is PPM.

	A  GIF	image contains rectangular pixels.  They all have the same as-
       pect 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	other-
       wise,  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 informa-
       tional message telling you to run pamscale to correct the output.

	      giftopnm	creates	a PBM file containing the transparency	infor-
	      mation  from  the	 input	image.	This transparency image	is the
	      same dimensions as the input image, and each pixel of the	trans-
	      parency image tells whether the corresponding pixel of the input
	      image is transparent.   Black  means  transparent;  white	 means
	      opaque.  If you don't specify --alphaout,	giftopnm does not gen-
	      erate a transparency file, and if	the input image	has  a	trans-
	      parency channel, giftopnm	simply discards	it.

	      If  you specify -	as the filename, giftopnm writes the transpar-
	      ency output to Standard Output and discards the image.

	      See pamcomp(1) for one way to use	the transparency output	file.

	      Produce verbose output about the GIF file	input.

	      With this	option,	giftopnm issues	messages showing the GIF  com-
	      ments  (A	 GIF89	stream	can contain comments in	comment	exten-

	      By default, giftopnm ignores comment extensions.

	      This option identifies which image from the GIF stream you want.
	      You  can	select either one image	or all the images.  Select all
	      the images with all.  Select one image  by  specifying  its  se-
	      quence number in the stream: 1, 2, 3, etc.

	      The default is just Image	1.

	      A	GIF stream normally contains only one image, so	you don't need
	      this option.  But	some streams, including	 animated  GIFs,  have
	      multiple images.

	      When  you	select multiple	GIF images, the	output is a PNM	stream
	      with multiple images.

	      If you specify a single image, giftopnm must read	and  partially
	      validate	the  images  before that in the	stream.	 It may	or may
	      not do the same for the images after it; see -quitearly.

	      The all value was	added in Netpbm	10.16  (June  2003).   Earlier
	      giftopnm can extract only	one image.

	      This  option  makes  giftopnm try	to salvage what	it can from an
	      invalid GIF input.

	      In particular, when giftopnm detects that	the GIF	input  is  in-
	      valid  so	that it	is impossible to determine what	the pixels are
	      intended to be, it produces a single  arbitrary  color  for  all
	      further  pixels in the image.  giftopnm processes	the image from
	      top to bottom, left to right, so this means the bottommost  pix-
	      els will be this padding.

	      giftopnm	issues	warning	 messages when it salvages an image in
	      this way.

	      Without this option, giftopnm fails when it detects invalid  GIF
	      input.   Any  output  it produces	is arbitrary, and typically is
	      not a valid PNM image.

	      It is fairly common for an image to be corrupted	such  that  is
	      started off as a valid GIF, but had the end of the file cut off.
	      An interrupted network transfer tends to do this.	 In this case,
	      giftopnm's  salvage  operation will produce a valid PNM image of
	      the proper dimensions, but with a	single arbitrary color for the
	      pixels that were left out	of the file.

	      This  option  was	 new in	Netpbm 10.38 (March 2007).  From 10.32
	      through 10.37, giftopnm always fails if it detects  invalid  GIF
	      input.  Before 10.32, it succeeds	in the case of a truncated im-
	      age, and replaces	the missing pixels with	arbitrary colors,  not
	      necessarily all the same (The pre-10.32 behavior wasn't actually
	      intended by the design).

	      This option makes	giftopnm stop reading its input	file  as  soon
	      as  it  has  converted and output	the images from	the input that
	      you requested.  By default, giftopnm reads until the end of  the
	      GIF stream, ignoring any data after the images you requested.

	      Two reasons not to use this option:

       o      The  input  file	is a pipe and the process that is filling that
	      pipe expects the pipe to take the	entire stream and will fail or
	      get stuck	if it doesn't.

       o      You want to validate the entire GIF stream.

	      Two reasons to use this option:

       o      It  saves	 the  time  and	other resources	to read	the end	of the

       o      There are	errors in the end of the  stream  that	make  giftopnm

	      This option has no effect	if you also specify -image=all

	      This option was new in Netpbm 10.35 (August 2006).  Before that,
	      giftopnm always reads the	entire stream.

       This does not correctly handle the Plain	Text Extension	of  the	 GIF89
       standard, since I did not have any example input	files containing them.

       pamtogif(1),  ppmcolormask(1), pamcomp(1),
       <> ,	ppm(5).

       Copyright (c) 1993 by David Koblas (

       As a historical note, for a long	time if	you used  giftopnm,  you  were
       using a patent on the LZW compression method which was owned by Unisys,
       and in all probability you did not have a license from Unisys to	do so.
       Unisys  typically  asked	 $5000	for  a	license	for trivial use	of the
       patent.	Unisys never enforced the patent against  trivial  users,  and
       made  statements	 that it is much less concerned	about people using the
       patent for decompression	(which is what giftopnm	does than for compres-
       sion.  The patent expired in 2003.

       Rumor has it that IBM also owns a patent	covering giftopnm.

       A replacement for the GIF format	that has never required	any patent li-
       cense to	use is the PNG format.

       This manual page	was generated by the Netpbm tool 'makeman'  from  HTML
       source.	The master documentation is at

netpbm documentation	       13 September 2012       Giftopnm	User Manual(0)


Want to link to this manual page? Use this URL:

home | help