%!PS-Adobe-2.0 %%Version: 0.1 %%DocumentFonts: (atend) %%Pages: (atend) %%EndComments % % Version 3.3.2 prologue for troff files. % /#copies 1 store /aspectratio 1 def /formsperpage 1 def /landscape false def /linewidth .3 def /magnification 1 def /margin 0 def /orientation 0 def /resolution 720 def /rotation 1 def /xoffset 0 def /yoffset 0 def /roundpage true def /useclippath true def /pagebbox [0 0 612 792] def /R /Times-Roman def /I /Times-Italic def /B /Times-Bold def /BI /Times-BoldItalic def /H /Helvetica def /HI /Helvetica-Oblique def /HB /Helvetica-Bold def /HX /Helvetica-BoldOblique def /CW /Courier def /CO /Courier def /CI /Courier-Oblique def /CB /Courier-Bold def /CX /Courier-BoldOblique def /PA /Palatino-Roman def /PI /Palatino-Italic def /PB /Palatino-Bold def /PX /Palatino-BoldItalic def /Hr /Helvetica-Narrow def /Hi /Helvetica-Narrow-Oblique def /Hb /Helvetica-Narrow-Bold def /Hx /Helvetica-Narrow-BoldOblique def /KR /Bookman-Light def /KI /Bookman-LightItalic def /KB /Bookman-Demi def /KX /Bookman-DemiItalic def /AR /AvantGarde-Book def /AI /AvantGarde-BookOblique def /AB /AvantGarde-Demi def /AX /AvantGarde-DemiOblique def /NR /NewCenturySchlbk-Roman def /NI /NewCenturySchlbk-Italic def /NB /NewCenturySchlbk-Bold def /NX /NewCenturySchlbk-BoldItalic def /ZD /ZapfDingbats def /ZI /ZapfChancery-MediumItalic def /S /S def /S1 /S1 def /GR /Symbol def /inch {72 mul} bind def /min {2 copy gt {exch} if pop} bind def /setup { counttomark 2 idiv {def} repeat pop landscape {/orientation 90 orientation add def} if /scaling 72 resolution div def linewidth setlinewidth 1 setlinecap pagedimensions xcenter ycenter translate orientation rotation mul rotate width 2 div neg height 2 div translate xoffset inch yoffset inch neg translate margin 2 div dup neg translate magnification dup aspectratio mul scale scaling scaling scale addmetrics 0 0 moveto } def /pagedimensions { useclippath userdict /gotpagebbox known not and { /pagebbox [clippath pathbbox newpath] def roundpage currentdict /roundpagebbox known and {roundpagebbox} if } if pagebbox aload pop 4 -1 roll exch 4 1 roll 4 copy landscape {4 2 roll} if sub /width exch def sub /height exch def add 2 div /xcenter exch def add 2 div /ycenter exch def userdict /gotpagebbox true put } def /addmetrics { /Symbol /S null Sdefs cf /Times-Roman /S1 StandardEncoding dup length array copy S1defs cf } def /pagesetup { /page exch def currentdict /pagedict known currentdict page known and { page load pagedict exch get cvx exec } if } def /decodingdefs [ {counttomark 2 idiv {y moveto show} repeat} {neg /y exch def counttomark 2 idiv {y moveto show} repeat} {neg moveto {2 index stringwidth pop sub exch div 0 32 4 -1 roll widthshow} repeat} {neg moveto {spacewidth sub 0.0 32 4 -1 roll widthshow} repeat} {counttomark 2 idiv {y moveto show} repeat} {neg setfunnytext} ] def /setdecoding {/t decodingdefs 3 -1 roll get bind def} bind def /w {neg moveto show} bind def /m {neg dup /y exch def moveto} bind def /done {/lastpage where {pop lastpage} if} def /f { dup /font exch def findfont exch dup /ptsize exch def scaling div dup /size exch def scalefont setfont linewidth ptsize mul scaling 10 mul div setlinewidth /spacewidth ( ) stringwidth pop def } bind def /changefont { /fontheight exch def /fontslant exch def currentfont [ 1 0 fontheight ptsize div fontslant sin mul fontslant cos div fontheight ptsize div 0 0 ] makefont setfont } bind def /sf {f} bind def /cf { dup length 2 idiv /entries exch def /chtab exch def /newencoding exch def /newfont exch def findfont dup length 1 add dict /newdict exch def {1 index /FID ne {newdict 3 1 roll put}{pop pop} ifelse} forall newencoding type /arraytype eq {newdict /Encoding newencoding put} if newdict /Metrics entries dict put newdict /Metrics get begin chtab aload pop 1 1 entries {pop def} for newfont newdict definefont pop end } bind def % % A few arrays used to adjust reference points and character widths in some % of the printer resident fonts. If square roots are too high try changing % the lines describing /radical and /radicalex to, % % /radical [0 -75 550 0] % /radicalex [-50 -75 500 0] % % Move braceleftbt a bit - default PostScript character is off a bit. % /Sdefs [ /bracketlefttp [201 500] /bracketleftbt [201 500] /bracketrighttp [-81 380] /bracketrightbt [-83 380] /braceleftbt [203 490] /bracketrightex [220 -125 500 0] /radical [0 0 550 0] /radicalex [-50 0 500 0] /parenleftex [-20 -170 0 0] /integral [100 -50 500 0] /infinity [10 -75 730 0] ] def /S1defs [ /underscore [0 80 500 0] /endash [7 90 650 0] ] def % % Tries to round clipping path dimensions, as stored in array pagebbox, so they % match one of the known sizes in the papersizes array. Lower left coordinates % are always set to 0. % /roundpagebbox { 7 dict begin /papersizes [8.5 inch 11 inch 14 inch 17 inch] def /mappapersize { /val exch def /slop .5 inch def /diff slop def /j 0 def 0 1 papersizes length 1 sub { /i exch def papersizes i get val sub abs dup diff le {/diff exch def /j i def} {pop} ifelse } for diff slop lt {papersizes j get} {val} ifelse } def pagebbox 0 0 put pagebbox 1 0 put pagebbox dup 2 get mappapersize 2 exch put pagebbox dup 3 get mappapersize 3 exch put end } bind def %%EndProlog %%BeginSetup mark % % Encoding vector and redefinition of findfont for the ISO Latin1 standard. % The 18 characters missing from ROM based fonts on older printers are noted % below. % /ISOLatin1Encoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright /parenleft /parenright /asterisk /plus /comma /minus /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /dotlessi /grave /acute /circumflex /tilde /macron /breve /dotaccent /dieresis /.notdef /ring /cedilla /.notdef /hungarumlaut /ogonek /caron /space /exclamdown /cent /sterling /currency /yen /brokenbar % missing /section /dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree % missing /plusminus % missing /twosuperior % missing /threesuperior % missing /acute /mu % missing /paragraph /periodcentered /cedilla /onesuperior % missing /ordmasculine /guillemotright /onequarter % missing /onehalf % missing /threequarters % missing /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth % missing /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply % missing /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute % missing /Thorn % missing /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis /eth % missing /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide % missing /oslash /ugrave /uacute /ucircumflex /udieresis /yacute % missing /thorn % missing /ydieresis ] def /NewFontDirectory FontDirectory maxlength dict def % % Apparently no guarantee findfont is defined in systemdict so the obvious % % systemdict /findfont get exec % % can generate an error. So far the only exception is a VT600 (version 48.0). % userdict /@RealFindfont known not { userdict begin /@RealFindfont systemdict begin /findfont load end def end } if /findfont { dup NewFontDirectory exch known not { dup %dup systemdict /findfont get exec % not always in systemdict dup userdict /@RealFindfont get exec dup /Encoding get StandardEncoding eq { dup length dict begin {1 index /FID ne {def}{pop pop} ifelse} forall /Encoding ISOLatin1Encoding def currentdict end /DummyFontName exch definefont } if NewFontDirectory 3 1 roll put } if NewFontDirectory exch get } bind def setup %%EndSetup %%Page: 1 1 /saveobj save def mark 1 pagesetup 12 /Times-Bold f (User) 1980 1230 w (manual) 2249 1230 w (for) 2667 1230 w (old ppm) 2850 1230 w (functions) 3305 1230 w 10 /Times-Bold f (libppm) 720 1920 w 10 /Times-Roman f (Updated: 22 July 2004) 720 2076 w (Table Of Contents) 720 2196 w 10 /Times-Bold f (NAME) 720 2436 w 10 /Times-Roman f (libppm \255 functions for PPM programs) 720 2592 w 10 /Times-Bold f (SYNOPSIS) 720 2832 w (#include ) 720 2988 w 10 /S f (<) 1107 2988 w 10 /Times-Bold f (ppm.h) 1162 2988 w 10 /S f (>) 1438 2988 w 10 /Times-Bold f (void ppm) 720 3144 w 10 /S f (_) 1124 3144 w 10 /Times-Bold f (init\(int *) 1174 3144 w 10 /Times-Italic f (argcP) 1569 3144 w 10 /Times-Bold f (, char *) 1813 3144 w 10 /Times-Italic f (argv) 2157 3144 w 10 /Times-Bold f ([]\);) 2340 3144 w (pixel ** ppm) 720 3300 w 10 /S f (_) 1271 3300 w 10 /Times-Bold f (allocarray\( int) 1321 3300 w 10 /Times-Italic f (cols) 1959 3300 w 10 /Times-Bold f (,int) 2120 3300 w 10 /Times-Italic f (rows) 2287 3300 w 10 /Times-Bold f (\);) 2482 3300 w (pixel * ppm) 720 3456 w 10 /S f (_) 1221 3456 w 10 /Times-Bold f (allocrow\(int) 1271 3456 w 10 /Times-Italic f (cols) 1812 3456 w 10 /Times-Bold f (\);) 1973 3456 w (void ppm) 720 3612 w 10 /S f (_) 1124 3612 w 10 /Times-Bold f (freearray\(pixel **) 1174 3612 w 10 /Times-Italic f (pixels) 1966 3612 w 10 /Times-Bold f (, int) 2199 3612 w 10 /Times-Italic f (rows) 2391 3612 w 10 /Times-Bold f (\);) 2586 3612 w (void ppm) 720 3768 w 10 /S f (_) 1124 3768 w 10 /Times-Bold f (freerow\(pixel *) 1174 3768 w 10 /Times-Italic f (pixelrow) 1844 3768 w 10 /Times-Bold f (\);) 2194 3768 w (void ppm) 720 3924 w 10 /S f (_) 1124 3924 w 10 /Times-Bold f (readppminit\(FILE *) 1174 3924 w 10 /Times-Italic f (fp) 2075 3924 w 10 /Times-Bold f (, int *) 2153 3924 w 10 /Times-Italic f (colsP) 2420 3924 w 10 /Times-Bold f (, int *) 2642 3924 w 10 /Times-Italic f (rowsP) 2909 3924 w 10 /Times-Bold f (, pixval *) 3165 3924 w 10 /Times-Italic f (maxvalP) 3577 3924 w 10 /Times-Bold f (,int *) 3926 3924 w 10 /Times-Italic f (formatP) 4168 3924 w 10 /Times-Bold f (\);) 4521 3924 w (void ppm) 720 4080 w 10 /S f (_) 1124 4080 w 10 /Times-Bold f (readppmrow\(FILE *) 1174 4080 w 10 /Times-Italic f (fp) 2071 4080 w 10 /Times-Bold f (, pixel *) 2149 4080 w 10 /Times-Italic f (pixelrow) 2505 4080 w 10 /Times-Bold f (, int) 2855 4080 w 10 /Times-Italic f (cols) 3047 4080 w 10 /Times-Bold f (, pixval) 3208 4080 w 10 /Times-Italic f (maxval) 3545 4080 w 10 /Times-Bold f (, int) 3833 4080 w 10 /Times-Italic f (format) 4025 4080 w 10 /Times-Bold f (\);) 4292 4080 w (pixel ** ppm) 720 4236 w 10 /S f (_) 1271 4236 w 10 /Times-Bold f (readppm\(FILE *) 1321 4236 w 10 /Times-Italic f (fp) 2077 4236 w 10 /Times-Bold f (, int *) 2155 4236 w 10 /Times-Italic f (colsP) 2422 4236 w 10 /Times-Bold f (, int *) 2644 4236 w 10 /Times-Italic f (rowsP) 2911 4236 w 10 /Times-Bold f (, pixvalP *) 3167 4236 w 10 /Times-Italic f (maxvalP) 3640 4236 w 10 /Times-Bold f (\);) 3989 4236 w (void ppm) 720 4392 w 10 /S f (_) 1124 4392 w 10 /Times-Bold f (writeppminit\(FILE *) 1174 4392 w 10 /Times-Italic f (fp) 2102 4392 w 10 /Times-Bold f (, int) 2180 4392 w 10 /Times-Italic f (cols) 2372 4392 w 10 /Times-Bold f (, int) 2533 4392 w 10 /Times-Italic f (rows) 2725 4392 w 10 /Times-Bold f (, pixval) 2920 4392 w 10 /Times-Italic f (maxval) 3257 4392 w 10 /Times-Bold f (, int) 3545 4392 w 10 /Times-Italic f (forceplain) 3737 4392 w 10 /Times-Bold f (\);) 4148 4392 w (void ppm) 720 4548 w 10 /S f (_) 1124 4548 w 10 /Times-Bold f (writeppmrow\(FILE *) 1174 4548 w 10 /Times-Italic f (fp) 2123 4548 w 10 /Times-Bold f (, pixel *) 2201 4548 w 10 /Times-Italic f (pixelrow) 2557 4548 w 10 /Times-Bold f (, int) 2907 4548 w 10 /Times-Italic f (cols) 3099 4548 w 10 /Times-Bold f (, pixval) 3260 4548 w 10 /Times-Italic f (maxval) 3597 4548 w 10 /Times-Bold f (, int) 3885 4548 w 10 /Times-Italic f (forceplain) 4077 4548 w 10 /Times-Bold f (\);) 4488 4548 w (void ppm) 720 4704 w 10 /S f (_) 1124 4704 w 10 /Times-Bold f (writeppm\(FILE *) 1174 4704 w 10 /Times-Italic f (fp) 1957 4704 w 10 /Times-Bold f (, pixel **) 2035 4704 w 10 /Times-Italic f (pixels) 2441 4704 w 10 /Times-Bold f (, int) 2674 4704 w 10 /Times-Italic f (cols) 2866 4704 w 10 /Times-Bold f (, int) 3027 4704 w 10 /Times-Italic f (rows) 3219 4704 w 10 /Times-Bold f (, pixval) 3414 4704 w 10 /Times-Italic f (maxval) 3751 4704 w 10 /Times-Bold f (, int) 4039 4704 w 10 /Times-Italic f (forceplain) 4231 4704 w 10 /Times-Bold f (\);) 4642 4704 w (void ppm) 720 4860 w 10 /S f (_) 1124 4860 w 10 /Times-Bold f (writeppm\(FILE *) 1174 4860 w 10 /Times-Italic f (fp) 1957 4860 w 10 /Times-Bold f (, pixel **) 2035 4860 w 10 /Times-Italic f (pixels) 2441 4860 w 10 /Times-Bold f (, int) 2674 4860 w 10 /Times-Italic f (cols) 2866 4860 w 10 /Times-Bold f (, int) 3027 4860 w 10 /Times-Italic f (rows) 3219 4860 w 10 /Times-Bold f (, pixval) 3414 4860 w 10 /Times-Italic f (maxval) 3751 4860 w 10 /Times-Bold f (, int) 4039 4860 w 10 /Times-Italic f (forceplain) 4231 4860 w 10 /Times-Bold f (\);) 4642 4860 w (void ppm) 720 5016 w 10 /S f (_) 1124 5016 w 10 /Times-Bold f (nextimage\(FILE *) 1174 5016 w 10 /Times-Italic f (file) 1979 5016 w 10 /Times-Bold f (, int * const) 2107 5016 w 10 /Times-Italic f (eofP) 2621 5016 w 10 /Times-Bold f (\);) 2804 5016 w (void) 720 5172 w (ppm) 936 5172 w 10 /S f (_) 1131 5172 w 10 /Times-Bold f (check\(FILE) 1181 5172 w (*) 1724 5172 w 10 /Times-Italic f (file) 1807 5172 w 10 /Times-Bold f (,) 1935 5172 w (const) 1993 5172 w (enum) 2248 5172 w (pm) 2520 5172 w 10 /S f (_) 2659 5172 w 10 /Times-Bold f (check) 2709 5172 w 10 /S f (_) 2953 5172 w 10 /Times-Bold f (type) 3003 5172 w 10 /Times-Italic f (check) 3219 5172 w 10 /S f (_) 3445 5172 w 10 /Times-Italic f (type) 3495 5172 w 10 /Times-Bold f (,) 3661 5172 w (const) 3719 5172 w (int) 3974 5172 w 10 /Times-Italic f (format) 4124 5172 w 10 /Times-Bold f (,) 4391 5172 w (const) 4449 5172 w (int) 4704 5172 w 10 /Times-Italic f (cols) 4854 5172 w 10 /Times-Bold f (,) 5015 5172 w (const int) 720 5292 w 10 /Times-Italic f (rows) 1109 5292 w 10 /Times-Bold f (, const int) 1304 5292 w 10 /Times-Italic f (maxval) 1743 5292 w 10 /Times-Bold f (,) 2031 5292 w (enum pm) 720 5412 w 10 /S f (_) 1123 5412 w 10 /Times-Bold f (check) 1173 5412 w 10 /S f (_) 1417 5412 w 10 /Times-Bold f (code * const) 1467 5412 w 10 /Times-Italic f (retval) 2008 5412 w 10 /Times-Bold f (\);) 2241 5412 w (typedef ... pixel; typedef ... pixval;) 720 5568 w (#define PPM) 720 5724 w 10 /S f (_) 1272 5724 w 10 /Times-Bold f (MAXMAXVAL ...) 1322 5724 w (#define PPM) 720 5880 w 10 /S f (_) 1272 5880 w 10 /Times-Bold f (OVERALLMAXVAL ...) 1322 5880 w (#define PPM) 720 6036 w 10 /S f (_) 1272 6036 w 10 /Times-Bold f (FORMAT ...) 1322 6036 w (#define RPPM) 720 6192 w 10 /S f (_) 1344 6192 w 10 /Times-Bold f (FORMAT ...) 1394 6192 w (#define PPM) 720 6348 w 10 /S f (_) 1272 6348 w 10 /Times-Bold f (TYPE PPM) 1322 6348 w 10 /S f (_) 1830 6348 w 10 /Times-Bold f (FORMAT) 1880 6348 w (#define PPM) 720 6504 w 10 /S f (_) 1272 6504 w 10 /Times-Bold f (FORMAT) 1322 6504 w 10 /S f (_) 1766 6504 w 10 /Times-Bold f (TYPE\() 1816 6504 w 10 /Times-Italic f (format) 2116 6504 w 10 /Times-Bold f (\) ...) 2383 6504 w (extern pixval ppm) 720 6660 w 10 /S f (_) 1498 6660 w 10 /Times-Bold f (pbmmaxval;) 1548 6660 w (pixval PPM) 720 6816 w 10 /S f (_) 1223 6816 w 10 /Times-Bold f (GETR\(pixel) 1273 6816 w 10 /Times-Italic f (p) 1821 6816 w 10 /Times-Bold f (\)) 1871 6816 w (pixval PPM) 720 6972 w 10 /S f (_) 1223 6972 w 10 /Times-Bold f (GETG\(pixel) 1273 6972 w 10 /Times-Italic f (p) 1827 6972 w 10 /Times-Bold f (\)) 1877 6972 w (pixval PPM) 720 7128 w 10 /S f (_) 1223 7128 w 10 /Times-Bold f (GETB\(pixel) 1273 7128 w 10 /Times-Italic f (p) 1816 7128 w 10 /Times-Bold f (\)) 1866 7128 w (void PPM) 720 7284 w 10 /S f (_) 1145 7284 w 10 /Times-Bold f (ASSIGN\(pixel) 1195 7284 w 10 /Times-Italic f (p) 1832 7284 w 10 /Times-Bold f (, pixval) 1882 7284 w 10 /Times-Italic f (red) 2219 7284 w 10 /Times-Bold f (, pixval) 2352 7284 w 10 /Times-Italic f (grn) 2689 7284 w 10 /Times-Bold f (, pixval) 2828 7284 w 10 /Times-Italic f (blu) 3165 7284 w 10 /Times-Bold f (\)) 3293 7284 w cleartomark showpage saveobj restore %%EndPage: 1 1 %%Page: 2 2 /saveobj save def mark 2 pagesetup 10 /Times-Roman f (\255 2 \255) 2797 480 w 10 /Times-Bold f (int PPM) 720 840 w 10 /S f (_) 1078 840 w 10 /Times-Bold f (EQUAL\(pixel) 1128 840 w 10 /Times-Italic f (p) 1748 840 w 10 /Times-Bold f (, pixel) 1798 840 w 10 /Times-Italic f (q) 2079 840 w 10 /Times-Bold f (\)) 2129 840 w (int PPM) 720 996 w 10 /S f (_) 1078 996 w 10 /Times-Bold f (ISGRAY\(pixel) 1128 996 w 10 /Times-Italic f (p) 1781 996 w 10 /Times-Bold f (\)) 1831 996 w (void PPM) 720 1152 w 10 /S f (_) 1145 1152 w 10 /Times-Bold f (DEPTH\(pixel) 1195 1152 w 10 /Times-Italic f (newp) 1804 1152 w 10 /Times-Bold f (, pixel) 2015 1152 w 10 /Times-Italic f (p) 2296 1152 w 10 /Times-Bold f (, pixval) 2346 1152 w 10 /Times-Italic f (oldmaxval) 2683 1152 w 10 /Times-Bold f (, pixval) 3099 1152 w 10 /Times-Italic f (newmaxval) 3436 1152 w 10 /Times-Bold f (\)) 3885 1152 w (pixel ppm) 720 1308 w 10 /S f (_) 1146 1308 w 10 /Times-Bold f (parsecolor\(char *) 1196 1308 w 10 /Times-Italic f (colorname) 1972 1308 w 10 /Times-Bold f (, pixval) 2399 1308 w 10 /Times-Italic f (maxval) 2736 1308 w 10 /Times-Bold f (\)) 3024 1308 w (char * ppm) 720 1464 w 10 /S f (_) 1209 1464 w 10 /Times-Bold f (colorname\(pixel *) 1259 1464 w 10 /Times-Italic f (colorP) 2047 1464 w 10 /Times-Bold f (, pixval) 2319 1464 w 10 /Times-Italic f (maxval) 2656 1464 w 10 /Times-Bold f (, int) 2944 1464 w 10 /Times-Italic f (hexok) 3136 1464 w 10 /Times-Bold f (\)) 3368 1464 w (void) 720 1620 w (ppm) 934 1620 w 10 /S f (_) 1129 1620 w 10 /Times-Bold f (readcolornamefile\() 1179 1620 w (const) 2018 1620 w (char) 2270 1620 w (*) 2494 1620 w 10 /Times-Italic f (fileName) 2544 1620 w 10 /Times-Roman f (,) 2905 1620 w 10 /Times-Bold f (int) 2960 1620 w 10 /Times-Italic f (mustOpen) 3107 1620 w 10 /Times-Roman f (,) 3512 1620 w 10 /Times-Bold f (colorhash) 3567 1620 w 10 /S f (_) 3984 1620 w 10 /Times-Bold f (table) 4034 1620 w (*) 4275 1620 w 10 /Times-Italic f (chtP) 4355 1620 w 10 /Times-Roman f (,) 4538 1620 w 10 /Times-Bold f (const) 4593 1620 w (char) 4846 1620 w (***) 720 1740 w 10 /Times-Italic f (colornamesP) 895 1740 w 10 /Times-Bold f (\)) 1447 1740 w (DESCRIPTION) 720 1980 w 10 /Times-Roman f (These library functions are part of Netpbm.) 720 2172 w 10 /Times-Bold f (TYPES AND CONSTANTS) 720 2412 w 10 /Times-Roman f (Each) 720 2568 w 10 /Times-Bold f (pixel) 979 2568 w 10 /Times-Roman f (contains) 1245 2568 w (three) 1638 2568 w 10 /Times-Bold f (pixval) 1897 2568 w 10 /Times-Roman f (s,) 2159 2568 w (each) 2283 2568 w (of) 2525 2568 w (which) 2668 2568 w (should) 2972 2568 w (contain) 3299 2568 w (only) 3654 2568 w (the) 3893 2568 w (values) 4076 2568 w (between) 4392 2568 w 10 /Times-Bold f (0) 4785 2568 w 10 /Times-Roman f (and) 4896 2568 w 10 /Times-Bold f (PPM) 720 2688 w 10 /S f (_) 936 2688 w 10 /Times-Bold f (MAXMAXVAL) 986 2688 w 10 /Times-Roman f (.) 1673 2688 w 10 /Times-Bold f (ppm) 1760 2688 w 10 /S f (_) 1955 2688 w 10 /Times-Bold f (pbmmaxval) 2005 2688 w 10 /Times-Roman f (is) 2548 2688 w (the) 2652 2688 w (maxval) 2811 2688 w (used) 3142 2688 w (when) 3362 2688 w (a) 3615 2688 w (PPM) 3696 2688 w (program) 3934 2688 w (reads) 4308 2688 w (a) 4554 2688 w (PBM) 4634 2688 w (file.) 4882 2688 w (Normally it is 1; however, for some programs, a larger value gives better results.) 720 2808 w 10 /Times-Bold f (MANIPULATING PIXELS) 720 3048 w 10 /Times-Roman f (The) 720 3240 w (macros) 902 3240 w 10 /Times-Bold f (PPM) 1217 3240 w 10 /S f (_) 1433 3240 w 10 /Times-Bold f (GETR) 1483 3240 w 10 /Times-Roman f (,) 1767 3240 w 10 /Times-Bold f (PPM) 1819 3240 w 10 /S f (_) 2035 3240 w 10 /Times-Bold f (GETG) 2085 3240 w 10 /Times-Roman f (,) 2375 3240 w (and) 2427 3240 w 10 /Times-Bold f (PPM) 2598 3240 w 10 /S f (_) 2814 3240 w 10 /Times-Bold f (GETB) 2864 3240 w 10 /Times-Roman f (retrieve) 3170 3240 w (the) 3502 3240 w (red,) 3652 3240 w (green,) 3832 3240 w (or) 4106 3240 w (blue) 4217 3240 w (sample,) 4417 3240 w (respec\255) 4753 3240 w (tively, from the given pixel.) 720 3360 w (The) 720 3516 w 10 /Times-Bold f (PPM) 900 3516 w 10 /S f (_) 1116 3516 w 10 /Times-Bold f (ASSIGN) 1166 3516 w 10 /Times-Roman f (macro assigns the given values to the red, green, and blue samples of the given pixel.) 1564 3516 w (The) 720 3672 w 10 /Times-Bold f (PPM) 900 3672 w 10 /S f (_) 1116 3672 w 10 /Times-Bold f (EQUAL) 1166 3672 w 10 /Times-Roman f (macro tests two pixels for equality.) 1547 3672 w (The) 720 3828 w 10 /Times-Bold f (PPM) 904 3828 w 10 /S f (_) 1120 3828 w 10 /Times-Bold f (ISGRAY) 1170 3828 w 10 /Times-Roman f (macro) 1588 3828 w (tests) 1866 3828 w (a) 2073 3828 w (pixel) 2146 3828 w (for) 2375 3828 w (being) 2520 3828 w (gray.) 2771 3828 w (It) 3027 3828 w (returns) 3117 3828 w (true) 3423 3828 w (if) 3607 3828 w (and) 3697 3828 w (only) 3870 3828 w (if) 4077 3828 w (the) 4167 3828 w (color) 4318 3828 w (of) 4552 3828 w (pixel) 4664 3828 w 10 /Times-Italic f (p) 4893 3828 w 10 /Times-Roman f (is) 4973 3828 w (black, white, or gray.) 720 3948 w (The) 720 4104 w 10 /Times-Bold f (PPM) 906 4104 w 10 /S f (_) 1122 4104 w 10 /Times-Bold f (DEPTH) 1172 4104 w 10 /Times-Roman f (macro) 1548 4104 w (scales) 1828 4104 w (the) 2097 4104 w (colors) 2250 4104 w (of) 2525 4104 w (pixel) 2639 4104 w 10 /Times-Italic f (p) 2870 4104 w 10 /Times-Roman f (according) 2951 4104 w (the) 3375 4104 w (old) 3528 4104 w (and) 3687 4104 w (new) 3862 4104 w (maxvals) 4059 4104 w (and) 4423 4104 w (assigns) 4598 4104 w (the) 4918 4104 w (new values to) 720 4224 w 10 /Times-Italic f (newp) 1294 4224 w 10 /Times-Roman f (.) 1505 4224 w (It is intended to make writing ppmtowhatever easier.) 1580 4224 w (The) 720 4380 w 10 /Times-Bold f (PPM) 922 4380 w 10 /S f (_) 1138 4380 w 10 /Times-Bold f (LUMIN) 1188 4380 w 10 /Times-Roman f (,) 1532 4380 w 10 /Times-Bold f (PPM) 1604 4380 w 10 /S f (_) 1820 4380 w 10 /Times-Bold f (CHROM) 1870 4380 w 10 /S f (_) 2264 4380 w 10 /Times-Bold f (R) 2314 4380 w 10 /Times-Roman f (,) 2386 4380 w (and) 2458 4380 w 10 /Times-Bold f (PPM) 2649 4380 w 10 /S f (_) 2865 4380 w 10 /Times-Bold f (CHROM) 2915 4380 w 10 /S f (_) 3309 4380 w 10 /Times-Bold f (B) 3359 4380 w 10 /Times-Roman f (macros) 3473 4380 w (determine) 3808 4380 w (the) 4254 4380 w (luminance,) 4424 4380 w (red) 4913 4380 w (chrominance,) 720 4500 w (and) 1291 4500 w (blue) 1466 4500 w (chrominance,) 1669 4500 w (respectively,) 2240 4500 w (of) 2778 4500 w (the) 2892 4500 w (pixel) 3045 4500 w 10 /Times-Italic f (p) 3276 4500 w 10 /Times-Roman f (.) 3326 4500 w (The) 3407 4500 w (scale) 3593 4500 w (of) 3823 4500 w (all) 3936 4500 w (these) 4066 4500 w (values) 4301 4500 w (is) 4586 4500 w (the) 4683 4500 w (same) 4835 4500 w (as the scale of the input samples \(i.e. 0 to maxval for luminance, \255maxval/2 to maxval/2 for chrominance\).) 720 4620 w (Note that the macros do it by floating point multiplication.) 720 4776 w (If) 3109 4776 w (you) 3201 4776 w (are) 3377 4776 w (computing) 3524 4776 w (these) 3978 4776 w (values) 4209 4776 w (over) 4490 4776 w (an) 4693 4776 w (entire) 4813 4776 w (image,) 720 4896 w (it) 1024 4896 w (may) 1115 4896 w (be) 1322 4896 w (significantly) 1451 4896 w (faster) 1986 4896 w (to) 2242 4896 w (do) 2355 4896 w (it) 2489 4896 w (with) 2579 4896 w (multiplication) 2791 4896 w (tables) 3387 4896 w (instead.) 3654 4896 w (Compute) 4021 4896 w (all) 4422 4896 w (the) 4556 4896 w (possible) 4712 4896 w (products once up front, then for each pixel, just look up the products in the tables.) 720 5016 w 10 /Times-Bold f (INITIALIZATION) 720 5256 w (ppm) 720 5448 w 10 /S f (_) 915 5448 w 10 /Times-Bold f (init\(\)) 965 5448 w 10 /Times-Roman f (is identical to) 1201 5448 w 10 /Times-Bold f (pm) 1765 5448 w 10 /S f (_) 1904 5448 w 10 /Times-Bold f (init) 1954 5448 w 10 /Times-Roman f (.) 2099 5448 w 10 /Times-Bold f (MEMORY MANAGEMENT) 720 5688 w (ppm) 720 5844 w 10 /S f (_) 915 5844 w 10 /Times-Bold f (allocarray\(\)) 965 5844 w 10 /Times-Roman f (allocates an array of pixels.) 1494 5844 w 10 /Times-Bold f (ppm) 720 6000 w 10 /S f (_) 915 6000 w 10 /Times-Bold f (allocrow\(\)) 965 6000 w 10 /Times-Roman f (allocates a row of the given number of pixels.) 1422 6000 w 10 /Times-Bold f (ppm) 720 6156 w 10 /S f (_) 915 6156 w 10 /Times-Bold f (freearray\(\)) 965 6156 w 10 /Times-Roman f (frees the array allocated with) 1459 6156 w 10 /Times-Bold f (ppm) 2641 6156 w 10 /S f (_) 2836 6156 w 10 /Times-Bold f (allocarray\(\)) 2886 6156 w 10 /Times-Roman f (containing the given number of rows.) 3415 6156 w 10 /Times-Bold f (ppm) 720 6312 w 10 /S f (_) 915 6312 w 10 /Times-Bold f (freerow\(\)) 965 6312 w 10 /Times-Roman f (frees a row of pixelss allocated with) 1387 6312 w 10 /Times-Bold f (ppm) 2853 6312 w 10 /S f (_) 3048 6312 w 10 /Times-Bold f (allocrow\(\)) 3098 6312 w 10 /Times-Roman f (.) 3530 6312 w 10 /Times-Bold f (READING FILES) 720 6552 w 10 /Times-Roman f (If a function in this section is called on a PBM or PGM) 720 6744 w (format) 2956 6744 w (file,) 3248 6744 w (it) 3432 6744 w (translates) 3514 6744 w (the) 3917 6744 w (PBM) 4065 6744 w (or) 4303 6744 w (PGM) 4412 6744 w (file) 4655 6744 w (into) 4814 6744 w (a) 4996 6744 w (PPM) 720 6864 w (file) 947 6864 w (on) 1106 6864 w (the) 1232 6864 w (fly) 1380 6864 w (and) 1517 6864 w (functions) 1687 6864 w (as) 2085 6864 w (if) 2194 6864 w (it) 2281 6864 w (were) 2363 6864 w (called) 2582 6864 w (on) 2846 6864 w (the) 2972 6864 w (equivalent PPM file.) 3120 6864 w (The) 3995 6864 w 10 /Times-Italic f (format) 4175 6864 w 10 /Times-Roman f (value returned) 4467 6864 w (by) 720 6984 w 10 /Times-Bold f (ppm) 856 6984 w 10 /S f (_) 1051 6984 w 10 /Times-Bold f (readppminit\(\)) 1101 6984 w 10 /Times-Roman f (is,) 1737 6984 w (however,) 1865 6984 w (not) 2269 6984 w (translated.) 2433 6984 w (It) 2907 6984 w (represents) 3004 6984 w (the) 3444 6984 w (actual) 3602 6984 w (format) 3876 6984 w (of) 4178 6984 w (the) 4297 6984 w (PBM) 4455 6984 w (or) 4703 6984 w (PGM) 4823 6984 w (file.) 720 7104 w 10 /Times-Bold f (ppm) 720 7260 w 10 /S f (_) 915 7260 w 10 /Times-Bold f (readppminit\(\)) 965 7260 w 10 /Times-Roman f (reads) 1605 7260 w (the) 1855 7260 w (header) 2017 7260 w (of) 2322 7260 w (a) 2445 7260 w (PPM) 2529 7260 w (file,) 2770 7260 w (returning) 2968 7260 w (all) 3375 7260 w (the) 3516 7260 w (information) 3679 7260 w (from) 4192 7260 w (the) 4427 7260 w (header) 4590 7260 w (and) 4896 7260 w cleartomark showpage saveobj restore %%EndPage: 2 2 %%Page: 3 3 /saveobj save def mark 3 pagesetup 10 /Times-Roman f (\255 3 \255) 2797 480 w (leaving the file positioned just after the header.) 720 840 w 10 /Times-Bold f (ppm) 720 996 w 10 /S f (_) 915 996 w 10 /Times-Bold f (readppmrow\(\)) 965 996 w 10 /Times-Roman f (reads) 1613 996 w (a) 1850 996 w (row) 1921 996 w (of) 2103 996 w (pixels) 2213 996 w (into) 2479 996 w (the) 2662 996 w 10 /Times-Italic f (pixelrow) 2811 996 w 10 /Times-Roman f (array.) 3188 996 w 10 /Times-Italic f (format) 3469 996 w 10 /Times-Roman f (,) 3736 996 w 10 /Times-Italic f (cols) 3788 996 w 10 /Times-Roman f (,) 3949 996 w (and) 4001 996 w 10 /Times-Italic f (maxval) 4172 996 w 10 /Times-Roman f (are) 4487 996 w (the) 4635 996 w (values) 4785 996 w (returned by) 720 1116 w 10 /Times-Bold f (ppm) 1202 1116 w 10 /S f (_) 1397 1116 w 10 /Times-Bold f (readppminit\(\)) 1447 1116 w 10 /Times-Roman f (.) 2047 1116 w 10 /Times-Bold f (ppm) 720 1272 w 10 /S f (_) 915 1272 w 10 /Times-Bold f (readppm\(\)) 965 1272 w 10 /Times-Roman f (reads) 1449 1272 w (an) 1688 1272 w (entire) 1811 1272 w (PPM) 2067 1272 w (image) 2298 1272 w (into) 2572 1272 w (memory,) 2758 1272 w (returning) 3146 1272 w (the) 3542 1272 w (allocated) 3694 1272 w (array) 4084 1272 w (as) 4318 1272 w (its) 4431 1272 w (return) 4556 1272 w (value) 4824 1272 w (and) 720 1392 w (returning) 919 1392 w (the) 1340 1392 w (information) 1517 1392 w (from) 2044 1392 w (the) 2293 1392 w (header) 2470 1392 w (as) 2790 1392 w 10 /Times-Italic f (rows) 2928 1392 w 10 /Times-Roman f (,) 3123 1392 w 10 /Times-Italic f (cols) 3203 1392 w 10 /Times-Roman f (,) 3364 1392 w (and) 3444 1392 w 10 /Times-Italic f (maxval) 3643 1392 w 10 /Times-Roman f (.) 3931 1392 w (This) 4036 1392 w (function) 4269 1392 w (combines) 4657 1392 w 10 /Times-Bold f (ppm) 720 1512 w 10 /S f (_) 915 1512 w 10 /Times-Bold f (readppminit\(\)) 965 1512 w 10 /Times-Roman f (,) 1565 1512 w 10 /Times-Bold f (ppm) 1615 1512 w 10 /S f (_) 1810 1512 w 10 /Times-Bold f (allocarray\(\)) 1860 1512 w 10 /Times-Roman f (, and) 2364 1512 w 10 /Times-Bold f (ppm) 2583 1512 w 10 /S f (_) 2778 1512 w 10 /Times-Bold f (readppmrow\(\)) 2828 1512 w 10 /Times-Roman f (.) 3449 1512 w 10 /Times-Bold f (WRITING FILES) 720 1752 w (ppm) 720 1908 w 10 /S f (_) 915 1908 w 10 /Times-Bold f (writeppminit\(\)) 965 1908 w 10 /Times-Roman f (writes the header for a PPM file and leaves it positioned just after the header.) 1617 1908 w 10 /Times-Italic f (forceplain) 720 2064 w 10 /Times-Roman f (is) 1161 2064 w (a) 1258 2064 w (logical) 1332 2064 w (value) 1634 2064 w (that) 1880 2064 w (tells) 2060 2064 w 10 /Times-Bold f (ppm) 2257 2064 w 10 /S f (_) 2452 2064 w 10 /Times-Bold f (writeppminit\(\)) 2502 2064 w 10 /Times-Roman f (to) 3184 2064 w (write) 3293 2064 w (a) 3529 2064 w (header) 3604 2064 w (for) 3900 2064 w (a) 4047 2064 w (plain) 4122 2064 w (PPM) 4353 2064 w (format) 4585 2064 w (file,) 4882 2064 w (as opposed to a raw PPM format file.) 720 2184 w 10 /Times-Bold f (ppm) 720 2340 w 10 /S f (_) 915 2340 w 10 /Times-Bold f (writeppmrow\(\)) 965 2340 w 10 /Times-Roman f (writes the row) 1638 2340 w 10 /Times-Italic f (pixelrow) 2234 2340 w 10 /Times-Roman f (to a PPM file.) 2609 2340 w (For meaningful results,) 3215 2340 w 10 /Times-Italic f (cols) 4170 2340 w 10 /Times-Roman f (,) 4331 2340 w 10 /Times-Italic f (maxval) 4381 2340 w 10 /Times-Roman f (,) 4669 2340 w (and) 4720 2340 w 10 /Times-Italic f (for\255) 4890 2340 w (ceplain) 720 2460 w 10 /Times-Roman f (must be the same as was used with) 1039 2460 w 10 /Times-Bold f (ppm) 2454 2460 w 10 /S f (_) 2649 2460 w 10 /Times-Bold f (writeppminit\(\)) 2699 2460 w 10 /Times-Roman f (.) 3326 2460 w 10 /Times-Bold f (ppm) 720 2616 w 10 /S f (_) 915 2616 w 10 /Times-Bold f (writeppm\(\)) 965 2616 w 10 /Times-Roman f (write) 1527 2616 w (the) 1812 2616 w (header) 2014 2616 w (and) 2359 2616 w (all) 2583 2616 w (data) 2763 2616 w (for) 3009 2616 w (a) 3205 2616 w (PPM) 3329 2616 w (image.) 3610 2616 w (This) 3984 2616 w (function) 4243 2616 w (combines) 4657 2616 w 10 /Times-Bold f (ppm) 720 2736 w 10 /S f (_) 915 2736 w 10 /Times-Bold f (writeppminit\(\)) 965 2736 w 10 /Times-Roman f (and) 1617 2736 w 10 /Times-Bold f (ppm) 1786 2736 w 10 /S f (_) 1981 2736 w 10 /Times-Bold f (writeppmrow\(\)) 2031 2736 w 10 /Times-Roman f (.) 2679 2736 w 10 /Times-Bold f (MISCELLANEOUS) 720 2976 w (ppm) 720 3168 w 10 /S f (_) 915 3168 w 10 /Times-Bold f (nextimage\(\)) 965 3168 w 10 /Times-Roman f (positions) 1543 3168 w (a) 1979 3168 w (PPM) 2097 3168 w (input) 2372 3168 w (file) 2652 3168 w (to) 2859 3168 w (the) 3011 3168 w (next) 3207 3168 w (image) 3453 3168 w (in) 3771 3168 w (it) 3924 3168 w (\(so) 4055 3168 w (that) 4252 3168 w (a) 4477 3168 w (subsequent) 4596 3168 w 10 /Times-Bold f (ppm) 720 3288 w 10 /S f (_) 915 3288 w 10 /Times-Bold f (readppminit\(\)) 965 3288 w 10 /Times-Roman f (reads its header\).) 1590 3288 w 10 /Times-Bold f (ppm) 720 3444 w 10 /S f (_) 915 3444 w 10 /Times-Bold f (nextimage\(\)) 965 3444 w 10 /Times-Roman f (is analogous to) 1494 3444 w 10 /Times-Bold f (pbm) 2119 3444 w 10 /S f (_) 2314 3444 w 10 /Times-Bold f (nextimage\(\)) 2364 3444 w 10 /Times-Roman f (, but works on PPM, PGM, and PBM files.) 2868 3444 w 10 /Times-Bold f (ppm) 720 3600 w 10 /S f (_) 915 3600 w 10 /Times-Bold f (check\(\)) 965 3600 w 10 /Times-Roman f (checks) 1329 3600 w (for) 1629 3600 w (the) 1774 3600 w (common) 1925 3600 w (file) 2304 3600 w (integrity) 2466 3600 w (error) 2834 3600 w (where) 3056 3600 w (the) 3328 3600 w (file) 3479 3600 w (is) 3641 3600 w (the) 3737 3600 w (wrong) 3888 3600 w (size) 4172 3600 w (to) 4356 3600 w (contain) 4464 3600 w (all) 4788 3600 w (the) 4918 3600 w (image data.) 720 3720 w 10 /Times-Bold f (ppm) 720 3876 w 10 /S f (_) 915 3876 w 10 /Times-Bold f (check\(\)) 965 3876 w 10 /Times-Roman f (is analogous to) 1325 3876 w 10 /Times-Bold f (pbm) 1950 3876 w 10 /S f (_) 2145 3876 w 10 /Times-Bold f (check\(\)) 2195 3876 w 10 /Times-Roman f (, but works on PPM, PGM, and PBM files.) 2505 3876 w 10 /Times-Bold f (COLOR) 720 4116 w (Luminance, Chrominance \(YcbCr\)) 720 4392 w 10 /Times-Roman f (float PPM) 820 4608 w 10 /S f (_) 1229 4608 w 10 /Times-Roman f (LUMIN\(pixel p\);) 1279 4608 w (float PPM) 820 4728 w 10 /S f (_) 1229 4728 w 10 /Times-Roman f (CHROM) 1279 4728 w 10 /S f (_) 1646 4728 w 10 /Times-Roman f (B\(pixel p\);) 1696 4728 w (float PPM) 820 4848 w 10 /S f (_) 1229 4848 w 10 /Times-Roman f (CHROM) 1279 4848 w 10 /S f (_) 1646 4848 w 10 /Times-Roman f (R\(pixel p\);) 1696 4848 w 10 /Times-Bold f (PPM) 720 5064 w 10 /S f (_) 936 5064 w 10 /Times-Bold f (LUMIN) 986 5064 w 10 /Times-Roman f (takes) 1358 5064 w (a) 1591 5064 w 10 /Times-Bold f (pixel) 1663 5064 w 10 /Times-Roman f (as) 1897 5064 w (an) 2008 5064 w (argument) 2130 5064 w (and) 2535 5064 w (returns) 2707 5064 w (the) 3013 5064 w (luminance) 3164 5064 w (of) 3609 5064 w (that) 3721 5064 w (pixel,) 3900 5064 w (with) 4154 5064 w (the) 4361 5064 w (same) 4512 5064 w (maxval) 4746 5064 w (as the pixel \(e.g. if the pixel's maxval is 255, a) 720 5184 w 10 /Times-Bold f (PPM) 2612 5184 w 10 /S f (_) 2828 5184 w 10 /Times-Bold f (LUMIN) 2878 5184 w 10 /Times-Roman f (value of 255 means fully luminant\).) 3247 5184 w 10 /Times-Bold f (PPM) 720 5340 w 10 /S f (_) 936 5340 w 10 /Times-Bold f (CHROM) 986 5340 w 10 /S f (_) 1380 5340 w 10 /Times-Bold f (B) 1430 5340 w 10 /Times-Roman f (and) 1522 5340 w 10 /Times-Bold f (PPM) 1691 5340 w 10 /S f (_) 1907 5340 w 10 /Times-Bold f (CHROM) 1957 5340 w 10 /S f (_) 2351 5340 w 10 /Times-Bold f (R) 2401 5340 w 10 /Times-Roman f (are similar, for the red and blue chrominance values.) 2498 5340 w (pixel) 820 5520 w (ppm) 820 5640 w 10 /S f (_) 998 5640 w 10 /Times-Roman f (color) 1048 5640 w 10 /S f (_) 1253 5640 w 10 /Times-Roman f (from) 1303 5640 w 10 /S f (_) 1497 5640 w 10 /Times-Roman f (ycbcr\(unsigned int y,) 1547 5640 w (int) 1345 5760 w (cb,) 1701 5760 w (int) 1345 5880 w (cr\);) 1701 5880 w 10 /Times-Bold f (ppm) 720 6096 w 10 /S f (_) 915 6096 w 10 /Times-Bold f (color) 965 6096 w 10 /S f (_) 1181 6096 w 10 /Times-Bold f (from) 1231 6096 w 10 /S f (_) 1441 6096 w 10 /Times-Bold f (ycbcr\(\)) 1491 6096 w 10 /Times-Roman f (converts) 1826 6096 w (in) 2195 6096 w (the) 2304 6096 w (other) 2457 6096 w (direction.) 2693 6096 w (Given) 3129 6096 w (luminance) 3404 6096 w (and) 3851 6096 w (chrominance,) 4027 6096 w (it) 4599 6096 w (returns) 4687 6096 w (a) 4996 6096 w (pixel value.) 720 6216 w 10 /Times-Bold f (Hue, Saturation, Value \(HSV\)) 720 6456 w 10 /Times-Roman f (struct hsv {) 820 6672 w (double h;) 920 6792 w (/* hue \(degrees\)) 1345 6792 w (0..360 */) 2037 6792 w (double s;) 920 6912 w (/* saturation \(0\2551\) */) 1334 6912 w (double v;) 920 7032 w (/* value \(0\2551\) */) 1345 7032 w (};) 820 7152 w cleartomark showpage saveobj restore %%EndPage: 3 3 %%Page: 4 4 /saveobj save def mark 4 pagesetup 10 /Times-Roman f (\255 4 \255) 2797 480 w (pixel) 820 900 w (ppm) 820 1020 w 10 /S f (_) 998 1020 w 10 /Times-Roman f (color) 1048 1020 w 10 /S f (_) 1253 1020 w 10 /Times-Roman f (from) 1303 1020 w 10 /S f (_) 1497 1020 w 10 /Times-Roman f (hsv\(struct hsv const hsv,) 1547 1020 w (pixval) 1295 1140 w (const maxval\);) 1670 1140 w (struct hsv) 820 1380 w (ppm) 820 1500 w 10 /S f (_) 998 1500 w 10 /Times-Roman f (hsv) 1048 1500 w 10 /S f (_) 1187 1500 w 10 /Times-Roman f (from) 1237 1500 w 10 /S f (_) 1431 1500 w 10 /Times-Roman f (color\(pixel) 1481 1500 w (const color,) 1969 1500 w (pixval const maxval\);) 1295 1620 w (These convert a color between from) 720 1836 w 10 /Times-Bold f (pixel) 2182 1836 w 10 /Times-Roman f (\(RGB\) form and HSV.) 2413 1836 w (pixval) 820 2016 w (ppm) 820 2136 w 10 /S f (_) 998 2136 w 10 /Times-Roman f (saturation\(pixel) 1048 2136 w (const p,) 1725 2136 w (pixval const maxval\);) 1195 2256 w (This) 720 2472 w (gives) 928 2472 w (you) 1169 2472 w (the) 1349 2472 w (saturation) 1501 2472 w (of) 1925 2472 w (a) 2038 2472 w (color,) 2112 2472 w (as) 2372 2472 w (a) 2485 2472 w (pixval.) 2559 2472 w (\(e.g.) 2889 2472 w (if) 3096 2472 w (the) 3188 2472 w (saturation) 3341 2472 w (of) 3766 2472 w 10 /Times-Italic f (p) 3880 2472 w 10 /Times-Roman f (is) 3961 2472 w (50%) 4059 2472 w (and) 4273 2472 w 10 /Times-Italic f (maxval) 4448 2472 w 10 /Times-Roman f (is) 4767 2472 w (100,) 4865 2472 w 10 /Times-Bold f (ppm) 720 2592 w 10 /S f (_) 915 2592 w 10 /Times-Bold f (saturation\(\)) 965 2592 w 10 /Times-Roman f (returns 50\).) 1495 2592 w 10 /Times-Bold f (Berlin\255Kay Color) 720 2832 w 10 /Times-Roman f (Brent) 720 3024 w (Berlin) 971 3024 w (and) 1251 3024 w (Paul) 1425 3024 w (Kay) 1633 3024 w (in) 1829 3024 w (1969) 1937 3024 w (did) 2167 3024 w (a) 2325 3024 w (study) 2399 3024 w (which) 2646 3024 w (identified) 2920 3024 w (a) 3333 3024 w (set) 3407 3024 w (of) 3548 3024 w (11) 3661 3024 w (basic) 3791 3024 w (colors) 4026 3024 w (people) 4300 3024 w (universally) 4596 3024 w (recognize.) 720 3144 w (They are:) 1182 3144 w 10 /LucidaSansUnicode22 f (\031) 720 3300 w 10 /Times-Roman f (black) 970 3300 w 10 /LucidaSansUnicode22 f (\031) 720 3456 w 10 /Times-Roman f (gray) 970 3456 w 10 /LucidaSansUnicode22 f (\031) 720 3612 w 10 /Times-Roman f (white) 970 3612 w 10 /LucidaSansUnicode22 f (\031) 720 3768 w 10 /Times-Roman f (red) 970 3768 w 10 /LucidaSansUnicode22 f (\031) 720 3924 w 10 /Times-Roman f (orange) 970 3924 w 10 /LucidaSansUnicode22 f (\031) 720 4080 w 10 /Times-Roman f (yellow) 970 4080 w 10 /LucidaSansUnicode22 f (\031) 720 4236 w 10 /Times-Roman f (green) 970 4236 w 10 /LucidaSansUnicode22 f (\031) 720 4392 w 10 /Times-Roman f (blue) 970 4392 w 10 /LucidaSansUnicode22 f (\031) 720 4548 w 10 /Times-Roman f (violet) 970 4548 w 10 /LucidaSansUnicode22 f (\031) 720 4704 w 10 /Times-Roman f (purple) 970 4704 w 10 /LucidaSansUnicode22 f (\031) 720 4860 w 10 /Times-Roman f (brown) 970 4860 w (The) 720 5052 w 10 /Times-Bold f (bk) 900 5052 w 10 /S f (_) 1012 5052 w 10 /Times-Bold f (color) 1062 5052 w 10 /Times-Roman f (type represents a color from this set:) 1303 5052 w (typedef enum {) 820 5232 w (BKCOLOR) 920 5352 w 10 /S f (_) 1398 5352 w 10 /Times-Roman f (BLACK = 0,) 1448 5352 w (BKCOLOR) 920 5472 w 10 /S f (_) 1398 5472 w 10 /Times-Roman f (GRAY,) 1448 5472 w (BKCOLOR) 920 5592 w 10 /S f (_) 1398 5592 w 10 /Times-Roman f (WHITE,) 1448 5592 w (BKCOLOR) 920 5712 w 10 /S f (_) 1398 5712 w 10 /Times-Roman f (RED,) 1448 5712 w (BKCOLOR) 920 5832 w 10 /S f (_) 1398 5832 w 10 /Times-Roman f (ORANGE,) 1448 5832 w (BKCOLOR) 920 5952 w 10 /S f (_) 1398 5952 w 10 /Times-Roman f (YELLOW,) 1448 5952 w (BKCOLOR) 920 6072 w 10 /S f (_) 1398 6072 w 10 /Times-Roman f (GREEN,) 1448 6072 w (BKCOLOR) 920 6192 w 10 /S f (_) 1398 6192 w 10 /Times-Roman f (BLUE,) 1448 6192 w (BKCOLOR) 920 6312 w 10 /S f (_) 1398 6312 w 10 /Times-Roman f (VIOLET,) 1448 6312 w (BKCOLOR) 920 6432 w 10 /S f (_) 1398 6432 w 10 /Times-Roman f (PURPLE,) 1448 6432 w (BKCOLOR) 920 6552 w 10 /S f (_) 1398 6552 w 10 /Times-Roman f (BROWN) 1448 6552 w (} bk) 820 6672 w 10 /S f (_) 993 6672 w 10 /Times-Roman f (color;) 1043 6672 w (You) 720 6888 w (can) 919 6888 w (use) 1084 6888 w (this) 1244 6888 w (as) 1416 6888 w (an) 1526 6888 w (index) 1647 6888 w (of) 1897 6888 w (an) 2008 6888 w (array,) 2130 6888 w (in) 2387 6888 w (which) 2493 6888 w (case) 2765 6888 w (you) 2964 6888 w (might) 3142 6888 w (also) 3404 6888 w (want) 3593 6888 w (macro) 3815 6888 w 10 /Times-Bold f (BKCOLOR) 4092 6888 w 10 /S f (_) 4604 6888 w 10 /Times-Bold f (COUNT) 4654 6888 w 10 /Times-Roman f (,) 5015 6888 w (which is the number of colors in the set \(11\).) 720 7008 w (To) 720 7164 w (translate) 941 7164 w (between) 1389 7164 w (the) 1831 7164 w 10 /Times-Bold f (bk) 2063 7164 w 10 /S f (_) 2175 7164 w 10 /Times-Bold f (color) 2225 7164 w 10 /Times-Roman f (type) 2551 7164 w (and) 2833 7164 w (the) 3087 7164 w (English) 3319 7164 w (names) 3735 7164 w (of) 4100 7164 w (the) 4294 7164 w (colors,) 4527 7164 w (use) 4907 7164 w 10 /Times-Bold f (ppm) 720 7284 w 10 /S f (_) 915 7284 w 10 /Times-Bold f (bk) 965 7284 w 10 /S f (_) 1077 7284 w 10 /Times-Bold f (color) 1127 7284 w 10 /S f (_) 1343 7284 w 10 /Times-Bold f (from) 1393 7284 w 10 /S f (_) 1603 7284 w 10 /Times-Bold f (name\(\)) 1653 7284 w 10 /Times-Roman f (and) 1977 7284 w 10 /Times-Bold f (ppm) 2146 7284 w 10 /S f (_) 2341 7284 w 10 /Times-Bold f (name) 2391 7284 w 10 /S f (_) 2624 7284 w 10 /Times-Bold f (from) 2674 7284 w 10 /S f (_) 2884 7284 w 10 /Times-Bold f (bk) 2934 7284 w 10 /S f (_) 3046 7284 w 10 /Times-Bold f (color\(\)) 3096 7284 w 10 /Times-Roman f (:) 3378 7284 w cleartomark showpage saveobj restore %%EndPage: 4 4 %%Page: 5 5 /saveobj save def mark 5 pagesetup 10 /Times-Roman f (\255 5 \255) 2797 480 w (bk) 820 900 w 10 /S f (_) 920 900 w 10 /Times-Roman f (color) 970 900 w (ppm) 820 1020 w 10 /S f (_) 998 1020 w 10 /Times-Roman f (bk) 1048 1020 w 10 /S f (_) 1148 1020 w 10 /Times-Roman f (color) 1198 1020 w 10 /S f (_) 1403 1020 w 10 /Times-Roman f (from) 1453 1020 w 10 /S f (_) 1647 1020 w 10 /Times-Roman f (name\(const char * name\);) 1697 1020 w (const char *) 820 1260 w (ppm) 820 1380 w 10 /S f (_) 998 1380 w 10 /Times-Roman f (name) 1048 1380 w 10 /S f (_) 1264 1380 w 10 /Times-Roman f (from) 1314 1380 w 10 /S f (_) 1508 1380 w 10 /Times-Roman f (bk) 1558 1380 w 10 /S f (_) 1658 1380 w 10 /Times-Roman f (color\(bk) 1708 1380 w 10 /S f (_) 2046 1380 w 10 /Times-Roman f (color bkColor\);) 2096 1380 w 10 /Times-Bold f (ppm) 720 1596 w 10 /S f (_) 915 1596 w 10 /Times-Bold f (bk) 965 1596 w 10 /S f (_) 1077 1596 w 10 /Times-Bold f (color) 1127 1596 w 10 /S f (_) 1343 1596 w 10 /Times-Bold f (from) 1393 1596 w 10 /S f (_) 1603 1596 w 10 /Times-Bold f (color\(\)) 1653 1596 w 10 /Times-Roman f (tells) 1970 1596 w (you) 2172 1596 w (to) 2357 1596 w (which) 2470 1596 w (Berlin\255Kay) 2749 1596 w (color) 3234 1596 w (a) 3475 1596 w (certain) 3555 1596 w (color) 3862 1596 w (is) 4103 1596 w (closest,) 4206 1596 w (by) 4539 1596 w (way) 4675 1596 w (of) 4877 1596 w (a) 4996 1596 w (fuzzy color matching algorithm:) 720 1716 w (bk) 820 1896 w 10 /S f (_) 920 1896 w 10 /Times-Roman f (color) 970 1896 w (ppm) 820 2016 w 10 /S f (_) 998 2016 w 10 /Times-Roman f (bk) 1048 2016 w 10 /S f (_) 1148 2016 w 10 /Times-Roman f (color) 1198 2016 w 10 /S f (_) 1403 2016 w 10 /Times-Roman f (from) 1453 2016 w 10 /S f (_) 1647 2016 w 10 /Times-Roman f (color\(pixel) 1697 2016 w (color,) 2185 2016 w (pixval maxval\);) 1420 2136 w 10 /Times-Italic f (maxval) 720 2352 w 10 /Times-Roman f (is the maxval on which) 1033 2352 w 10 /Times-Italic f (color) 1985 2352 w 10 /Times-Roman f (is based.) 2221 2352 w 10 /Times-Bold f (ppm) 720 2508 w 10 /S f (_) 915 2508 w 10 /Times-Bold f (color) 965 2508 w 10 /S f (_) 1181 2508 w 10 /Times-Bold f (from) 1231 2508 w 10 /S f (_) 1441 2508 w 10 /Times-Bold f (bk) 1491 2508 w 10 /S f (_) 1603 2508 w 10 /Times-Bold f (color\(\)) 1653 2508 w 10 /Times-Roman f (converts) 1971 2508 w (the) 2345 2508 w (opposite) 2503 2508 w (way:) 2878 2508 w (given) 3108 2508 w (a) 3366 2508 w (Berlin\255Kay) 3446 2508 w (color,) 3931 2508 w (it) 4197 2508 w (gives) 4289 2508 w (the) 4536 2508 w (color,) 4695 2508 w (in) 4962 2508 w 10 /Times-Bold f (pixel) 720 2628 w 10 /Times-Roman f (form, that best represents it.) 951 2628 w (pixel) 820 2808 w (ppm) 820 2928 w 10 /S f (_) 998 2928 w 10 /Times-Roman f (color) 1048 2928 w 10 /S f (_) 1253 2928 w 10 /Times-Roman f (from) 1303 2928 w 10 /S f (_) 1497 2928 w 10 /Times-Roman f (bk) 1547 2928 w 10 /S f (_) 1647 2928 w 10 /Times-Roman f (color\(bk) 1697 2928 w 10 /S f (_) 2035 2928 w 10 /Times-Roman f (color bkColor,) 2085 2928 w (pixval) 1420 3048 w (maxval\);) 1745 3048 w 10 /Times-Italic f (maxval) 720 3264 w 10 /Times-Roman f (is the maxval on which the returned color is based.) 1033 3264 w (All of the facilities in this section were new in Netpbm 10.34 \(June 2006\).) 720 3420 w 10 /Times-Bold f (COLOR NAMES) 720 3660 w (System Color Dictionary) 720 3936 w 10 /Times-Roman f (Netpbm) 720 4128 w (uses) 1071 4128 w (the) 1272 4128 w (system's) 1423 4128 w (X11) 1802 4128 w (color) 2003 4128 w (dictionary) 2237 4128 w (\(usually) 2671 4128 w (in) 3022 4128 w 10 /Times-Bold f (/usr/lib/X11/rgb.txt) 3129 4128 w 10 /Times-Roman f (\).) 3955 4128 w (This) 4067 4128 w (is) 4274 4128 w (the) 4370 4128 w (same) 4521 4128 w (file) 4755 4128 w (the) 4918 4128 w (X Window System typically uses to associate colors with their names.) 720 4248 w (The) 720 4404 w (color) 903 4404 w (dictionary) 1136 4404 w (that) 1569 4404 w (Netpbm) 1747 4404 w (uses) 2097 4404 w (is) 2297 4404 w (in) 2392 4404 w (the) 2498 4404 w (file) 2648 4404 w (whose) 2809 4404 w (name) 3092 4404 w (is) 3336 4404 w (the) 3431 4404 w (value) 3581 4404 w (of) 3826 4404 w (the) 3938 4404 w 10 /Times-Bold f (RGBDEF) 4089 4404 w 10 /Times-Roman f (environment) 4535 4404 w (variable.) 720 4524 w (If) 1116 4524 w 10 /Times-Bold f (RGBDEF) 1207 4524 w 10 /Times-Roman f (is not set, Netpbm defaults to the first existing file from this list:) 1649 4524 w (1) 720 4680 w 10 /Times-Bold f (/usr/lib/X11/rgb.txt) 970 4680 w 10 /Times-Roman f (2) 720 4836 w 10 /Times-Bold f (/usr/openwinlib/rgb.txt) 970 4836 w 10 /Times-Roman f (3) 720 4992 w 10 /Times-Bold f (/usr/X11R6/lib/X11/rgb.txt) 970 4992 w 10 /Times-Roman f (You) 720 5184 w (can) 923 5184 w (see) 1092 5184 w (the) 1250 5184 w (color) 1403 5184 w (names) 1639 5184 w (from) 1925 5184 w (a) 2150 5184 w (typical) 2225 5184 w (X11) 2528 5184 w (color) 2731 5184 w (dictionary,) 2967 5184 w (which) 3429 5184 w (is) 3705 5184 w (probably) 3804 5184 w (very) 4191 5184 w (close) 4400 5184 w (to) 4637 5184 w (what) 4747 5184 w (is) 4973 5184 w (on your system, along with the colors, here.) 720 5304 w (This website shows a bunch of other versions you could use.) 2518 5304 w (Netpbm) 720 5460 w (is) 1102 5460 w (packaged) 1229 5460 w (with) 1665 5460 w (a) 1904 5460 w (color) 2009 5460 w (dictionary.) 2275 5460 w (A) 2791 5460 w (standard) 2924 5460 w (Netpbm) 3323 5460 w (installation) 3706 5460 w (installs) 4212 5460 w (this) 4557 5460 w (file) 4763 5460 w (as) 4957 5460 w ("misc/rgb.txt") 720 5580 w (in) 1326 5580 w (the) 1447 5580 w (Netpbm) 1612 5580 w (directory.) 1977 5580 w (This) 2430 5580 w (color) 2651 5580 w (dictionary) 2899 5580 w (has) 3347 5580 w (colors) 3523 5580 w (from) 3810 5580 w (everywhere) 4047 5580 w (the) 4554 5580 w (Netpbm) 4718 5580 w (maintainer could find them, and is a superset of XFree 86's color dictionary.) 720 5700 w 10 /Times-Bold f (ppm) 720 5940 w 10 /S f (_) 915 5940 w 10 /Times-Bold f (parsecolor) 965 5940 w (ppm) 720 6132 w 10 /S f (_) 915 6132 w 10 /Times-Bold f (parsecolor\(\)) 965 6132 w 10 /Times-Roman f (interprets) 1518 6132 w (a) 1933 6132 w (color) 2016 6132 w (specification) 2260 6132 w (and) 2809 6132 w (returns) 2992 6132 w (a) 3308 6132 w (pixel) 3391 6132 w (of) 3630 6132 w (the) 3752 6132 w (color) 3913 6132 w (that) 4157 6132 w (it) 4346 6132 w (indicates.) 4441 6132 w (The) 4885 6132 w (color specification is ASCII text, in one of these formats:) 720 6252 w 10 /LucidaSansUnicode22 f (\031) 720 6408 w 10 /Times-Roman f (a name, as defined in the system color dictionary) 970 6408 w 10 /LucidaSansUnicode22 f (\031) 720 6564 w 10 /Times-Roman f (An) 996 6564 w (X11\255style) 1144 6564 w (hexadecimal) 1564 6564 w (specifier:) 2094 6564 w 10 /Courier f (rgb:) 2526 6564 w 10 /Times-Italic f (r) 2766 6564 w 10 /Courier f (/) 2805 6564 w 10 /Times-Italic f (g) 2865 6564 w 10 /Courier f (/) 2915 6564 w 10 /Times-Italic f (b) 2975 6564 w 10 /Times-Roman f (,) 3025 6564 w (where) 3076 6564 w 10 /Times-Italic f (r) 3346 6564 w 10 /Times-Roman f (,) 3385 6564 w 10 /Times-Italic f (g) 3437 6564 w 10 /Times-Roman f (,) 3487 6564 w (and) 3539 6564 w 10 /Times-Italic f (b) 3710 6564 w 10 /Times-Roman f (are) 3787 6564 w (each) 3935 6564 w (1\255) 4144 6564 w (to) 4254 6564 w (4\255digit) 4359 6564 w (hexadeci\255) 4653 6564 w (mal) 970 6684 w (numbers.) 1146 6684 w (For) 1566 6684 w (each,) 1731 6684 w (the) 1964 6684 w (maxval) 2112 6684 w (is) 2432 6684 w (the) 2525 6684 w (maximum) 2673 6684 w (number) 3105 6684 w (that can be represented in the number of) 3436 6684 w (hexadecimal) 970 6804 w (digits) 1514 6804 w (given.) 1778 6804 w (Example:) 2091 6804 w 10 /Courier f (rgb:01/ff/8000) 2515 6804 w 10 /Times-Roman f (specifies) 3396 6804 w (1/255) 3786 6804 w (red) 4055 6804 w (intensity,) 4223 6804 w (maximum) 4634 6804 w (green intensity, and about half blue intensity.) 970 6924 w 10 /LucidaSansUnicode22 f (\031) 720 7080 w 10 /Times-Roman f (An) 997 7080 w (X11\255style) 1146 7080 w (decimal) 1568 7080 w (specifier:) 1912 7080 w 10 /Courier f (rgbi:) 2346 7080 w 10 /Times-Italic f (r) 2646 7080 w 10 /Courier f (/) 2685 7080 w 10 /Times-Italic f (g) 2745 7080 w 10 /Courier f (/) 2795 7080 w 10 /Times-Italic f (b) 2855 7080 w 10 /Times-Roman f (,) 2905 7080 w (where) 2958 7080 w 10 /Times-Italic f (r) 3229 7080 w 10 /Times-Roman f (,) 3268 7080 w 10 /Times-Italic f (g) 3321 7080 w 10 /Times-Roman f (,) 3371 7080 w (and) 3424 7080 w 10 /Times-Italic f (b) 3596 7080 w 10 /Times-Roman f (are) 3674 7080 w (floating) 3823 7080 w (point) 4162 7080 w (numbers) 4396 7080 w (from) 4768 7080 w (0) 4990 7080 w (to 1.) 970 7200 w cleartomark showpage saveobj restore %%EndPage: 5 5 %%Page: 6 6 /saveobj save def mark 6 pagesetup 10 /Times-Roman f (\255 6 \255) 2797 480 w 10 /LucidaSansUnicode22 f (\031) 720 840 w 10 /Times-Roman f (an old\255X11\255style hexadecimal triple:) 970 840 w 10 /Courier f (#rgb) 2462 840 w 10 /Times-Roman f (,) 2702 840 w 10 /Courier f (#rrggbb) 2752 840 w 10 /Times-Roman f (,) 3172 840 w 10 /Courier f (#rrrgggbbb) 3257 840 w 10 /Times-Roman f (, or) 3857 840 w 10 /Courier f (#rrrrggggbbbb) 4015 840 w 10 /Times-Roman f (.) 4795 840 w 10 /LucidaSansUnicode22 f (\031) 720 996 w 10 /Times-Roman f (A) 970 996 w (triplet) 1069 996 w (of) 1335 996 w (decimal) 1445 996 w (floating) 1789 996 w (point) 2128 996 w (numbers) 2362 996 w (from) 2734 996 w (0.0) 2956 996 w (to) 3109 996 w (1.0,) 3215 996 w (representing) 3393 996 w (red,) 3914 996 w (green,) 4094 996 w (and) 4368 996 w (blue) 4540 996 w (intensi\255) 4740 996 w (ties) 970 1116 w (respectively,) 1141 1116 w (separated) 1680 1116 w (by) 2088 1116 w (commas.) 2220 1116 w (E.g.) 2634 1116 w 10 /Courier f (1.0,0.5,.25) 2826 1116 w 10 /Times-Roman f (.) 3486 1116 w (This) 3567 1116 w (is) 3776 1116 w (for) 3874 1116 w (backwards) 4021 1116 w (compatibility;) 4478 1116 w (it was in use before MIT came up with the similar and preferred rgbi style\).) 970 1236 w (If) 720 1428 w (the) 814 1428 w (color) 964 1428 w (specification) 1197 1428 w (does) 1735 1428 w (not) 1946 1428 w (conform) 2102 1428 w (to) 2468 1428 w (any) 2574 1428 w (of) 2746 1428 w (these) 2858 1428 w (formats,) 3092 1428 w (including) 3451 1428 w (the) 3858 1428 w (case) 4009 1428 w (that) 4209 1428 w (it) 4388 1428 w (is) 4473 1428 w (a) 4569 1428 w (name,) 4642 1428 w (but) 4912 1428 w (is not in the system color dictionary,) 720 1548 w 10 /Times-Bold f (ppm) 2203 1548 w 10 /S f (_) 2398 1548 w 10 /Times-Bold f (parsecolor\(\)) 2448 1548 w 10 /Times-Roman f (throws an error.) 2988 1548 w 10 /Times-Bold f (ppm) 720 1788 w 10 /S f (_) 915 1788 w 10 /Times-Bold f (colorname) 965 1788 w (ppm) 720 1980 w 10 /S f (_) 915 1980 w 10 /Times-Bold f (colorname\(\)) 965 1980 w 10 /Times-Roman f (returns) 1510 1980 w (a) 1817 1980 w (string) 1891 1980 w (that) 2149 1980 w (describes) 2329 1980 w (the) 2730 1980 w (color) 2882 1980 w (of) 3117 1980 w (the) 3231 1980 w (given) 3384 1980 w (pixel.) 3637 1980 w (If) 3918 1980 w (a) 4015 1980 w (system) 4090 1980 w (color) 4399 1980 w (dictionary) 4635 1980 w (is) 720 2100 w (available) 813 2100 w (and) 1199 2100 w (the) 1369 2100 w (color) 1517 2100 w (appears) 1748 2100 w (in) 2078 2100 w (it,) 2182 2100 w 10 /Times-Bold f (ppm) 2289 2100 w 10 /S f (_) 2484 2100 w 10 /Times-Bold f (colorname\(\)) 2534 2100 w 10 /Times-Roman f (returns) 3075 2100 w (the) 3378 2100 w (name) 3526 2100 w (of the color from the file.) 3768 2100 w (If the) 4827 2100 w (color) 720 2220 w (does) 952 2220 w (not) 1162 2220 w (appear) 1317 2220 w (in) 1609 2220 w (a) 1714 2220 w (system) 1785 2220 w (color) 2090 2220 w (dictionary) 2322 2220 w (and) 2754 2220 w 10 /Times-Italic f (hexok) 2925 2220 w 10 /Times-Roman f (is) 3185 2220 w (true,) 3280 2220 w 10 /Times-Bold f (ppm) 3488 2220 w 10 /S f (_) 3683 2220 w 10 /Times-Bold f (colorname\(\)) 3733 2220 w 10 /Times-Roman f (returns) 4276 2220 w (a) 4581 2220 w (hexadeci\255) 4653 2220 w (mal) 720 2340 w (color) 909 2340 w (specification) 1153 2340 w (triple) 1702 2340 w (\(#rrggbb\).) 1952 2340 w (If) 2423 2340 w (a) 2528 2340 w (system) 2611 2340 w (color) 2928 2340 w (dictionary) 3172 2340 w (is) 3616 2340 w (available) 3722 2340 w (but) 4121 2340 w (the) 4288 2340 w (color) 4448 2340 w (does) 4691 2340 w (not) 4912 2340 w (appear) 720 2460 w (in) 1022 2460 w (it) 1137 2460 w (and) 1230 2460 w 10 /Times-Italic f (hexok) 1411 2460 w 10 /Times-Roman f (is) 1680 2460 w (false,) 1784 2460 w 10 /Times-Bold f (ppm) 2034 2460 w 10 /S f (_) 2229 2460 w 10 /Times-Bold f (colorname\(\)) 2279 2460 w 10 /Times-Roman f (returns) 2831 2460 w (the) 3145 2460 w (name) 3304 2460 w (of) 3558 2460 w (the) 3679 2460 w (closest) 3839 2460 w (matching) 4149 2460 w (color) 4559 2460 w (in) 4802 2460 w (the) 4918 2460 w (color) 720 2580 w (file.) 961 2580 w (Finally,) 1180 2580 w (if) 1525 2580 w (there) 1622 2580 w (is) 1857 2580 w (no) 1960 2580 w (system) 2096 2580 w (color) 2409 2580 w (dictionary) 2649 2580 w (available) 3089 2580 w (and) 3484 2580 w 10 /Times-Italic f (hexok) 3663 2580 w 10 /Times-Roman f (is) 3930 2580 w (false,) 4032 2580 w 10 /Times-Bold f (ppm) 4280 2580 w 10 /S f (_) 4475 2580 w 10 /Times-Bold f (colorname\(\)) 4525 2580 w 10 /Times-Roman f (fails and exits the program with an error message.) 720 2700 w (The) 720 2856 w (string) 948 2856 w (returned) 1249 2856 w (is) 1654 2856 w (in) 1794 2856 w (static) 1945 2856 w (libppm) 2229 2856 w (library) 2586 2856 w (storage) 2925 2856 w (which) 3286 2856 w (is) 3603 2856 w (overwritten) 3743 2856 w (by) 4276 2856 w (every) 4449 2856 w (call) 4744 2856 w (to) 4962 2856 w 10 /Times-Bold f (ppm) 720 2976 w 10 /S f (_) 915 2976 w 10 /Times-Bold f (colorname\(\)) 965 2976 w 10 /Times-Roman f (.) 1480 2976 w 10 /Times-Bold f (ppm) 720 3216 w 10 /S f (_) 915 3216 w 10 /Times-Bold f (readcolornamefile) 965 3216 w (ppm) 720 3408 w 10 /S f (_) 915 3408 w 10 /Times-Bold f (readcolornamefile\(\)) 965 3408 w 10 /Times-Roman f (reads) 1836 3408 w (the) 2075 3408 w (entire) 2226 3408 w (contents) 2482 3408 w (of) 2844 3408 w (the) 2956 3408 w (color) 3107 3408 w (dictionary) 3341 3408 w (in) 3775 3408 w (the) 3882 3408 w (file) 4034 3408 w (named) 4197 3408 w 10 /Times-Italic f (fileName) 4493 3408 w 10 /Times-Roman f (into) 4884 3408 w (data structures you can use to access it easily.) 720 3528 w (The) 720 3684 w (function) 902 3684 w (returns) 1262 3684 w (all) 1566 3684 w (the) 1693 3684 w (color) 1843 3684 w (names) 2076 3684 w (as) 2359 3684 w (an) 2470 3684 w (array) 2592 3684 w (of) 2824 3684 w (null\255terminated) 2935 3684 w (strings.) 3579 3684 w (It) 3924 3684 w (mallocs) 4013 3684 w (the) 4352 3684 w (space) 4502 3684 w (for) 4751 3684 w (this) 4895 3684 w (array) 720 3804 w (and) 954 3804 w (returns) 1128 3804 w (its) 1435 3804 w (address) 1560 3804 w (at) 1889 3804 w 10 /Times-Italic f (colornamesP) 1991 3804 w 10 /Times-Roman f (.) 2518 3804 w 10 /Times-Bold f (\(*colornamesP\)[) 2598 3804 w 10 /Times-Italic f (i) 3296 3804 w 10 /Times-Bold f (]) 3324 3804 w 10 /Times-Roman f (is) 3387 3804 w (the) 3484 3804 w (address) 3636 3804 w (of) 3965 3804 w (the) 4077 3804 w (first) 4228 3804 w (character) 4418 3804 w (in) 4811 3804 w (the) 4918 3804 w (null\255terminated string that is the name of the) 720 3924 w 10 /Times-Italic f (i) 2524 3924 w 10 /Times-Roman f (th color in the dictionary.) 2552 3924 w (The) 720 4080 w (function) 904 4080 w (also) 1266 4080 w (returns) 1456 4080 w (a) 1762 4080 w 10 /Times-Bold f (colorhash) 1835 4080 w 10 /S f (_) 2252 4080 w 10 /Times-Bold f (table) 2302 4080 w 10 /Times-Roman f (\(see) 2542 4080 w (COLOR) 2731 4080 w (INDEXING\)) 3099 4080 w (that) 3648 4080 w (matches) 3828 4080 w (all) 4185 4080 w (these) 4315 4080 w (color) 4550 4080 w (names) 4785 4080 w (up) 720 4200 w (to) 846 4200 w (the) 950 4200 w (colors) 1098 4200 w (they) 1368 4200 w (represent.) 1566 4200 w (It) 2007 4200 w (mallocs) 2094 4200 w (the) 2431 4200 w (space) 2579 4200 w (for) 2826 4200 w (the) 2968 4200 w 10 /Times-Bold f (colorhash) 3116 4200 w 10 /S f (_) 3533 4200 w 10 /Times-Bold f (table) 3583 4200 w 10 /Times-Roman f (and returns its address at) 3820 4200 w 10 /Times-Italic f (chtP) 4832 4200 w 10 /Times-Roman f (.) 5015 4200 w (The) 720 4320 w (number) 914 4320 w (that) 1258 4320 w (the) 1447 4320 w 10 /Times-Bold f (colorhash) 1608 4320 w 10 /S f (_) 2025 4320 w 10 /Times-Bold f (table) 2075 4320 w 10 /Times-Roman f (associates) 2325 4320 w (with) 2763 4320 w (each) 2980 4320 w (color) 3201 4320 w (is) 3446 4320 w (the) 3553 4320 w (index) 3715 4320 w (into) 3977 4320 w (the) 4173 4320 w (color) 4335 4320 w (name) 4580 4320 w (array) 4836 4320 w (described above of the name of that color.) 720 4440 w (You may specify a null pointer for) 720 4596 w 10 /Times-Italic f (fileName) 2126 4596 w 10 /Times-Roman f (to indicate the default color dictionary.) 2512 4596 w 10 /Times-Italic f (mustOpen) 720 4752 w 10 /Times-Roman f (is) 1152 4752 w (a) 1246 4752 w (boolean.) 1317 4752 w (If) 1710 4752 w (it) 1804 4752 w (is) 1888 4752 w (nonzero,) 1983 4752 w (the) 2357 4752 w (function) 2507 4752 w (fails) 2868 4752 w (and) 3068 4752 w (aborts) 3240 4752 w (the) 3512 4752 w (program) 3662 4752 w (if) 4028 4752 w (it) 4117 4752 w (is) 4201 4752 w (unable) 4296 4752 w (to) 4590 4752 w (open) 4696 4752 w (the) 4918 4752 w (specified) 720 4872 w (color) 1115 4872 w (dictionary) 1355 4872 w (file.) 1795 4872 w (If) 2013 4872 w (it) 2114 4872 w (is) 2205 4872 w (zero,) 2307 4872 w (though,) 2538 4872 w (it) 2876 4872 w (simply) 2967 4872 w (treats) 3275 4872 w (an) 3526 4872 w (unopenable) 3655 4872 w (color) 4150 4872 w (dictionary) 4390 4872 w (as) 4829 4872 w (an) 4946 4872 w (empty one.) 720 4992 w (The colorhash and color name array it returns contain no colors or names.) 1214 4992 w 10 /Times-Bold f (ppm) 720 5148 w 10 /S f (_) 915 5148 w 10 /Times-Bold f (readcolornamefile\(\)) 965 5148 w 10 /Times-Roman f (was new in Netpbm 10.15 \(April 2003\).) 1832 5148 w 10 /Times-Bold f (COLOR INDEXING) 720 5388 w 10 /Times-Roman f (Sometimes) 720 5580 w (in) 1196 5580 w (processing) 1305 5580 w (images,) 1763 5580 w (you) 2102 5580 w (want) 2283 5580 w (to) 2508 5580 w (associate) 2617 5580 w (a) 3008 5580 w (value) 3083 5580 w (with) 3331 5580 w (a) 3541 5580 w (particular) 3617 5580 w (color.) 4031 5580 w (Most) 4318 5580 w (often,) 4556 5580 w (that's) 4818 5580 w (because) 720 5700 w (you're) 1068 5700 w (generating) 1361 5700 w (a) 1815 5700 w (color) 1892 5700 w (mapped) 2130 5700 w (graphics) 2478 5700 w (format.) 2848 5700 w (In) 3196 5700 w (a) 3311 5700 w (color) 3387 5700 w (mapped) 3624 5700 w (graphics) 3972 5700 w (format,) 4342 5700 w (the) 4665 5700 w (raster) 4819 5700 w (contains) 720 5820 w (small) 1080 5820 w (numbers,) 1324 5820 w (and) 1720 5820 w (the) 1891 5820 w (file) 2040 5820 w (contains) 2200 5820 w (a) 2560 5820 w (color) 2631 5820 w (map) 2863 5820 w (that) 3063 5820 w (tells) 3241 5820 w (what) 3436 5820 w (color) 3658 5820 w (each) 3891 5820 w (of) 4101 5820 w (those) 4212 5820 w (small) 4451 5820 w (numbers) 4696 5820 w (refers) 720 5940 w (to.) 980 5940 w (If) 1141 5940 w (your) 1240 5940 w (image) 1456 5940 w (has) 1733 5940 w (only) 1899 5940 w (256) 2110 5940 w (colors,) 2293 5940 w (but) 2595 5940 w (each) 2756 5940 w (color) 2971 5940 w (takes) 3209 5940 w (24) 3447 5940 w (bits) 3580 5940 w (to) 3758 5940 w (describe,) 3869 5940 w (this) 4259 5940 w (can) 4437 5940 w (make) 4608 5940 w (your) 4857 5940 w (output file much smaller than a straightforward RGB raster would.) 720 6060 w (So, continuing the above example, say you) 720 6216 w (have) 2461 6216 w (a) 2675 6216 w 10 /Times-Bold f (pixel) 2745 6216 w 10 /Times-Roman f (value) 2977 6216 w (for) 3219 6216 w (chartreuse) 3361 6216 w (and) 3796 6216 w (in) 3966 6216 w (your) 4070 6216 w (output) 4279 6216 w (file) 4561 6216 w (and) 4720 6216 w (you) 4890 6216 w (are) 720 6336 w (going) 876 6336 w (to) 1139 6336 w (represent) 1252 6336 w (chartreuse) 1652 6336 w (by) 2096 6336 w (the) 2231 6336 w (number) 2388 6336 w (12.) 2728 6336 w (You) 2913 6336 w (need) 3120 6336 w (a) 3343 6336 w (data) 3422 6336 w (structure) 3623 6336 w (that) 4006 6336 w (allows) 4190 6336 w (your) 4485 6336 w (program) 4702 6336 w (quickly) 720 6456 w (to) 1054 6456 w (find) 1166 6456 w (out) 1361 6456 w (that) 1523 6456 w (the) 1707 6456 w (number) 1863 6456 w (for) 2202 6456 w (a) 2352 6456 w (chartreuse) 2430 6456 w 10 /Times-Bold f (pixel) 2873 6456 w 10 /Times-Roman f (is) 3113 6456 w (12.) 3214 6456 w (Netpbm's) 3398 6456 w (color) 3826 6456 w (indexing) 4065 6456 w (data) 4449 6456 w (types) 4650 6456 w (and) 4896 6456 w (functions give you that.) 720 6576 w 10 /Times-Bold f (colorhash) 720 6732 w 10 /S f (_) 1137 6732 w 10 /Times-Bold f (table) 1187 6732 w 10 /Times-Roman f (is) 1425 6732 w (a) 1519 6732 w (C) 1590 6732 w (data) 1684 6732 w (type) 1877 6732 w (that) 2076 6732 w (associates) 2253 6732 w (an) 2679 6732 w (integer) 2800 6732 w (with) 3104 6732 w (each) 3309 6732 w (of) 3518 6732 w (an) 3628 6732 w (arbitrary) 3749 6732 w (number) 4119 6732 w (of) 4451 6732 w (colors.) 4562 6732 w (It) 4884 6732 w (is) 4973 6732 w (a hash table, so it uses far less space than an array indexed by the color's RGB values would.) 720 6852 w (The) 720 7008 w (problem) 901 7008 w (with) 1260 7008 w (a) 1464 7008 w 10 /Times-Bold f (colorhash) 1534 7008 w 10 /S f (_) 1951 7008 w 10 /Times-Bold f (table) 2001 7008 w 10 /Times-Roman f (is) 2238 7008 w (that) 2331 7008 w (you) 2507 7008 w (can) 2684 7008 w (only) 2849 7008 w (look) 3054 7008 w (things) 3259 7008 w (up) 3531 7008 w (in) 3658 7008 w (it.) 3763 7008 w (You) 3896 7008 w (can't) 4095 7008 w (find) 4321 7008 w (out) 4509 7008 w (what) 4664 7008 w (col\255) 4885 7008 w (ors) 720 7128 w (are) 868 7128 w (in) 1015 7128 w (it.) 1119 7128 w (So) 1251 7128 w (Netpbm) 1383 7128 w (has) 1731 7128 w (another) 1890 7128 w (data) 2215 7128 w (type) 2407 7128 w (for) 2605 7128 w (representing) 2747 7128 w (the same information, the poorly but histori\255) 3266 7128 w (cally) 720 7248 w (named) 957 7248 w 10 /Times-Bold f (colorhist) 1266 7248 w 10 /S f (_) 1638 7248 w 10 /Times-Bold f (vector) 1688 7248 w 10 /Times-Roman f (.) 1953 7248 w (A) 2046 7248 w 10 /Times-Bold f (colorhist) 2161 7248 w 10 /S f (_) 2533 7248 w 10 /Times-Bold f (vector) 2583 7248 w 10 /Times-Roman f (is) 2891 7248 w (just) 3001 7248 w (an) 3189 7248 w (array.) 3326 7248 w (Each) 3623 7248 w (entry) 3865 7248 w (represents) 4113 7248 w (a) 4560 7248 w (color) 4647 7248 w (and) 4896 7248 w cleartomark showpage saveobj restore %%EndPage: 6 6 %%Page: 7 7 /saveobj save def mark 7 pagesetup 10 /Times-Roman f (\255 7 \255) 2797 480 w (contains) 720 840 w (the) 1079 840 w (color's) 1227 840 w (value) 1530 840 w (\(as) 1772 840 w (a) 1914 840 w 10 /Times-Bold f (pixel) 1984 840 w 10 /Times-Roman f (\)) 2190 840 w (and) 2249 840 w (the) 2419 840 w (integer value associated with it.) 2567 840 w (The entries are filled in start\255) 3879 840 w (ing with subscript 0 and going consecutively up for the number of colors in the histogram.) 720 960 w (\(The) 720 1116 w (reason) 938 1116 w (the) 1228 1116 w (name) 1380 1116 w (is) 1626 1116 w (poor) 1723 1116 w (is) 1936 1116 w (because) 2033 1116 w (a) 2378 1116 w (color) 2452 1116 w (histogram) 2688 1116 w (is) 3119 1116 w (only) 3217 1116 w (one) 3426 1116 w (of) 3601 1116 w (many) 3715 1116 w (things) 3968 1116 w (that) 4244 1116 w (could) 4425 1116 w (be) 4678 1116 w (repre\255) 4803 1116 w (sented by it\).) 720 1236 w 10 /Times-Bold f (colorhash) 720 1392 w 10 /S f (_) 1137 1392 w 10 /Times-Bold f (table ppm) 1187 1392 w 10 /S f (_) 1618 1392 w 10 /Times-Bold f (alloccolorhash\(\)) 1668 1392 w 10 /Times-Roman f (This) 720 1548 w (creates) 930 1548 w (a) 1238 1548 w 10 /Times-Bold f (colorhash) 1314 1548 w 10 /S f (_) 1731 1548 w 10 /Times-Bold f (table) 1781 1548 w 10 /Times-Roman f (using) 2024 1548 w (dynamically) 2273 1548 w (allocated) 2799 1548 w (storage.) 3192 1548 w (There) 3563 1548 w (are) 3828 1548 w (no) 3982 1548 w (colors) 4115 1548 w (in) 4392 1548 w (it.) 4503 1548 w (If) 4642 1548 w (there) 4741 1548 w (is) 4973 1548 w (not enough storage, it exits the program with an error message.) 720 1668 w 10 /Times-Bold f (void ppm) 720 1824 w 10 /S f (_) 1124 1824 w 10 /Times-Bold f (freecolorhash\(\)) 1174 1824 w 10 /Times-Roman f (This destroys a) 720 1980 w 10 /Times-Bold f (ppm) 1350 1980 w 10 /S f (_) 1545 1980 w 10 /Times-Bold f (freecolorhash) 1595 1980 w 10 /Times-Roman f (and frees all the storage associated with it.) 2227 1980 w 10 /Times-Bold f (int ppm) 720 2136 w 10 /S f (_) 1057 2136 w 10 /Times-Bold f (addtocolorhash\( colorhash) 1107 2136 w 10 /S f (_) 2244 2136 w 10 /Times-Bold f (table cht, const pixel * const colorP, const int value\)) 2294 2136 w 10 /Times-Roman f (This adds the specified color to the specified) 720 2292 w 10 /Times-Bold f (colorhash) 2528 2292 w 10 /S f (_) 2945 2292 w 10 /Times-Bold f (table) 2995 2292 w 10 /Times-Roman f (and associates the specified value with it.) 745 2412 w (You must ensure that the color you are adding isn't already present in the) 720 2568 w 10 /Times-Bold f (colorhash) 3676 2568 w 10 /S f (_) 4093 2568 w 10 /Times-Bold f (table) 4143 2568 w 10 /Times-Roman f (.) 4354 2568 w (There is no way to update an entry or delete an entry from a) 720 2724 w 10 /Times-Bold f (colorhash) 3136 2724 w 10 /S f (_) 3553 2724 w 10 /Times-Bold f (table) 3603 2724 w 10 /Times-Roman f (.) 3814 2724 w 10 /Times-Bold f (int ppm) 720 2880 w 10 /S f (_) 1057 2880 w 10 /Times-Bold f (lookupcolor\( const colorhash) 1107 2880 w 10 /S f (_) 2341 2880 w 10 /Times-Bold f (table cht, const pixel * const colorP \)) 2391 2880 w 10 /Times-Roman f (This) 720 3036 w (looks) 930 3036 w (up) 1179 3036 w (the) 1311 3036 w (specified) 1465 3036 w (color) 1857 3036 w (in) 2094 3036 w (the) 2204 3036 w (specified) 2358 3036 w 10 /Times-Bold f (colorhash) 2751 3036 w 10 /S f (_) 3168 3036 w 10 /Times-Bold f (table) 3218 3036 w 10 /Times-Roman f (.) 3429 3036 w (It) 3512 3036 w (returns) 3606 3036 w (the) 3916 3036 w (integer) 4071 3036 w (value) 4381 3036 w (associated) 4630 3036 w (with that color.) 720 3156 w (If) 720 3312 w (the) 820 3312 w (specified) 976 3312 w (color) 1370 3312 w (is) 1609 3312 w (not) 1710 3312 w (in) 1872 3312 w (the) 1984 3312 w (hash) 2140 3312 w (table,) 2358 3312 w (the) 2612 3312 w (function) 2769 3312 w (returns) 3137 3312 w (\2551.) 3449 3312 w (\(So) 3617 3312 w (if) 3791 3312 w (you) 3887 3312 w (assign) 4072 3312 w (the) 4357 3312 w (value) 4514 3312 w (\2551) 4765 3312 w (to) 4883 3312 w (a) 4996 3312 w (color, the return value is ambiguous\).) 720 3432 w 10 /Times-Bold f (colorhist) 720 3588 w 10 /S f (_) 1092 3588 w 10 /Times-Bold f (vector ppm) 1142 3588 w 10 /S f (_) 1627 3588 w 10 /Times-Bold f (colorhashtocolorhist\( const colorhash) 1677 3588 w 10 /S f (_) 3271 3588 w 10 /Times-Bold f (table cht, const int ncolors \)) 3321 3588 w 10 /Times-Roman f (This) 720 3744 w (converts) 927 3744 w (a) 1294 3744 w 10 /Times-Bold f (colorhash) 1367 3744 w 10 /S f (_) 1784 3744 w 10 /Times-Bold f (table) 1834 3744 w 10 /Times-Roman f (to) 2074 3744 w (a) 2181 3744 w 10 /Times-Bold f (colorhist) 2254 3744 w 10 /S f (_) 2626 3744 w 10 /Times-Bold f (vector) 2676 3744 w 10 /Times-Roman f (.) 2941 3744 w (The) 3020 3744 w (return) 3204 3744 w (value) 3471 3744 w (is) 3716 3744 w (a) 3812 3744 w (new) 3885 3744 w 10 /Times-Bold f (colorhist) 4080 3744 w 10 /S f (_) 4452 3744 w 10 /Times-Bold f (vector) 4502 3744 w 10 /Times-Roman f (which) 4796 3744 w (you must eventually free with) 720 3864 w 10 /Times-Bold f (ppm) 1938 3864 w 10 /S f (_) 2133 3864 w 10 /Times-Bold f (freecolorhist\(\)) 2183 3864 w 10 /Times-Roman f (.) 2786 3864 w 10 /Times-Bold f (ncolors) 720 4020 w 10 /Times-Roman f (is) 1057 4020 w (the) 1150 4020 w (number) 1298 4020 w (of) 1629 4020 w (colors) 1738 4020 w (in) 2008 4020 w 10 /Times-Bold f (cht) 2112 4020 w 10 /Times-Roman f (.) 2245 4020 w (If) 2321 4020 w (it) 2413 4020 w (has) 2495 4020 w (more) 2654 4020 w (colors) 2886 4020 w (than) 3157 4020 w (that,) 3356 4020 w 10 /Times-Bold f (ppm) 3558 4020 w 10 /S f (_) 3753 4020 w 10 /Times-Bold f (colorhashtocolorhist) 3803 4020 w 10 /Times-Roman f (does) 4702 4020 w (not) 4912 4020 w (create a) 720 4140 w 10 /Times-Bold f (colorhist) 1051 4140 w 10 /S f (_) 1423 4140 w 10 /Times-Bold f (vector) 1473 4140 w 10 /Times-Roman f (and returns NULL.) 1763 4140 w 10 /Times-Bold f (colorhash) 720 4296 w 10 /S f (_) 1137 4296 w 10 /Times-Bold f (table ppm) 1187 4296 w 10 /S f (_) 1618 4296 w 10 /Times-Bold f (colorhisttocolorhash\( const colorhist) 1668 4296 w 10 /S f (_) 3217 4296 w 10 /Times-Bold f (vector chv, const int ncolors \)) 3267 4296 w 10 /Times-Roman f (This poorly named function does not convert from a) 720 4452 w 10 /Times-Bold f (colorhist) 2831 4452 w 10 /S f (_) 3203 4452 w 10 /Times-Bold f (vector) 3253 4452 w 10 /Times-Roman f (to a) 3543 4452 w 10 /Times-Bold f (colorhash) 3715 4452 w 10 /S f (_) 4132 4452 w 10 /Times-Bold f (table) 4182 4452 w 10 /Times-Roman f (.) 4393 4452 w (It) 720 4608 w (does) 810 4608 w (create) 1022 4608 w (a) 1288 4608 w 10 /Times-Bold f (colorhash) 1361 4608 w 10 /S f (_) 1778 4608 w 10 /Times-Bold f (table) 1828 4608 w 10 /Times-Roman f (based) 2068 4608 w (on) 2324 4608 w (a) 2453 4608 w 10 /Times-Bold f (colorhist) 2526 4608 w 10 /S f (_) 2898 4608 w 10 /Times-Bold f (vector) 2948 4608 w 10 /Times-Roman f (input,) 3242 4608 w (but) 3502 4608 w (the) 3659 4608 w (integer) 3810 4608 w (value) 4117 4608 w (for) 4363 4608 w (a) 4509 4608 w (given) 4583 4608 w (color) 4835 4608 w (in) 720 4728 w (the) 889 4728 w (output) 1102 4728 w (is) 1449 4728 w (not) 1607 4728 w (the) 1826 4728 w (same) 2039 4728 w (as) 2335 4728 w (the) 2508 4728 w (integer) 2720 4728 w (value) 3087 4728 w (for) 3393 4728 w (that) 3599 4728 w (same) 3839 4728 w (color) 4134 4728 w (in) 4429 4728 w (the) 4597 4728 w (input.) 4809 4728 w 10 /Times-Bold f (ppm) 720 4848 w 10 /S f (_) 915 4848 w 10 /Times-Bold f (colorhisttocolorhash\(\)) 965 4848 w 10 /Times-Roman f (ignores) 1934 4848 w (the) 2259 4848 w (integer) 2412 4848 w (values) 2720 4848 w (in) 3006 4848 w (the) 3115 4848 w (input.) 3268 4848 w (In) 3555 4848 w (the) 3670 4848 w (output,) 3824 4848 w (the) 4137 4848 w (integer) 4291 4848 w (value) 4600 4848 w (for) 4848 4848 w (a) 4996 4848 w (color is the index in the input) 720 4968 w 10 /Times-Bold f (colorhist) 1917 4968 w 10 /S f (_) 2289 4968 w 10 /Times-Bold f (vector) 2339 4968 w 10 /Times-Roman f (for that color.) 2629 4968 w (You) 720 5124 w (can) 919 5124 w (easily) 1084 5124 w (create) 1344 5124 w (a) 1608 5124 w (color) 1679 5124 w (map) 1911 5124 w (for) 2110 5124 w (an) 2253 5124 w (image) 2375 5124 w (by) 2647 5124 w (running) 2775 5124 w 10 /Times-Bold f (ppm) 3114 5124 w 10 /S f (_) 3309 5124 w 10 /Times-Bold f (computecolorhist\(\)) 3359 5124 w 10 /Times-Roman f (over) 4216 5124 w (the) 4421 5124 w (image,) 4571 5124 w (then) 4868 5124 w 10 /Times-Bold f (ppm) 720 5244 w 10 /S f (_) 915 5244 w 10 /Times-Bold f (colorhisttocolorhash\(\)) 965 5244 w 10 /Times-Roman f (over) 1932 5244 w (the) 2138 5244 w (result.) 2289 5244 w (Now) 2590 5244 w (you) 2812 5244 w (can) 2990 5244 w (use) 3156 5244 w 10 /Times-Bold f (ppm) 3317 5244 w 10 /S f (_) 3512 5244 w 10 /Times-Bold f (lookupcolor\(\)) 3562 5244 w 10 /Times-Roman f (to) 4168 5244 w (find) 4274 5244 w (a) 4463 5244 w (unique) 4535 5244 w (color) 4835 5244 w (index for any pixel in the input.) 720 5364 w (If) 720 5520 w (the) 818 5520 w (same) 972 5520 w (color) 1209 5520 w (appears) 1446 5520 w (twice) 1782 5520 w (in) 2030 5520 w (the) 2140 5520 w (input,) 2295 5520 w 10 /Times-Bold f (ppm) 2559 5520 w 10 /S f (_) 2754 5520 w 10 /Times-Bold f (colorhisttocolorhash\(\)) 2804 5520 w 10 /Times-Roman f (exit) 3800 5520 w (the) 3983 5520 w (program) 4138 5520 w (with) 4509 5520 w (an) 4720 5520 w (error) 4847 5520 w (message.) 720 5640 w 10 /Times-Bold f (ncolors) 720 5796 w 10 /Times-Roman f (is the number of colors in) 1056 5796 w 10 /Times-Bold f (chv) 2105 5796 w 10 /Times-Roman f (.) 2255 5796 w (The return value is a new) 720 5952 w 10 /Times-Bold f (colorhash) 1756 5952 w 10 /S f (_) 2173 5952 w 10 /Times-Bold f (table) 2223 5952 w 10 /Times-Roman f (which you must eventually free with) 2459 5952 w 10 /Times-Bold f (ppm) 3946 5952 w 10 /S f (_) 4141 5952 w 10 /Times-Bold f (freecolorhash\(\)) 4191 5952 w 10 /Times-Roman f (.) 4839 5952 w 10 /Times-Bold f (COLOR HISTOGRAMS) 720 6192 w 10 /Times-Roman f (The) 720 6384 w (Netpbm) 907 6384 w (libraries) 1262 6384 w (give) 1622 6384 w (you) 1827 6384 w (functions) 2010 6384 w (to) 2415 6384 w (examine) 2526 6384 w (a) 2897 6384 w (Netpbm) 2974 6384 w (image) 3329 6384 w (and) 3606 6384 w (determine) 3783 6384 w (what) 4215 6384 w (colors) 4442 6384 w (are) 4719 6384 w (in) 4873 6384 w (it) 4984 6384 w (and) 720 6504 w (how) 891 6504 w (many) 1090 6504 w (pixels) 1339 6504 w (of) 1605 6504 w (each) 1715 6504 w (color) 1924 6504 w (are) 2156 6504 w (in) 2304 6504 w (it.) 2409 6504 w (This) 2541 6504 w (information) 2745 6504 w (is) 3243 6504 w (known) 3336 6504 w (as) 3634 6504 w (a) 3743 6504 w (color) 3813 6504 w (histogram.) 4044 6504 w (Netpbm) 4520 6504 w (uses) 4868 6504 w (its) 720 6624 w 10 /Times-Bold f (colorhash) 840 6624 w 10 /S f (_) 1257 6624 w 10 /Times-Bold f (table) 1307 6624 w 10 /Times-Roman f (data type to represent a color histogram.) 1543 6624 w 10 /Times-Bold f (colorhash) 720 6780 w 10 /S f (_) 1137 6780 w 10 /Times-Bold f (table) 1187 6780 w (ppm) 1424 6780 w 10 /S f (_) 1619 6780 w 10 /Times-Bold f (computecolorhash\() 1669 6780 w (pixel) 2512 6780 w (**) 2745 6780 w (const) 2872 6780 w (pixels,) 3121 6780 w (const) 3418 6780 w (int) 3667 6780 w (cols,) 3811 6780 w (const) 4024 6780 w (int) 4273 6780 w (rows,) 4417 6780 w (const) 4674 6780 w (int) 4923 6780 w (maxcolors, int* const colorsP \)) 720 6900 w 10 /Times-Roman f (This) 720 7056 w (poorly) 927 7056 w (but) 1217 7056 w (historically) 1374 7056 w (named) 1853 7056 w (function) 2148 7056 w (generates) 2510 7056 w (a) 2915 7056 w 10 /Times-Bold f (colorhash) 2989 7056 w 10 /S f (_) 3406 7056 w 10 /Times-Bold f (table) 3456 7056 w 10 /Times-Roman f (whose) 3697 7056 w (value) 3982 7056 w (for) 4228 7056 w (each) 4374 7056 w (color) 4586 7056 w (is) 4821 7056 w (the) 4918 7056 w (number) 720 7176 w (of) 1056 7176 w (pixels) 1170 7176 w (in) 1440 7176 w (a) 1549 7176 w (specified) 1624 7176 w (image) 2015 7176 w (that) 2290 7176 w (have) 2471 7176 w (that) 2690 7176 w (color.) 2871 7176 w (\(I.e.) 3156 7176 w (a) 3346 7176 w (color) 3420 7176 w (histogram\).) 3655 7176 w (As) 4168 7176 w (a) 4309 7176 w (bonus,) 4383 7176 w (it) 4677 7176 w (returns) 4763 7176 w (the number of colors in the image.) 720 7296 w cleartomark showpage saveobj restore %%EndPage: 7 7 %%Page: 8 8 /saveobj save def mark 8 pagesetup 10 /Times-Roman f (\255 8 \255) 2797 480 w (\(It's poorly named because not all) 720 840 w 10 /Times-Bold f (colorhash) 2106 840 w 10 /S f (_) 2523 840 w 10 /Times-Bold f (table) 2573 840 w 10 /Times-Roman f (s are color histograms, but that's all it generates\).) 2784 840 w 10 /Times-Bold f (pixels) 720 996 w 10 /Times-Roman f (,) 965 996 w 10 /Times-Bold f (cols) 1015 996 w 10 /Times-Roman f (, and) 1176 996 w 10 /Times-Bold f (rows) 1395 996 w 10 /Times-Roman f (describe the input image.) 1625 996 w 10 /Times-Bold f (maxcolors) 720 1152 w 10 /Times-Roman f (is) 1187 1152 w (the) 1283 1152 w (maximum) 1434 1152 w (number) 1869 1152 w (of) 2203 1152 w (colors) 2315 1152 w (you) 2588 1152 w (want) 2768 1152 w (processed.) 2992 1152 w (If) 3465 1152 w (there) 3561 1152 w (are) 3790 1152 w (more) 3941 1152 w (colors) 4176 1152 w (that) 4450 1152 w (that) 4630 1152 w (in) 4810 1152 w (the) 4918 1152 w (input) 720 1272 w (image,) 952 1272 w 10 /Times-Bold f (ppm) 1247 1272 w 10 /S f (_) 1442 1272 w 10 /Times-Bold f (computecolorhash\(\)) 1492 1272 w 10 /Times-Roman f (returns) 2367 1272 w (NULL) 2670 1272 w (as) 2962 1272 w (its) 3071 1272 w (return) 3192 1272 w (value) 3456 1272 w (and) 3698 1272 w (stops) 3868 1272 w (processing) 4100 1272 w (as) 4553 1272 w (soon as it) 4662 1272 w (discovers) 720 1392 w (this.) 1133 1392 w (This) 1364 1392 w (makes) 1579 1392 w (it) 1871 1392 w (run) 1964 1392 w (faster) 2134 1392 w (and) 2392 1392 w (use) 2573 1392 w (less) 2743 1392 w (memory.) 2930 1392 w (One) 3350 1392 w (use) 3553 1392 w (for) 3723 1392 w 10 /Times-Bold f (maxcolors) 3876 1392 w 10 /Times-Roman f (is) 4351 1392 w (when) 4455 1392 w (you) 4708 1392 w (just) 4895 1392 w (want) 720 1512 w (to) 941 1512 w (find) 1046 1512 w (out) 1234 1512 w (whether) 1389 1512 w (or) 1737 1512 w (not) 1847 1512 w (the) 2002 1512 w (image) 2151 1512 w (has) 2422 1512 w (more) 2582 1512 w (than) 2814 1512 w (N) 3012 1512 w (colors) 3110 1512 w (and) 3380 1512 w (don't) 3550 1512 w (want) 3787 1512 w (to) 4007 1512 w (wait) 4111 1512 w (to) 4309 1512 w (generate) 4413 1512 w (a) 4776 1512 w (huge) 4846 1512 w (color table if so.) 720 1632 w (If you don't want any limit on the number of colors, specify) 1419 1632 w 10 /Times-Bold f (maxcolors) 3841 1632 w 10 /Times-Roman f (=) 4279 1632 w 10 /Times-Bold f (0) 4335 1632 w 10 /Times-Roman f (.) 4385 1632 w 10 /Times-Bold f (ppm) 720 1788 w 10 /S f (_) 915 1788 w 10 /Times-Bold f (computecolorhash\(\)) 965 1788 w 10 /Times-Roman f (returns) 1848 1788 w (the) 2159 1788 w (actual) 2315 1788 w (number) 2587 1788 w (of) 2926 1788 w (colors) 3043 1788 w (in) 3321 1788 w (the) 3433 1788 w (image) 3589 1788 w (as) 3867 1788 w 10 /Times-Bold f (*colorsP) 3984 1788 w 10 /Times-Roman f (,) 4350 1788 w (but) 4410 1788 w (only) 4573 1788 w (if) 4786 1788 w (it) 4882 1788 w (is) 4973 1788 w (less than or equal to) 720 1908 w 10 /Times-Bold f (maxcolors) 1544 1908 w 10 /Times-Roman f (.) 1982 1908 w 10 /Times-Bold f (colorhash) 720 2064 w 10 /S f (_) 1137 2064 w 10 /Times-Bold f (table) 1187 2064 w (ppm) 1428 2064 w 10 /S f (_) 1623 2064 w 10 /Times-Bold f (computecolorhash2\() 1673 2064 w (FILE) 2569 2064 w (*) 2833 2064 w (const) 2914 2064 w (ifp,) 3167 2064 w (const) 3340 2064 w (int) 3593 2064 w (cols,) 3741 2064 w (const) 3958 2064 w (int) 4211 2064 w (rows,) 4359 2064 w (const) 4620 2064 w (pix\255) 4873 2064 w (val maxval, const int format, const int maxcolors, int* const colorsP \)) 720 2184 w 10 /Times-Roman f (This is the same as) 720 2340 w 10 /Times-Bold f (ppm) 1500 2340 w 10 /S f (_) 1695 2340 w 10 /Times-Bold f (computecolorhash\(\)) 1745 2340 w 10 /Times-Roman f (except that instead of feeding it an array) 2619 2340 w (of) 4249 2340 w (pixels) 4358 2340 w (in) 4623 2340 w (storage,) 4727 2340 w (you) 720 2460 w (give) 903 2460 w (it) 1108 2460 w (an) 1197 2460 w (open) 1324 2460 w (file) 1551 2460 w (stream) 1717 2460 w (and) 2016 2460 w (it) 2193 2460 w (reads) 2282 2460 w (the) 2525 2460 w (image) 2679 2460 w (from) 2955 2460 w (the) 3181 2460 w (file.) 3335 2460 w (The) 3550 2460 w (file) 3737 2460 w (must) 3902 2460 w (be) 4129 2460 w (positioned) 4255 2460 w (after) 4704 2460 w (the) 4918 2460 w (header, at the raster.) 720 2580 w (Upon return, the file is still open, but its position is undefined.) 1575 2580 w 10 /Times-Bold f (maxval) 720 2736 w 10 /Times-Roman f (and) 1056 2736 w 10 /Times-Bold f (format) 1225 2736 w 10 /Times-Roman f (are the values for the image \(i.e. information from the file's header\).) 1543 2736 w 10 /Times-Bold f (colorhist) 720 2892 w 10 /S f (_) 1092 2892 w 10 /Times-Bold f (vector ppm) 1142 2892 w 10 /S f (_) 1627 2892 w 10 /Times-Bold f (computecolorhist\( pixel ** pixels, int cols, int rows, int maxcolors,) 1677 2892 w (int) 4505 2892 w (*) 4648 2892 w (colorsP) 4724 2892 w (\)) 720 3012 w 10 /Times-Roman f (This) 720 3168 w (is) 977 3168 w (like) 1123 3168 w 10 /Times-Bold f (ppm) 1352 3168 w 10 /S f (_) 1547 3168 w 10 /Times-Bold f (computecolorhash\(\)) 1597 3168 w 10 /Times-Roman f (except) 2525 3168 w (that) 2864 3168 w (it) 3093 3168 w (creates) 3228 3168 w (a) 3583 3168 w 10 /Times-Bold f (colorhist) 3706 3168 w 10 /S f (_) 4078 3168 w 10 /Times-Bold f (vector) 4128 3168 w 10 /Times-Roman f (instead) 4472 3168 w (of) 4834 3168 w (a) 4996 3168 w 10 /Times-Bold f (colorhash) 720 3288 w 10 /S f (_) 1137 3288 w 10 /Times-Bold f (table) 1187 3288 w 10 /Times-Roman f (.) 1398 3288 w (If) 720 3444 w (you) 815 3444 w (supply) 994 3444 w (a) 1290 3444 w (nonzero) 1363 3444 w 10 /Times-Bold f (maxcolors) 1713 3444 w 10 /Times-Roman f (argument,) 2180 3444 w (that) 2611 3444 w (is) 2790 3444 w (the) 2886 3444 w (maximum) 3037 3444 w (number) 3472 3444 w (of) 3806 3444 w (colors) 3919 3444 w (you) 4193 3444 w (expect) 4373 3444 w (to) 4663 3444 w (find) 4771 3444 w (in) 4962 3444 w (the) 720 3564 w (input) 878 3564 w (image.) 1120 3564 w (If) 1450 3564 w (there) 1552 3564 w (are) 1787 3564 w (more) 1944 3564 w (colors) 2185 3564 w (than) 2465 3564 w (you) 2673 3564 w (say) 2858 3564 w (in) 3026 3564 w (the) 3139 3564 w (image,) 3296 3564 w 10 /Times-Bold f (ppm) 3600 3564 w 10 /S f (_) 3795 3564 w 10 /Times-Bold f (computecolorhist\(\)) 3845 3564 w 10 /Times-Roman f (returns) 4684 3564 w (a) 4996 3564 w (null pointer as its return value and nothing meaningful as) 720 3684 w 10 /Times-Bold f (*colorsP) 3029 3684 w 10 /Times-Roman f (.) 3395 3684 w (If) 720 3840 w (not,) 815 3840 w (the) 997 3840 w (function) 1148 3840 w (returns) 1510 3840 w (the) 1816 3840 w (new) 1967 3840 w 10 /Times-Bold f (colorhist) 2162 3840 w 10 /S f (_) 2534 3840 w 10 /Times-Bold f (vector) 2584 3840 w 10 /Times-Roman f (as) 2903 3840 w (its) 3015 3840 w (return) 3139 3840 w (value) 3406 3840 w (and) 3651 3840 w (the) 3824 3840 w (actual) 3975 3840 w (number) 4242 3840 w (of) 4576 3840 w (colors) 4688 3840 w (in) 4962 3840 w (the) 720 3960 w (image) 868 3960 w (as) 1138 3960 w 10 /Times-Bold f (*colorsP) 1247 3960 w 10 /Times-Roman f (.) 1613 3960 w (The) 1689 3960 w (returned) 1870 3960 w (array) 2228 3960 w (has) 2458 3960 w (space) 2617 3960 w (allocated) 2864 3960 w (for) 3250 3960 w (the) 3392 3960 w (specified) 3540 3960 w (number) 3926 3960 w (of) 4257 3960 w (colors) 4366 3960 w (regardless) 4636 3960 w (of) 720 4080 w (how) 832 4080 w (many) 1033 4080 w (actually) 1284 4080 w (exist.) 1629 4080 w (The) 1897 4080 w (extra) 2081 4080 w (space) 2309 4080 w (is) 2559 4080 w (at) 2655 4080 w (the) 2756 4080 w (high) 2907 4080 w (end) 3114 4080 w (of) 3287 4080 w (the) 3399 4080 w (array) 3550 4080 w (and) 3783 4080 w (is) 3956 4080 w (available) 4052 4080 w (for) 4441 4080 w (your) 4586 4080 w (use) 4799 4080 w (in) 4962 4080 w (expanding the) 720 4200 w 10 /Times-Bold f (colorhist) 1308 4200 w 10 /S f (_) 1680 4200 w 10 /Times-Bold f (vector) 1730 4200 w 10 /Times-Roman f (.) 1995 4200 w (If) 720 4356 w (you) 822 4356 w (specify) 1008 4356 w 10 /Times-Bold f (maxcolors) 1333 4356 w 10 /Times-Roman f (=) 1771 4356 w 10 /Times-Bold f (0) 1827 4356 w 10 /Times-Roman f (,) 1877 4356 w (there) 1939 4356 w (is) 2175 4356 w (no) 2279 4356 w (limit) 2416 4356 w (on) 2643 4356 w (the) 2780 4356 w (number) 2939 4356 w (of) 3281 4356 w (colors) 3401 4356 w (returned) 3682 4356 w (and) 4051 4356 w (the) 4232 4356 w (return) 4391 4356 w (array) 4666 4356 w (has) 4907 4356 w (space for 5 extra colors at the high end for your use in expanding the) 720 4476 w 10 /Times-Bold f (colorhist) 3489 4476 w 10 /S f (_) 3861 4476 w 10 /Times-Bold f (vector) 3911 4476 w 10 /Times-Roman f (.) 4176 4476 w 10 /Times-Bold f (colorhist) 720 4632 w 10 /S f (_) 1092 4632 w 10 /Times-Bold f (vector) 1142 4632 w (ppm) 1433 4632 w 10 /S f (_) 1628 4632 w 10 /Times-Bold f (computecolorhist2\() 1678 4632 w (FILE) 2525 4632 w (*) 2785 4632 w (ifp,) 2861 4632 w (int) 3029 4632 w (cols,) 3172 4632 w (int) 3384 4632 w (rows,) 3527 4632 w (int) 3783 4632 w (maxcolors,) 3926 4632 w (pixval) 4415 4632 w (maxval,) 4704 4632 w (int format, int * colorsP \)) 720 4752 w 10 /Times-Roman f (This) 720 4908 w (is) 925 4908 w (the) 1019 4908 w (same) 1169 4908 w (as) 1402 4908 w 10 /Times-Bold f (ppm) 1513 4908 w 10 /S f (_) 1708 4908 w 10 /Times-Bold f (computecolorhist\(\)) 1758 4908 w 10 /Times-Roman f (except) 2590 4908 w (that) 2878 4908 w (instead) 3056 4908 w (of) 3367 4908 w (feeding) 3478 4908 w (it) 3805 4908 w (an) 3889 4908 w (array) 4011 4908 w (of) 4243 4908 w (pixels) 4354 4908 w (in) 4621 4908 w (storage,) 4727 4908 w (you) 720 5028 w (give) 903 5028 w (it) 1108 5028 w (an) 1197 5028 w (open) 1324 5028 w (file) 1551 5028 w (stream) 1717 5028 w (and) 2016 5028 w (it) 2193 5028 w (reads) 2282 5028 w (the) 2525 5028 w (image) 2679 5028 w (from) 2955 5028 w (the) 3181 5028 w (file.) 3335 5028 w (The) 3550 5028 w (file) 3737 5028 w (must) 3902 5028 w (be) 4129 5028 w (positioned) 4255 5028 w (after) 4704 5028 w (the) 4918 5028 w (header, at the raster.) 720 5148 w (Upon return, the file is still open, but its position is undefined.) 1575 5148 w 10 /Times-Bold f (SEE ALSO) 720 5388 w (pbm) 720 5544 w 10 /Times-Roman f (,) 915 5544 w 10 /Times-Bold f (pgm) 965 5544 w 10 /Times-Roman f (,) 1154 5544 w 10 /Times-Bold f (libpbm) 1204 5544 w (AUTHOR) 720 5784 w 10 /Times-Roman f (Copyright \(C\) 1989, 1991 by Tony Hansen and Jef Poskanzer.) 720 5940 w 10 /S1 f (________________________________________________________________________) 720 6060 w 10 /Times-Bold f (Table Of Contents) 720 6300 w 10 /LucidaSansUnicode22 f (\031) 720 6492 w 10 /Times-Roman f (NAME) 970 6492 w 10 /LucidaSansUnicode22 f (\031) 720 6648 w 10 /Times-Roman f (SYNOPSIS) 970 6648 w 10 /LucidaSansUnicode22 f (\031) 720 6804 w 10 /Times-Roman f (DESCRIPTION) 970 6804 w 10 /LucidaSansUnicode22 f (\031) 720 6960 w 10 /Times-Roman f (TYPES AND CONSTANTS) 970 6960 w 10 /LucidaSansUnicode22 f (\031) 720 7116 w 10 /Times-Roman f (MANIPULATING PIXELS) 970 7116 w 10 /LucidaSansUnicode22 f (\031) 720 7272 w 10 /Times-Roman f (INITIALIZATION) 970 7272 w cleartomark showpage saveobj restore %%EndPage: 8 8 %%Page: 9 9 /saveobj save def mark 9 pagesetup 10 /Times-Roman f (\255 9 \255) 2797 480 w 10 /LucidaSansUnicode22 f (\031) 720 840 w 10 /Times-Roman f (MEMORY MANAGEMENT) 970 840 w 10 /LucidaSansUnicode22 f (\031) 720 996 w 10 /Times-Roman f (READING FILES) 970 996 w 10 /LucidaSansUnicode22 f (\031) 720 1152 w 10 /Times-Roman f (WRITING FILES) 970 1152 w 10 /LucidaSansUnicode22 f (\031) 720 1308 w 10 /Times-Roman f (MISCELLANEOUS) 970 1308 w 10 /LucidaSansUnicode22 f (\031) 720 1464 w 10 /Times-Roman f (COLOR) 970 1464 w 10 /LucidaSansUnicode22 f (\031) 720 1620 w 10 /Times-Roman f (COLOR NAMES) 970 1620 w 10 /LucidaSansUnicode22 f (\031) 720 1776 w 10 /Times-Roman f (COLOR INDEXING) 970 1776 w 10 /LucidaSansUnicode22 f (\031) 720 1932 w 10 /Times-Roman f (COLOR HISTOGRAMS) 970 1932 w 10 /LucidaSansUnicode22 f (\031) 720 2124 w 10 /Times-Roman f (SEE ALSO) 970 2124 w 10 /LucidaSansUnicode22 f (\031) 720 2280 w 10 /Times-Roman f (AUTHOR) 970 2280 w cleartomark showpage saveobj restore %%EndPage: 9 9 %%Trailer done %%DocumentFonts: Times-Roman LucidaSansUnicode22 Times-Italic Times-Bold Courier S1 S %%Pages: 9