pngquant(1) BSD General Commands Manual pngquant(1)NAMEpngquant — PNG converter and lossy image compressor
SYNOPSISpngquant ⟨options⟩ [ncolors] file [file ...]
pngquant ⟨options⟩ [ncolors] - <file >file
DESCRIPTIONpngquant converts 32-bit RGBA PNGs to 8-bit (or smaller) RGBA-palette
PNGs, optionally using Floyd-Steinberg dithering. The output filename is
the same as the input name except that it ends in ‘-fs8.png’ or
‘-or8.png’ (unless the input is stdin, in which case the quantized image
will go to stdout). The default behavior if the output file exists is to
skip the conversion; use --force to overwrite.
OPTIONS-o out.png, --output out.png
Writes converted file to the given path. When this option is
used only single input file is allowed.
--ext new.png
File extension (suffix) to use for output files instead of the
default ‘-fs8.png’ or ‘-or8.png’.
-f, --force
Overwrite existing output files. “--ext .png --force” can be
used to convert files in place (which is unsafe).
--nofs, --ordered
Disable Floyd-Steinberg dithering.
--floyd [=N]
Set dithering level using fractional number between 0 (none) and
1 (full, the default).
-s N, --speed N
1 (brute-force) to 11 (fastest). The default is 3. Speed 10 has
5% lower quality, but is about 8 times faster than the default.
Speed 11 disables dithering and lowers compression level.
-Q min-max, --quality min-max
min and max are numbers in range 0 (worst) to 100 (perfect),
similar to JPEG. pngquant will use the least amount of colors
required to meet or exceed the max quality. If conversion
results in quality below the min quality the image won't be
saved (or if outputting to stdin, 24-bit original will be out‐
put) and pngquant will exit with status code 99.
--skip-if-larger
If conversion results in a file larger than the original the
image won't be saved and pngquant will exit with status code 98.
Additionally, file size gain must be greater than the amount of
quality lost.
--posterize bits
Truncate number of least significant bits of color (per chan‐
nel). Use this when image will be output on low-depth displays
(e.g. 16-bit RGB). pngquant will make almost-opaque pixels
fully opaque and will reduce amount of semi-transparent colors.
When this option is enabled the default filename suffix is
‘-ie-fs8.png’ / ‘-ie-or8.png’.
--transbug
Workaround for readers that expect fully transparent color to be
the last entry in the palette.
-v, --verbose
Enable verbose messages showing progress and information about
input/output. Opposite is --quiet. Errors are output to stderr
regardless of this option.
-V, --version
Display version on stdout and exit.
-h, --help
Display help and exit.
EXAMPLE
Creating a new image with the number of colors reduced to 64:
pngquant 64 image.png
The resulting image will have 64 colors and will be saved as
image-fs8.png.
Overwriting image in-place if it can be reduced without too much quality
loss:
pngquant-f --ext .png --quality 70-95 image.png
AUTHORpngquant is developed by Kornel Lesinski ⟨kornel@pngquant.org⟩ based on
code by Greg Roelofs ⟨newt@pobox.com⟩.
pngquant homepage: http://pngquant.org.
May 28, 2024