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

FreeBSD Manual Pages


home | help
User manual for	old pgm	funLibrary3FunctioUseramanual for old pgm functions(3)

       libpgm -	libnetpbm functions to read and	write PGM image	files

       #include	<netpbm/pgm.h>

       void pgm_init( int *argcP, char *argv[] );

       gray ** pgm_allocarray( int cols, int rows );

       gray * pgm_allocrow( intcols );

       void pgm_freearray( gray	**grays, introws );

       void pgm_freerow( gray *grayrow);

       void  pgm_readpgminit( FILE *fp,	int *colsP, int	*rowsP,	gray *maxvalP,
       int *formatP );

       void pgm_readpgmrow( FILE *fp, gray *grayrow, int  cols,	 gray  maxval,
       int format );

       gray ** pgm_readpgm( FILE *fp, int *colsP, int *rowsP, gray *maxvalP );

       void  pgm_writepgminit(	FILE  *	 fp , int cols,	int rows, gray maxval,
       int forceplain );

       void pgm_writepgmrow( FILE *fp, gray *grayrow, int cols,	 gray  maxval,
       int forceplain );

       void  pgm_writepgm(  FILE  *fp, gray ** grays, int cols,	int rows, gray
       maxval, int forceplain );

       void pgm_writepgm( FILE *fp, gray **grays, int  cols,  int  rows,  gray
       maxval, int forceplain );

       void pgm_nextimage( FILE	*file, int * const eofP);

       void pgm_check( FILE * file, const enum pm_check_type check_type, const
       int format, const int cols, const int  rows,  const  int	 maxval,  enum
       pm_check_code * const retval);

       typedef ... gray;

       #define PGM_MAXMAXVAL ...

       #define PGM_OVERALLMAXVAL ...

       #define PGM_FORMAT ...

       #define RPGM_FORMAT ...

       #define PGM_TYPE	PGM_FORMAT


       PGM_FORMAT_TYPE(format) ...

       These library functions are part	of Netpbm(1).

       Each  gray should contain only the values between 0 and PGM_OVERALLMAX-

       PGM_OVERALLMAXVAL is the	maximum	value of  a  maxval  in	 a  PGM	 file.
       PGM_MAXMAXVAL  is  the  maximum value of	a maxval in a PGM file that is
       compatible with the PGM format as it existed before April 2000.	It  is
       also the	maximum	value of a maxval that results in the minimum possible
       raster size for a particular image.  I.e	an image with a	maxval	higher
       than  PGM_MAXMAXVAL  cannot  be read or generated by old	PGM processing
       programs	and requires more file space.

       PGM_FORMAT  is the format code for  a  Plain  PGM  format  image	 file.
       RPGM_FORMAT  is	the  format  code  for	a  Raw	PGM format image file.
       PGM_TYPE	 is the	format type code for the PGM formats.  PGM_FORMAT_TYPE
       is a macro that generates code to compute the format type code of a PBM
       or PGM format from the format code which	is its argument.

       pgm_init() is obsolete (at least	since Netpbm 9.25 (March 2002)).   Use
       pm_proginit() <libpm.html#initialization>  instead.

       pgm_init() is identical to pm_proginit.

       pgm_allocarray()	allocates an array of grays.

       pgm_allocrow() allocates	a row of the given number of grays.

       pgm_freearray()	frees  the  array allocated with pgm_allocarray() con-
       taining the given number	of rows.

       pgm_freerow() frees a row of grays allocated with pgm_allocrow().

       If a function in	this section is	called on a PBM	format file, it	trans-
       lates  the  PBM	file into a PGM	file on	the fly	and functions as if it
       were called on the equivalent PGM file.	The format value  returned  by
       pgm_readpgminit()  is,  however,	not translated.	 It represents the ac-
       tual format of the PBM file.

       pgm_readpgminit() reads the header of a PGM file, returning all the in-
       formation  from	the  header and	leaving	the file positioned just after
       the header.

       pgm_readpgmrow()	reads a	row of grays into the grayrow
	array.	 format,  cols,	 and  maxval   are  the	 values	 returned   by

       pgm_readpgm()  reads an entire PGM image	into memory, returning the al-
       located array as	its return value and returning	the  information  from
       the   header  as	 rows,	cols,  and  maxval.   This  function  combines
       pgm_readpgminit(), pgm_allocarray(), and	pgm_readpgmrow().

       pgm_readpgminit() and pgm_readpgm abort the program with	a  message  to
       Standard	 Error if the PGM image	header is not syntactically valid, in-
       cluding if it contains a	number too large to  be	 processed  using  the
       system's	normal data structures (to wit,	a number that won't fit	in a C

       pgm_writepgminit() writes the header for	a PGM file and leaves it posi-
       tioned just after the header.

       forceplain is a logical value that tells	pgm_writepgminit()  to write a
       header for a plain PGM format file, as opposed  to  a  raw  PGM	format

       pgm_writepgmrow() writes	the row	grayrow	to a PGM file.	For meaningful
       results,	cols, maxval, and forceplain must be the same as was used with

       pgm_writepgm()  write  the  header  and all data	for a PGM image.  This
       function	combines pgm_writepgminit() and	pgm_writepgmrow().

       pgm_nextimage() positions a PGM input file to the next image in it  (so
       that a subsequent pgm_readpgminit() reads its header).

       pgm_nextimage()	is  analogous to pbm_nextimage(), but works on PGM and
       PBM files.

       pgm_check()  checks for the common file integrity error where the  file
       is the wrong size to contain all	the image data.

       pgm_check()   is	 analogous  to	pbm_check(),  but works	on PGM and PBM

       libpbm(3), libppm(3), libpnm(3)

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

netpbm documentation	       8 SeptemberUser7manual for old pgm functions(3)


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

home | help