diff options
Diffstat (limited to 'upstream/debian-unstable/man5/ppm.5')
-rw-r--r-- | upstream/debian-unstable/man5/ppm.5 | 240 |
1 files changed, 240 insertions, 0 deletions
diff --git a/upstream/debian-unstable/man5/ppm.5 b/upstream/debian-unstable/man5/ppm.5 new file mode 100644 index 00000000..1f54ee0d --- /dev/null +++ b/upstream/debian-unstable/man5/ppm.5 @@ -0,0 +1,240 @@ +\ +.\" This man page was generated by the Netpbm tool 'makeman' from HTML source. +.\" Do not hand-hack it! If you have bug fixes or improvements, please find +.\" the corresponding HTML page on the Netpbm website, generate a patch +.\" against that, and send it to the Netpbm maintainer. +.TH "PPM Format Specification" 5 "09 October 2016" "netpbm documentation" + +.SH NAME + +PPM - Netpbm color image format + +.UN description +.SH DESCRIPTION +.PP +This program is part of +.BR "Netpbm" (1)\c +\&. +.PP +The PPM format is a lowest common denominator color image file +format. +.PP +It should be noted that this format is egregiously inefficient. +It is highly redundant, while containing a lot of information that the +human eye can't even discern. Furthermore, the format allows very +little information about the image besides basic color, which means +you may have to couple a file in this format with other independent +information to get any decent use out of it. However, it is very easy +to write and analyze programs to process this format, and that is the +point. +.PP +It should also be noted that files often conform to this format in +every respect except the precise semantics of the sample values. +These files are useful because of the way PPM is used as an +intermediary format. They are informally called PPM files, but to be +absolutely precise, you should indicate the variation from true PPM. +For example, "PPM using the red, green, and blue colors that the +scanner in question uses." +.PP +The name "PPM" is an acronym derived from "Portable Pixel Map." +Images in this format (or a precursor of it) were once also called +"portable pixmaps." + +.UN format +.SH THE FORMAT +.PP +The format definition is as follows. You can use the +.BR "libnetpbm" (1)\c +\& C subroutine library to read and +interpret the format conveniently and accurately. +.PP +A PPM file consists of a sequence of one or more PPM images. There are +no data, delimiters, or padding before, after, or between images. +.PP +Each PPM image consists of the following: + + +.IP \(bu +A "magic number" for identifying the file type. +A ppm image's magic number is the two characters "P6". +.IP \(bu + +Whitespace (blanks, TABs, CRs, LFs). +.IP \(bu + +A width, formatted as ASCII characters in decimal. +.IP \(bu + +Whitespace. +.IP \(bu + +A height, again in ASCII decimal. +.IP \(bu + +Whitespace. +.IP \(bu + +The maximum color value (Maxval), again in ASCII decimal. Must be less +than 65536 and more than zero. + +.IP \(bu +A single whitespace character (usually a newline). + +.IP \(bu +A raster of Height rows, in order from top to bottom. Each row +consists of Width pixels, in order from left to right. Each pixel is +a triplet of red, green, and blue samples, in that order. Each sample +is represented in pure binary by either 1 or 2 bytes. If the Maxval +is less than 256, it is 1 byte. Otherwise, it is 2 bytes. The most +significant byte is first. +.sp +A row of an image is horizontal. A column is vertical. The pixels +in the image are square and contiguous. +.sp +In the raster, the sample values are "nonlinear." They are +proportional to the intensity of the ITU-R Recommendation BT.709 red, +green, and blue in the pixel, adjusted by the BT.709 gamma transfer +function. (That transfer function specifies a gamma number of 2.2 and +has a linear section for small intensities). A value of Maxval for +all three samples represents CIE D65 white and the most intense color +in the color universe of which the image is part (the color universe +is all the colors in all images to which this image might be +compared). +.sp +BT.709's range of channel values (16-240) is irrelevant to PPM. +.sp +ITU-R Recommendation BT.709 is a renaming of the former CCIR +Recommendation 709. When CCIR was absorbed into its parent +organization, the ITU, ca. 2000, the standard was renamed. This +document once referred to the standard as CIE Rec. 709, but it isn't +clear now that CIE ever sponsored such a standard. +.sp +Note that another popular color space is the newer sRGB. A common +variation from PPM is to substitute this color space for the one specified. +You can use \fBpnmgamma\fP to convert between this variation and true PPM. +.sp +Note that a common variation from the PPM format is to have the sample +values be "linear," i.e. as specified above except without +the gamma adjustment. \fBpnmgamma\fP takes such a PPM variant as +input and produces a true PPM as output. + + +.PP +Strings starting with "#" may be comments, the same as +with +.BR "PBM" (1)\c +\&. +.PP +Note that you can use \fBpamdepth\fP to convert between a the +format with 1 byte per sample and the one with 2 bytes per sample. +.PP +All characters referred to herein are encoded in ASCII. +"newline" refers to the character known in ASCII as Line +Feed or LF. A "white space" character is space, CR, LF, +TAB, VT, or FF (I.e. what the ANSI standard C isspace() function +calls white space). + +.UN plainppm +.SS Plain PPM +.PP +There is actually another version of the PPM format that is fairly +rare: "plain" PPM format. The format above, which generally +considered the normal one, is known as the "raw" PPM format. +See +.BR "pbm" (1)\c +\& for some commentary on how plain +and raw formats relate to one another and how to use them. +.PP +The difference in the plain format is: + + +.IP \(bu + +There is exactly one image in a file. +.IP \(bu + +The magic number is P3 instead of P6. +.IP \(bu + +Each sample in the raster is represented as an ASCII decimal number +(of arbitrary size). +.IP \(bu + +Each sample in the raster has white space before and after it. There must +be at least one character of white space between any two samples, but there +is no maximum. There is no particular separation of one pixel from another -- +just the required separation between the blue sample of one pixel from the +red sample of the next pixel. +.IP \(bu + +No line should be longer than 70 characters. + +.PP +Here is an example of a small image in this format. +.nf +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 + +.fi +.PP +There is a newline character at the end of each of these lines. +.PP +Programs that read this format should be as lenient as possible, +accepting anything that looks remotely like a PPM image. + + +.UN internetmediatype +.SH INTERNET MEDIA TYPE +.PP +No Internet Media Type (aka MIME type, content type) for PPM has been +registered with IANA, but the value \f(CWimage/x-portable-pixmap\fP is +conventional. +.PP +Note that the PNM Internet Media Type \f(CWimage/x-portable-anymap\fP +also applies. + + +.UN filename +.SH FILE NAME +.PP +There are no requirements on the name of a PPM file, but the convention is +to use the suffix ".ppm". "pnm" is also conventional, for +cases where distinguishing between the particular subformats of PNM is not +convenient. + + +.UN compatibility +.SH COMPATIBILITY +.PP +Before April 2000, a raw format PPM file could not have a maxval greater +than 255. Hence, it could not have more than one byte per sample. Old +programs may depend on this. +.PP +Before July 2000, there could be at most one image in a PPM file. As +a result, most tools to process PPM files ignore (and don't read) any +data after the first image. + +.UN seealso +.SH SEE ALSO +.BR "pnm" (1)\c +\&, +.BR "pgm" (1)\c +\&, +.BR "pbm" (1)\c +\&, +.BR "pam" (1)\c +\&, +.BR "programs that process PPM" (1)\c +\& +.SH DOCUMENT SOURCE +This manual page was generated by the Netpbm tool 'makeman' from HTML +source. The master documentation is at +.IP +.B http://netpbm.sourceforge.net/doc/ppm.html +.PP
\ No newline at end of file |