'\" t .\" Title: gif2png .\" Author: [see the "AUTHORS" section] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 07/12/2024 .\" Manual: Graphics .\" Source: gif2png .\" Language: English .\" .TH "GIF2PNG" "1" "07/12/2024" "gif2png" "Graphics" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" gif2png \- convert GIFs to PNGs .SH "SYNOPSIS" .HP \w'\fBgif2png\fR\ 'u \fBgif2png\fR [\-bdfmvwO] [\fIfile\&.[gif]\fR...] .SH "DESCRIPTION" .PP The \fBgif2png\fR program converts files in the obsolescent Graphic Interchange Format (GIF) to Portable Network Graphics (PNG) format, an open W3C standard\&. .PP Normally \fBgif2png\fR converts each file named on the command line, leaving the original in place\&. If a name does not have a \&.gif extension, the unmodified name will be tried first, followed by the name with \&.gif appended\&. For each file named foo\&.gif, a foo\&.png will be created\&. .PP When a multi\-image GIF file named foo\&.gif is converted, gif2png creates multiple PNG files, each containing one frame; their names will be foo\&.png, foo\&.p01, foo\&.p02 etc\&. .PP If no source files are specified and stdin is a terminal, \fBgif2png\fR lists a usage summary and version information, then exits\&. .PP If no source files are specified, and stdin is a device or pipe, stdin is converted to noname\&.png\&. (The program can\*(Aqt be a normal stdin\-to\-stdout filter because of the possibility that the input GIF might have multiple images)\&. .PP However, if filter mode is forced (with \-f) stdin will be converted to stdout, with \fBgif2png\fR returning an error code if the GIF is multi\-image\&. .PP All graphics data (pixels, RGB color tables) will be converted without loss of information\&. Transparency is also preserved\&. The GIF aspect\-ratio field, offset fireld, and extensions are dropped\&. .PP The program automatically detects images in which all colors are gray (equal R, G, and B values) and converts such images to PNG grayscale\&. Other images are converted to use the PNG palette type\&. Duplicate color entries are silently preserved\&. Interlacing is removed\&. .PP The action of the program can be modified with the following command\-line switches: .PP \fB\-b\fR {#}RRGGBB .RS 4 Background\&. Replace transparent pixels with given RGB value, six hexadecimal digits interpreted as two hexits each of red, green, and blue value\&. The value may optionally be led with a #, HTML\-style\&. .RE .PP \fB\-d \fR .RS 4 Delete source GIF files after successful conversion\&. .RE .PP \fB\-f \fR .RS 4 Filter mode\&. Convert GIF on stdin to PNG on stdout, return error if the GIF is multi\-image\&. .RE .PP \fB\-m \fR .RS 4 Preserve file modification time\&. The PNG output gets the mod time of the input file, not the time it was converted\&. .RE .PP \fB\-v \fR .RS 4 Verbose mode; show summary line, \-vv enables conversion\-statistics and debugging messages\&. .RE .PP \fB\-w \fR .RS 4 Web\-probe switch; list GIFs that do not have multiple images to stdout\&. GIFs that fail this filter cause error messages to stderr\&. .RE .PP \fB \-O \fR .RS 4 Use zlib compression level 9 (best compression) instead of the default level\&. .RE .SH "LIMITATIONS" .PP Naively converting all your GIFs at one go with \fBgif2png\fR is not likely to give you the results you want\&. Animated GIFs cannot be translated to PNG, which is a single\-image format\&. .PP The web\-probe switch is intended to be used with scripts for converting web sites\&. In versions of this tool up to 2\&.5\&.2 it filtered out GIFs with transparency as well as GIFs with animations, but support for PNG transparency has been universal in browsers since about 2006\&. .SH "RETURN VALUES" .PP Normally returns 0 for successful comp[letion\&. A return of 1 is a recoverable error (batch processing continues)\&. .SH "STANDARDS AND SPECIFICATIONS" .PP Copies of the GIF89 specification are widely available on the Web; search for "GRAPHICS INTERCHANGE FORMAT"\&. The Graphics Interchange Format(c) is the Copyright property of CompuServe Incorporated\&. GIF(sm) is a Service Mark property of CompuServe Incorporated\&. The GIF format was formerly covered by a blocking patent on LZW compression, but it expired in June 2003\&. .PP The PNG home site at <\m[blue]\fBhttp://www\&.libpng\&.org/pub/png/\fR\m[]> has very complete information on the PNG standard, PNG libraries, and PNG tools\&. .SH "SEE ALSO" .PP web2png(1) .SH "AUTHORS" .PP Code by Alexander Lehmann , 1995\&. Auto\-interlace conversion and tRNS optimization by Greg Roelofs , 1999\&. Man page, \-O, \-w, and production packaging by Eric S\&. Raymond , 1999\&. \-m option by Steve Ward, 2012\&.