NAME
ppm - portable
pixmap file format
DESCRIPTION
The portable
pixmap format is a lowest
common denominator
color image file
format. The definition is as
follows:
- A "magic
number" for identifying the file
type. A
ppm
file's magic number is the two characters
"P3".
- Whitespace (blanks,
TABs, CRs, LFs).
- A width,
formatted as ASCII characters in decimal.
- Whitespace.
- A height,
again in ASCII decimal.
- Whitespace.
- The maximum
color-component value, again in ASCII decimal.
- Whitespace.
- Width * height
pixels, each three
ASCII decimal
values
between
0 and the specified maximum value, starting at the
top-left
corner of
the pixmap,
proceeding in
normal
English reading order.
The three values for each pixel
represent
red, green, and blue, respectively; a value of 0
means
that color is off, and the maximum value means that
color
is maxxed out.
- Characters
from a "#" to the next end-of-line are
ignored
(comments).
- No line should
be longer than 70 characters.
Here is an
example of a small pixmap in this format:
P3
# feep.ppm
4 4
15
0
0 0
0 0 0
0 0
0 15
0 15
0
0 0
0 15 7 0 0
0 0
0 0
0
0
0
0 0 0
0 15 7
0 0 0
15
0 15 0
0 0
0 0 0
0 0
0
Programs that
read this format should be as lenient as pos-
sible, accepting
anything that looks remotely like a pixmap.
There is also a
variant on the format, available by setting
the
RAWBITS option
at compile
time. This
variant is
SunOS 5.6
Last change: 27 September 1991
1
Headers, Environments, and Macros ppm(5)
different in the
following ways:
- The "magic
number" is "P6" instead of "P3".
- The pixel values are stored as plain bytes,
instead of
ASCII
decimal.
- Whitespace is
not allowed in the pixels area, and only
a
single
character of
whitespace (typically a newline) is
allowed
after the maxval.
- The files are
smaller and many times faster to read and
write.
Note that this
raw format can only be used for maxvals less
than or equal to
255. If you use the ppm library and
try to
write a file
with a larger maxval,
it will
automatically
fall back on the
slower but more general plain format.