dwww Home | Manual pages | Find package

Pamdepth User Manual(1)     General Commands Manual     Pamdepth User Manual(1)

NAME
       pamdepth - change the depth (color resolution) in a Netpbm image

SYNOPSIS
       pamdepth newmaxval [netpbmfile]

DESCRIPTION
       This program is part of Netpbm(1).

       pamdepth reads a Netpbm image as input, changes its depth (color resolu-
       tion), and writes out the resulting Netpbm image.  I.e. the output has a
       different  maxval  from  the  input, but all the same colors (apart from
       rounding error).

       Reducing the depth results in some loss of information.

       Here is an example of the effect at the image format level:  Assume  you
       start  with  an  image  with maxval 100 and sample values of 50 and 100.
       You tell pamdepth to change it to depth 150.  The output has maxval  200
       and sample values 75 and 150.

       This program works on multi-image streams.

       Be  careful  of off-by-one errors when choosing the new maxval.  For in-
       stance, if you want the color values to be five bits wide, use a  maxval
       of 31, not 32.

       One important use of pamdepth is to convert a new format 2-byte-per-sam-
       ple  PNM file to the older 1-byte-per-sample format.  Before April 2000,
       essentially all raw (binary) format PNM files had a maxval less than 256
       and one byte per sample, and many programs may rely  on  that.   If  you
       specify a newmaxval less than 256, the resulting file should be readable
       by any program that worked with PNM files before April 2000.

   Output Format
       The  output  format  (PBM, etc.) and, in the case of PAM, tuple type, of
       the output is usually the same as the input.

       However, changing the depth of a black and white  image  does  not  make
       sense,  except  to  turn it into a grayscale image, so if the input is a
       black and white image, pamdepth makes the output grayscale.  To be  more
       precise,  if the input is a PBM image, the output is PGM, and if the in-
       put is a PAM with tuple type BLACK_AND_WHITE  or  BLACK_AND_WHITE_ALPHA,
       the  output  is  a PAM with tuple type GRAYSCALE or GRAYSCALE_ALPHA, re-
       spectively.

       This conversion happens even if the new maxval is 1.

       Before Netpbm 10.92 (September 2020), pamdepth failed if the  input  was
       PAM  with  a  black and white tuple type and the new maxval was anything
       but 1.  But it always promoted PBM to PGM.

OPTIONS
       There are no command line options defined specifically for pamdepth, but
       it recognizes the options common to all programs based on libnetpbm (See
       ]8;;index.html#commonoptions\ Common Options]8;;\ .)

SEE ALSO
       pnm(1), pam(1), pnmquant(1), ppmdither(1) pambrighten(1) pamfunc(1)

HISTORY
       pamdepth was new in Netpbm 10.32 (February 2006).  It replaced pnmdepth,
       by Jef Poskanzer.  pamdepth is backward  compatible  with  pnmdepth  and
       adds  the  ability  to  process  arbitrary PAM images and the ability to
       process multi-image input streams.  pnmdepth handled only PNM images and
       ignored all but the first in any stream.

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

              http://netpbm.sourceforge.net/doc/pamdepth.html

netpbm documentation             26 August 2020         Pamdepth User Manual(1)

Generated by dwww version 1.16 on Sun Dec 7 17:07:44 CET 2025.