1785:
199:
132:
80:
617:
1210:
2411:
2423:
637:
660:) image has a file size of 166 bytes. When converted to a 192ร128 PPM image, the file size is 73,848 bytes. Filesize reduction factor 100 or so when converting to png is typical if the image is a line drawing; if the image is a photo, it is best converted to jpeg, which yields a greater filesize reduction.
624:
P2 # Shows the word "FEEP" 24 7 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 3 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 15 15 15 0 0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 15 0 0 3 3 3 0 0 0 7 7 7 0 0 0 11 11 11 0 0
612:
The PGM and PPM formats (both ASCII and binary versions) have an additional parameter for the maximum value (numbers of grey between black and white) after the X and Y dimensions and before the actual pixel data. Black is 0 and max value is white. (Not shown are the newline character(s) at the end of
1053:
For the black-and-white version of PAM (depth 1, tuple type BLACKANDWHITE), corresponding to PBM, PAM uses one byte per pixel, instead of PBM's use of one bit per pixel (packing eight pixels in one byte). Also, the value 1 in such a PAM image stands for white ("light on"), as opposed to black in PBM
644:
P3 # "P3" means this is a RGB color image in ASCII # "3 2" is the width and height of the image in pixels # "255" is the maximum value for each color # This, up through the "255" line below are the header. # Everything after that is the image data: RGB triplets. # In order: red, green, blue, yellow,
371:
in the 1980s as a format that allowed monochrome bitmaps to be transmitted within an email message as plain ASCII text, allowing it to survive any changes in text formatting. Poskanzer developed the first library of tools to handle the PBM format, Pbmplus, released in 1988. It mainly contained tools
868:
The last release of
Pbmplus was on December 10, 1991. Poskanzer never released any further updates, and in 1993, Netpbm was developed to replace it. At first, it was nothing more than a renamed release of Pbmplus, but updates continued to occur until 1995 when the package again became abandoned. In
736:
The third ASCII text line holds a nonzero decimal number that indicates little-endian floats for the pixel data when negative and big-endian floats when positive. The absolute value of the number indicates the range. So the third line containing -1.0 indicates little-endian format in range zero to
706:
The original definition of the PGM and the PPM binary formats (the P5 and P6 formats) did not allow bit depths greater than 8 bits. While the ASCII format can accommodate greater bit depths, it increases file size and thus slows read and write operations. Accordingly, many programmers extended the
648:
The P6 binary format of the same image represents each color component of each pixel with one byte (thus three bytes per pixel) in the order red, green, then blue. The file is smaller, but the color information is more difficult to read by humans. The header remains in ASCII and the arguments are
652:
In the binary format, last headerline must be like "255\n", with data immediately following it; any comment added after 255 will be taken as the start of image data, and the image will be skewed to the right (at least when opened by the image-manipulation program GIMP (December 2022)).
539:
Usually, 8-bit PPM format stores colors in a nonlinear format, conventionally CIE Rec. 709 for red, green, and blue, adjusted by the CIE Rec. 709 gamma transfer function. However it is very common to store color using sRGB color space, or sometimes using linear
519:
In the binary formats, PBM uses 1 bit per pixel, PGM uses 8 or 16 bits per pixel, and PPM uses 24 bits per pixel: 8 for red, 8 for green, 8 for blue. Some readers and writers may support 48 bits per pixel (16 each for R,G,B), but this is still rare.
1174:
For example, an image with a tuple type of GRAYSCALE is equivalent to PGM (portable graymap). GRAYSCALE_ALPHA with transparency is not directly possible in PGM. The specification permits MAXVAL 1 for GRAYSCALE, but it would have the same effect as
1253:
developer Steve McIntyre from 2001 suggests mostly free software licenses, one non-commercial license (non-free) and a dozen without any license offered (thus also non-free). As mentioned in the analysis, it obviously doesn't cover changes since.
788:
The programs are designed to be minimal building blocks that can be used in various combinations to do other things. The Netpbm package can, for example, use two successive conversion programs to turn a color picture in the GIF format into a
535:
representation. The file data doesn't state which color space it is using, and must be chosen by the user or other software. 16-bit PGM almost always is stored as linear, as gamma correction is usually advantageous only in 8-bit formats.
732:
The next ASCII text line contains the width and height, separated by the space character hex 20 or sometimes with hex 0A (resulting in four lines). After each line a white space character hex 0A is written and not the
Windows/DOS CR/LF
372:
to convert between PBM and other graphics formats. By the end of 1988, Poskanzer had developed the PGM and PPM formats along with their associated tools and added them to
Pbmplus. The final release of Pbmplus was December 10, 1991.
625:
0 15 15 15 15 0 0 3 0 0 0 0 0 7 0 0 0 0 0 11 0 0 0 0 0 15 0 0 0 0 0 3 0 0 0 0 0 7 7 7 7 0 0 11 11 11 11 0 0 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
569:
It is not required that pixels are nicely lined up, the format ignores whitespaces and linefeeds in the data section, although it's recommended that no line is longer than 76 characters. The following displays the same image:
1038:
The header for the PAM file format begins with P7, and (unlike in the other formats) ends in an explicit close: "ENDHDR" followed by a whitespace. Line ends in a PAM header are significant; for PNM, line ends are whitespace.
689:
White space including line ends and comment lines is syntactically equivalent to a single space within the PNM headers. For the plain formats P1...P3 this also affects the pixmap lines; in fact lines should be limited to 70
603:
The P4 binary format of the same image represents each pixel with a single bit, packing 8 pixels per byte, with the first pixel as the most significant bit. Extra bits are added at the end of each row to fill a whole byte.
663:
The PPM format is generally an intermediate format used for image work before converting to a more efficient format, for example the PNG format, without any loss of information in the intermediate step.
741:
After the header the file proceeds with floating point numbers for each pixel, specified in left-to-right, bottom-to-top order. Some programs suggest PF4 as an additional extension for the RGBA format.
1237:
The format is not even limited to graphics, its definition allows it to be used for arbitrary three-dimensional matrices of unsigned integers. Some programs of the Netpbm package, for example
516:
The ASCII ("plain") formats allow for human readability and easy transfer to other platforms; the binary ("raw") formats are more efficient in file size but may have native byte-order issues.
829:. (Tools which say that they output PNM output either PBM, PGM, or PPM. Tools importing PNM will read any of the three formats.) As a more complex example, Netpbm tools can convert 48ร48
375:
In 1993, the Netpbm library was developed to replace the unmaintained
Pbmplus. It was simply a repackaging of Pbmplus with additions and fixes submitted by people all over the world.
364:
format (PAM). The "magic number" (Px) at the beginning of a file determines the type, not the file extension, although it is best practice to use the correct extension if possible.
594:
555:
P1 # This is an example bitmap of the letter "J" 6 10 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
566:
introduces a comment. The next two numbers give the width and the height. Then follows the matrix with the pixel values (in the monochrome case here, only zeros and ones).
1220:
711:
of the file. The various implementations did not agree on which byte order to use, and some connected the 16-bit endianness to the pixel packing order. In Netpbm, the
1218:
1010:
attribute specifies what kind of image the PAM file represents, thus enabling it to stand for the older Netpbm formats, as well as to be extended to new uses, e.g.,
1822:
987:, introduced with netpbm version 9.7 (August 2000). PAM generalises all features of PBM, PGM, and PPM, and provides for extensions. PAM defines two new attributes;
1219:
1217:
582:
2380:
813:
The Netpbm programs are frequently used as intermediates to convert between obscure formats. For instance, there may be no tool to convert an X11 window dump (
1202:
order, swapping the 1st and 3rd byte in each pixel. BMP rows are typically arranged bottom-up, for PAM and PNM rows are given top-down (i.e. for this example
2168:
600:
A value of 0 signifies a white pixel, and a 1 signifies a black pixel. This differs from the other formats, where higher values signify brighter pixels.
2458:
853:
in the mid-1980s. At the time, there was no standard, reliable way to send binary files in email, and attempting to send anything other than 7-bit
769:
The Netpbm package contains over 350 programs, most of which have "pbm", "pgm", "ppm", "pam", or "pnm" in their names. For example, one might use
1190:
image with 4ร2=8 blue, green, red, and white pixels; half transparent (0x7F) in the first lower row, opaque (0xFF) in the second upper row; hex.
656:
The PPM format is not compressed, and thus requires more space and bandwidth than a compressed format would. For example, the above 192ร128 PNG (
2453:
2357:
686:
P3 # The same image with width 3 and height 2, # using 0 or 1 per color (red, green, blue) 3 2 1 1 0 0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 0
2426:
1815:
1687:
1447:
1422:
1400:
1378:
861:. PBM was designed to allow images to be sent via email without being corrupted. Poskanzer released the forerunner of Netpbm, called
2473:
2279:
1479:
891:(PNG) format, the "net" in the name is not actually in reference to the image itself being optimized for transfer over a network.)
1216:
865:
in 1988. By the end of 1988, Poskanzer had developed the PGM (greyscale) and PPM (color) formats and released them with
Pbmplus.
1897:
1214:
633:
This is an example of a color RGB image stored in PPM format. (Not shown are the newline character(s) at the end of each line.)
593:
2478:
2448:
2049:
1234:
PAM's tuple-type mechanism allows for many extensions. In theory, PAM can be extended to represent color models such as CMYK.
1215:
1213:
2463:
2414:
1808:
1586:
2385:
1957:
1249:
Netpbm consists of hundreds of different tools, each offered with a public copyright license of its own. An analysis by
103:
2468:
581:
71:
649:
still separated by a whitespace. The binary image information comes after the header (which ends with a whitespace).
552:
A simple example of the PBM format is as follows. (Not shown are the newline character(s) at the end of each line.):
2317:
2244:
1937:
573:
P1 # This is an example bitmap of the letter "J" 6 10 000010000010000010000010000010000010100010011100000000000000
384:
2234:
2084:
888:
657:
2284:
2269:
2211:
2054:
1977:
1912:
1877:
145:
1759:
707:
format to allow higher bit depths. Using higher bit depths encounters the problem of having to decide on the
2327:
2089:
1967:
1887:
1464:
725:
The PFM (Portable
Floatmap) is the unofficial four byte IEEE 754 single precision floating point extension.
496:
268:
1003:
attribute defines the number of channels in the image, such as 1 for greyscale images and 3 for RGB images.
352:
designed to be easily exchanged between platforms. They are also sometimes referred to collectively as the
2289:
2136:
2059:
2156:
2146:
1997:
1862:
1278:
2422:
1443:
1418:
1396:
1374:
984:
211:
1209:
1263:
262:
image/x-portable-bitmap, image/x-portable-graymap, image/x-portable-pixmap, image/x-portable-anymap
79:
645:
white, and black. 3 2 255 255 0 0 0 255 0 0 0 255 255 255 0 255 255 255 0 0 0
2109:
1962:
1952:
1932:
1907:
905:
244:
1600:
729:
The first line is either the ASCII text "PF", for a color file, or "Pf", for a grey-scale file.
2309:
2254:
2183:
2163:
2124:
1972:
1917:
1902:
1847:
1831:
1704:
1568:
1475:
1471:
1168:
944:
391:/"plain" or binary/"raw"). The magic number is a capital P followed by a single-digit number.
349:
291:
223:
2294:
2216:
2203:
1614:
960:
872:
In 2000, PAM was added to the file formats of the Netpbm library allowing an alpha channel.
616:
532:
309:
219:
172:
160:
1328:
2226:
2099:
1872:
1839:
1183:
1179:
858:
800:
790:
493:
131:
1784:
1167:
All of the basic tuple types (BLACKANDWHITE, GRAYSCALE, and RGB) have a variant with an
387:(in ASCII) that identifies the type of file it is (PBM, PGM, and PPM) and its encoding (
198:
2299:
2141:
1268:
1171:. The tuple type is created by appending "_ALPHA" as a suffix to the base tuple type.
165:
1795:
2442:
2395:
2264:
2104:
2007:
1501:
981:
850:
368:
281:
41:
1731:
1533:
1515:
1343:
1046:-based) version of PAM. PAM files are always binary, and attempts to use the switch
2114:
869:
1999, the Netpbm package was picked up by its present maintainer, Bryan
Henderson.
153:
1241:, function as crude matrix arithmetic processors and use the PAM format this way.
214:
package of graphics programs and a programming library. It is used mainly in the
2249:
2129:
1582:
1273:
754:
717:
standard implementation of the PNM formats, the most significant byte is first.
563:
541:
524:
2347:
2119:
2064:
1790:
1691:
1670:
1554:
1436:
1411:
1389:
1367:
1307:
919:
708:
256:
36:
17:
2239:
2012:
796:
giftopnm somepic.gif > somepic.ppm ppmtobmp somepic.ppm > somepic.bmp
781:
to create an image of text, or reduce the number of colors in an image with
746:
544:. There is no metadata in the file to indicate which format is being used.
1050:
with Netpbm programs that produce PAM output results in an error message.
2367:
2188:
2178:
2037:
1942:
1283:
876:
830:
713:
460:
0โ255 (gray scale), 0โ65535 (gray scale), variable, black-to-white range
112:
1800:
887:
game got their names similarly. (Unlike with the later, more widespread
875:
The name Netpbm came from the program developers collaborating over the
2151:
2032:
2027:
2022:
2017:
1922:
1204:
0000FFFF 00FF00FF FF0000FF FFFFFFFF 0000FF7F 00FF007F FF00007F FFFFFF7F
1192:
FF00007F 00FF007F 0000FF7F FFFFFF7F FF0000FF 00FF00FF 0000FFFF FFFFFFFF
884:
636:
1208:
1892:
1736:
1708:
1250:
1023:
1019:
880:
838:
322:
Several graphics formats are used and defined by the Netpbm project:
2381:
2259:
2332:
2044:
1992:
1882:
1791:
pfm: the PFM graphic image file format as understood by the Netpbm
1628:
1043:
934:
854:
615:
388:
227:
1778:
1650:
1226:
P7 WIDTH 4 HEIGHT 2 DEPTH 4 MAXVAL 255 TUPLTYPE RGB_ALPHA ENDHDR
189:
2375:
2342:
2322:
2274:
2173:
2002:
1987:
1982:
1927:
1867:
1857:
1852:
1683:
1439:
1414:
1392:
1370:
1187:
818:
750:
528:
215:
149:
1804:
1569:"PFM (Portable Float Map) - Just Solve the File Format Problem"
218:
world, where one can find it included in all major open-source
2390:
2352:
2337:
2193:
2094:
2079:
1947:
814:
527:, but depending on the application, it can often use either
1760:"2001 analysis of Netpbm copyrights done by Steve McIntyre"
513:
file format that is covered as well by the netpbm library.
803:, to save execution time and to avoid leaving a temporary
693:
P3 3 2 1 1 0 0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 0
1466:
Encyclopedia of
Graphics File Formats, Second Edition
2366:
2308:
2225:
2202:
1838:
1462:Murray, James D.; van Ryper, William (April 1996).
958:
950:
940:
930:
918:
904:
307:
297:
287:
277:
267:
255:
243:
184:
171:
159:
141:
102:
70:
48:
35:
1463:
849:The PBM (black and white) format was invented by
810:giftopnm somepic.gif | ppmtobmp > somepic.bmp
1302:
1300:
1212:
1198:order. For PAM, this bitmap has to be given in
1816:
1206:). The PAM header for this example could be:
8:
899:
238:
30:
523:Conventionally PGM stores values in linear
302:Portable Arbitrary Map (PAM)
1823:
1809:
1801:
1783:
1030:is optional; however, FFmpeg requires it.
197:
130:
78:
29:
1549:
1547:
2069:
1796:Examples of ppm files in various formats
1703:Gougelet, Pierre-Emmanuel (2015-02-19).
1056:
777:to overlay one image on top of another,
635:
510:
499:), some support for 0-65535 per channel
393:
361:
301:
1296:
360:), not to be confused with the related
1457:
1455:
1156:8 bytes per pixel for MAXVAL > 255
1142:4 bytes per pixel for MAXVAL > 255
1114:6 bytes per pixel for MAXVAL > 255
1100:2 bytes per pixel for MAXVAL > 255
980:) is an extension of the older binary
898:
237:
2376:Exchangeable image file format (Exif)
879:, which was notable at the time; the
821:file, but one can do this by running
588:Here it is again magnified 20 times:
44:, Bryan Henderson, Akira F Urushibata
7:
1432:
1430:
683:lue channels can be also encoded as:
1042:There is no plain (human-readable,
2386:Extensible Metadata Platform (XMP)
1034:Differences from the older formats
269:Uniform Type Identifier (UTI)
27:Toolkit for manipulation of images
25:
1615:"File formats in Adobe Photoshop"
1011:
761:reference implementation netpbm.
745:PFM is supported by the programs
667:The image shown above using only
383:Each file starts with a two-byte
222:distributions, but also works on
2459:Free software programmed in Perl
2421:
2410:
2409:
1589:from the original on 2019-12-31.
817:format) directly to a Macintosh
799:This is more commonly done as a
592:
580:
562:identifies the file format. The
1502:"Layout of the PAM file format"
367:The PBM format was invented by
230:, and other operating systems.
1601:"Synthetic HDR Fire Sequences"
737:one. (No comments may follow.)
178:
1:
2454:Free software programmed in C
925:image/x-portable-arbitrarymap
671:or the maximal value for the
576:Here is the resulting image:
1152:
1138:
1124:
1110:
1096:
1082:
1286:(comparison of PBM and XPM)
857:in email often resulted in
773:to shrink an image by 10%,
54:; 36 years ago
2495:
1671:"PAM format specification"
1583:"PFM Format Documentation"
1086:special case of GRAYSCALE
2474:Image processing software
2404:
1651:"Online X-Face Converter"
1538:netpbm doc at SourceForge
1520:netpbm doc at SourceForge
1342:Henderson, Bryan (2013).
889:Portable Network Graphics
757:. It is supported by the
658:Portable Network Graphics
405:
402:
399:
396:
333:portable graymap format (
210:(formerly Pbmplus) is an
98:
66:
1692:PAM format specification
1555:"PFM Format Description"
920:Internet media type
437:0โ1 (white & black)
340:portable bitmap format (
326:portable pixmap format (
257:Internet media type
1686:type not registered at
1516:"Pnmtotiff User Manual"
2479:Unix programming tools
2449:Free graphics software
1223:
974:Portable Arbitrary Map
954:Portable aNy Map (PNM)
900:Portable Arbitrary Map
641:
621:
362:portable arbitrary map
354:portable anymap format
250:.pbm, .pgm, .ppm, .pnm
85:; 8 months ago
2464:Graphics file formats
2075:PBM / PGM / PPM / PNM
1832:Graphics file formats
1739:General Documentation
1279:List of Unix commands
1222:
883:operating system and
639:
619:
1534:"pamendian man page"
1119:BLACKANDWHITE_ALPHA
1018:PAM is supported by
2391:GIF ยง Metadata
1264:GD Graphics Library
1059:
1026:. As specified the
901:
895:PAM graphics format
620:Example (magnified)
240:
32:
2469:Graphics libraries
1629:"Netpbm home page"
1540:. 10 October 2012.
1224:
1128:2 bytes per pixel
1057:
951:Extended from
906:Filename extension
642:
622:
350:image file formats
245:Filename extension
83:/ 26 December 2023
2436:
2435:
1186:article shows an
1160:
1159:
971:
970:
945:Image file format
931:Developed by
640:Image (magnified)
503:
502:
442:Portable GrayMap
320:
319:
292:Image file format
278:Developed by
224:Microsoft Windows
205:
204:
16:(Redirected from
2486:
2425:
2413:
2412:
1825:
1818:
1811:
1802:
1787:
1782:
1781:
1779:Official website
1764:
1763:
1756:
1750:
1749:
1747:
1746:
1728:
1722:
1721:
1719:PAM format added
1716:
1715:
1700:
1694:
1681:
1675:
1674:
1667:
1661:
1660:
1658:
1657:
1646:
1640:
1639:
1637:
1635:
1625:
1619:
1618:
1611:
1605:
1604:
1597:
1591:
1590:
1579:
1573:
1572:
1565:
1559:
1558:
1551:
1542:
1541:
1530:
1524:
1523:
1522:. 27 March 2005.
1512:
1506:
1505:
1498:
1492:
1491:
1489:
1488:
1469:
1459:
1450:
1434:
1425:
1409:
1403:
1387:
1381:
1365:
1359:
1358:
1356:
1354:
1344:"Getting Netpbm"
1339:
1333:
1332:
1329:"CHANGE HISTORY"
1325:
1319:
1318:
1316:
1314:
1308:"Netpbm history"
1304:
1205:
1193:
1133:GRAYSCALE_ALPHA
1060:
1058:PAM tuple types
1049:
1029:
985:graphics formats
964:
913:
902:
828:
824:
784:
780:
776:
772:
596:
584:
531:or a simplified
508:
492:(0โ255 for each
491:
490:
487:
480:
475:
470:
465:Portable PixMap
457:
452:
447:
434:
429:
424:
419:Portable BitMap
394:
313:
298:Extended to
241:
220:operating system
201:
196:
193:
191:
161:Operating system
134:
129:
126:
124:
122:
120:
118:
116:
114:
93:
91:
90:26 December 2023
86:
82:
62:
60:
55:
33:
21:
2494:
2493:
2489:
2488:
2487:
2485:
2484:
2483:
2439:
2438:
2437:
2432:
2400:
2362:
2304:
2221:
2198:
1834:
1829:
1777:
1776:
1773:
1768:
1767:
1758:
1757:
1753:
1744:
1742:
1732:"Image Formats"
1730:
1729:
1725:
1713:
1711:
1702:
1701:
1697:
1682:
1678:
1669:
1668:
1664:
1655:
1653:
1649:Dairiki, Jeff.
1648:
1647:
1643:
1633:
1631:
1627:
1626:
1622:
1613:
1612:
1608:
1599:
1598:
1594:
1581:
1580:
1576:
1567:
1566:
1562:
1553:
1552:
1545:
1532:
1531:
1527:
1514:
1513:
1509:
1500:
1499:
1495:
1486:
1484:
1482:
1461:
1460:
1453:
1435:
1428:
1410:
1406:
1388:
1384:
1366:
1362:
1352:
1350:
1341:
1340:
1336:
1327:
1326:
1322:
1312:
1310:
1306:
1305:
1298:
1293:
1260:
1247:
1232:
1227:
1221:
1203:
1191:
1169:opacity channel
1165:
1047:
1036:
1027:
959:
935:Bryan Henderson
926:
914:
911:
897:
859:data corruption
847:
837:and eventually
826:
822:
811:
797:
782:
778:
774:
770:
767:
723:
704:
699:
694:
687:
646:
631:
626:
610:
574:
556:
550:
506:
488:
485:
483:
478:
473:
468:
455:
450:
445:
432:
427:
422:
381:
308:
263:
251:
239:Portable pixmap
236:
188:
137:
111:
94:
89:
87:
84:
58:
56:
53:
49:Initial release
28:
23:
22:
15:
12:
11:
5:
2492:
2490:
2482:
2481:
2476:
2471:
2466:
2461:
2456:
2451:
2441:
2440:
2434:
2433:
2431:
2430:
2418:
2405:
2402:
2401:
2399:
2398:
2393:
2388:
2383:
2378:
2372:
2370:
2364:
2363:
2361:
2360:
2355:
2350:
2345:
2340:
2335:
2330:
2325:
2320:
2314:
2312:
2306:
2305:
2303:
2302:
2297:
2292:
2287:
2282:
2277:
2272:
2267:
2262:
2257:
2252:
2247:
2242:
2237:
2231:
2229:
2223:
2222:
2220:
2219:
2214:
2208:
2206:
2200:
2199:
2197:
2196:
2191:
2186:
2181:
2176:
2171:
2166:
2161:
2160:
2159:
2154:
2144:
2139:
2134:
2133:
2132:
2122:
2117:
2112:
2107:
2102:
2097:
2092:
2087:
2082:
2077:
2072:
2067:
2062:
2057:
2052:
2047:
2042:
2041:
2040:
2030:
2025:
2020:
2015:
2010:
2005:
2000:
1995:
1990:
1985:
1980:
1975:
1970:
1965:
1960:
1955:
1950:
1945:
1940:
1935:
1930:
1925:
1920:
1915:
1910:
1905:
1900:
1895:
1890:
1885:
1880:
1875:
1870:
1865:
1860:
1855:
1850:
1844:
1842:
1836:
1835:
1830:
1828:
1827:
1820:
1813:
1805:
1799:
1798:
1793:
1788:
1772:
1771:External links
1769:
1766:
1765:
1751:
1723:
1695:
1676:
1662:
1641:
1620:
1606:
1592:
1574:
1560:
1543:
1525:
1507:
1493:
1480:
1451:
1426:
1404:
1382:
1360:
1334:
1320:
1295:
1294:
1292:
1289:
1288:
1287:
1281:
1276:
1271:
1269:GraphicsMagick
1266:
1259:
1256:
1246:
1243:
1231:
1228:
1225:
1175:BLACKANDWHITE.
1164:
1161:
1158:
1157:
1154:
1151:
1148:
1144:
1143:
1140:
1137:
1134:
1130:
1129:
1126:
1123:
1120:
1116:
1115:
1112:
1109:
1106:
1102:
1101:
1098:
1095:
1092:
1088:
1087:
1084:
1081:
1078:
1077:BLACKANDWHITE
1074:
1073:
1070:
1067:
1064:
1035:
1032:
1016:
1015:
1004:
969:
968:
965:
956:
955:
952:
948:
947:
942:
941:Type of format
938:
937:
932:
928:
927:
924:
922:
916:
915:
910:
908:
896:
893:
846:
843:
809:
795:
766:
763:
739:
738:
734:
730:
722:
719:
703:
700:
698:
695:
692:
685:
643:
630:
627:
623:
609:
606:
598:
597:
586:
585:
572:
554:
549:
546:
509:refers to the
501:
500:
481:
476:
471:
466:
462:
461:
458:
453:
448:
443:
439:
438:
435:
430:
425:
420:
416:
415:
412:
411:ASCII (plain)
408:
407:
404:
401:
398:
380:
377:
346:
345:
338:
331:
318:
317:
314:
305:
304:
299:
295:
294:
289:
288:Type of format
285:
284:
279:
275:
274:
271:
265:
264:
261:
259:
253:
252:
249:
247:
235:
232:
203:
202:
186:
182:
181:
175:
169:
168:
166:Cross-platform
163:
157:
156:
143:
139:
138:
136:
135:
108:
106:
100:
99:
96:
95:
77:11.02.07
76:
74:
72:Stable release
68:
67:
64:
63:
50:
46:
45:
39:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
2491:
2480:
2477:
2475:
2472:
2470:
2467:
2465:
2462:
2460:
2457:
2455:
2452:
2450:
2447:
2446:
2444:
2429:
2428:
2424:
2419:
2417:
2416:
2407:
2406:
2403:
2397:
2396:Steganography
2394:
2392:
2389:
2387:
2384:
2382:
2379:
2377:
2374:
2373:
2371:
2369:
2365:
2359:
2356:
2354:
2351:
2349:
2346:
2344:
2341:
2339:
2336:
2334:
2331:
2329:
2326:
2324:
2321:
2319:
2316:
2315:
2313:
2311:
2307:
2301:
2298:
2296:
2293:
2291:
2288:
2286:
2283:
2281:
2278:
2276:
2273:
2271:
2268:
2266:
2263:
2261:
2258:
2256:
2253:
2251:
2248:
2246:
2243:
2241:
2238:
2236:
2233:
2232:
2230:
2228:
2224:
2218:
2215:
2213:
2210:
2209:
2207:
2205:
2201:
2195:
2192:
2190:
2187:
2185:
2182:
2180:
2177:
2175:
2172:
2170:
2167:
2165:
2162:
2158:
2155:
2153:
2150:
2149:
2148:
2145:
2143:
2140:
2138:
2135:
2131:
2128:
2127:
2126:
2123:
2121:
2118:
2116:
2113:
2111:
2108:
2106:
2103:
2101:
2098:
2096:
2093:
2091:
2088:
2086:
2083:
2081:
2078:
2076:
2073:
2071:
2068:
2066:
2063:
2061:
2058:
2056:
2053:
2051:
2048:
2046:
2043:
2039:
2036:
2035:
2034:
2031:
2029:
2026:
2024:
2021:
2019:
2016:
2014:
2011:
2009:
2006:
2004:
2001:
1999:
1996:
1994:
1991:
1989:
1986:
1984:
1981:
1979:
1976:
1974:
1971:
1969:
1966:
1964:
1961:
1959:
1956:
1954:
1951:
1949:
1946:
1944:
1941:
1939:
1936:
1934:
1931:
1929:
1926:
1924:
1921:
1919:
1916:
1914:
1911:
1909:
1906:
1904:
1901:
1899:
1896:
1894:
1891:
1889:
1886:
1884:
1881:
1879:
1876:
1874:
1871:
1869:
1866:
1864:
1861:
1859:
1856:
1854:
1851:
1849:
1846:
1845:
1843:
1841:
1837:
1833:
1826:
1821:
1819:
1814:
1812:
1807:
1806:
1803:
1797:
1794:
1792:
1789:
1786:
1780:
1775:
1774:
1770:
1761:
1755:
1752:
1740:
1738:
1733:
1727:
1724:
1720:
1710:
1706:
1705:"XnView 2.30"
1699:
1696:
1693:
1689:
1685:
1680:
1677:
1672:
1666:
1663:
1652:
1645:
1642:
1630:
1624:
1621:
1616:
1610:
1607:
1602:
1596:
1593:
1588:
1584:
1578:
1575:
1570:
1564:
1561:
1556:
1550:
1548:
1544:
1539:
1535:
1529:
1526:
1521:
1517:
1511:
1508:
1503:
1497:
1494:
1483:
1481:1-56592-161-5
1477:
1473:
1468:
1467:
1458:
1456:
1452:
1449:
1445:
1441:
1438:
1433:
1431:
1427:
1424:
1420:
1416:
1413:
1408:
1405:
1402:
1398:
1394:
1391:
1386:
1383:
1380:
1376:
1372:
1369:
1364:
1361:
1349:
1345:
1338:
1335:
1330:
1324:
1321:
1309:
1303:
1301:
1297:
1290:
1285:
1282:
1280:
1277:
1275:
1272:
1270:
1267:
1265:
1262:
1261:
1257:
1255:
1252:
1244:
1242:
1240:
1235:
1229:
1211:
1207:
1201:
1197:
1189:
1185:
1181:
1176:
1172:
1170:
1162:
1155:
1149:
1146:
1145:
1141:
1135:
1132:
1131:
1127:
1121:
1118:
1117:
1113:
1107:
1104:
1103:
1099:
1093:
1090:
1089:
1085:
1079:
1076:
1075:
1071:
1068:
1065:
1062:
1061:
1055:
1051:
1045:
1040:
1033:
1031:
1025:
1021:
1013:
1009:
1005:
1002:
998:
997:
996:
994:
990:
986:
983:
979:
975:
966:
962:
957:
953:
949:
946:
943:
939:
936:
933:
929:
923:
921:
917:
909:
907:
903:
894:
892:
890:
886:
882:
878:
873:
870:
866:
864:
860:
856:
852:
851:Jef Poskanzer
844:
842:
840:
836:
832:
820:
816:
808:
807:file around:
806:
802:
794:
792:
786:
764:
762:
760:
756:
752:
748:
743:
735:
731:
728:
727:
726:
720:
718:
716:
715:
710:
701:
696:
691:
684:
682:
678:
674:
670:
665:
661:
659:
654:
650:
638:
634:
628:
618:
614:
607:
605:
601:
595:
591:
590:
589:
583:
579:
578:
577:
571:
567:
565:
561:
553:
547:
545:
543:
537:
534:
530:
526:
521:
517:
514:
512:
498:
495:
482:
477:
472:
467:
464:
463:
459:
454:
449:
444:
441:
440:
436:
431:
426:
421:
418:
417:
414:Binary (raw)
413:
410:
409:
400:Magic number
395:
392:
390:
386:
378:
376:
373:
370:
369:Jef Poskanzer
365:
363:
359:
355:
351:
343:
339:
336:
332:
329:
325:
324:
323:
315:
311:
306:
303:
300:
296:
293:
290:
286:
283:
282:Jef Poskanzer
280:
276:
272:
270:
266:
260:
258:
254:
248:
246:
242:
233:
231:
229:
225:
221:
217:
213:
209:
200:
195:
187:
183:
180:
177:Various, see
176:
174:
170:
167:
164:
162:
158:
155:
151:
147:
144:
140:
133:
128:
110:
109:
107:
105:
101:
97:
81:
75:
73:
69:
65:
51:
47:
43:
42:Jef Poskanzer
40:
38:
34:
19:
18:Netpbm format
2420:
2408:
2074:
1754:
1743:. Retrieved
1735:
1726:
1718:
1712:. Retrieved
1698:
1679:
1665:
1654:. Retrieved
1644:
1632:. Retrieved
1623:
1609:
1595:
1577:
1563:
1537:
1528:
1519:
1510:
1496:
1485:. Retrieved
1465:
1407:
1385:
1363:
1351:. Retrieved
1347:
1337:
1323:
1311:. Retrieved
1248:
1238:
1236:
1233:
1199:
1195:
1177:
1173:
1166:
1163:Transparency
1054:("ink on").
1052:
1041:
1037:
1017:
1012:transparency
1007:
1000:
992:
988:
977:
973:
972:
874:
871:
867:
862:
848:
834:
812:
804:
798:
787:
768:
758:
744:
740:
733:combination.
724:
712:
705:
688:
680:
676:
672:
668:
666:
662:
655:
651:
647:
632:
613:each line.)
611:
602:
599:
587:
575:
568:
559:
557:
551:
538:
522:
518:
515:
504:
385:magic number
382:
374:
366:
357:
353:
347:
341:
334:
327:
321:
234:File formats
207:
206:
192:.sourceforge
37:Developer(s)
2130:Logluv TIFF
1348:Sourceforge
1274:ImageMagick
961:Open format
805:somepic.ppm
755:ImageMagick
690:characters:
629:PPM example
608:PGM example
564:number sign
558:The string
548:PBM example
542:color space
525:color space
505:A value of
379:Description
310:Open format
212:open-source
2443:Categories
2427:Comparison
1745:2014-02-23
1714:2015-02-20
1656:2014-03-02
1487:2014-02-27
1444:registered
1419:registered
1397:registered
1375:registered
1353:2 February
1291:References
1239:pamsummcol
1230:Extensions
1150:1...65535
1147:RGB_ALPHA
1136:2...65535
1108:1...65535
1094:2...65535
1091:GRAYSCALE
1008:tuple type
709:endianness
697:Extensions
403:Extension
273:public.pbm
154:Unix Shell
142:Written in
104:Repository
2164:UFO / UFP
2100:PSD / PSB
2013:JPEG 2000
1973:ICO / CUR
1442:type not
1417:type not
1395:type not
1373:type not
1313:March 17,
1245:Licensing
1063:TUPLTYPE
827:ppmtopict
747:Photoshop
2415:Category
2368:Metadata
2310:Compound
2038:JPEG-HDR
1587:Archived
1472:O'Reilly
1284:X PixMap
1258:See also
1072:comment
1028:TUPLTYPE
877:Internet
823:xwdtopnm
801:pipeline
783:pnmquant
771:pamscale
765:Programs
759:de facto
714:de facto
2157:TIFF/IT
2152:TIFF/EP
2033:JPEG XT
2028:JPEG XS
2023:JPEG XR
2018:JPEG XL
2008:JPEG-LS
1182:in the
1180:example
1066:MAXVAL
982:P4...P6
885:NetHack
863:Pbmplus
845:History
825:, then
779:pbmtext
775:pamcomp
497:channel
406:Colors
185:Website
173:License
123:/netpbm
88: (
57: (
2265:Gerber
2227:Vector
2090:PICtor
1840:Raster
1741:. 2014
1737:FFmpeg
1709:XnView
1634:May 3,
1478:
1251:Debian
1069:DEPTH
1048:-plain
1024:FFmpeg
1020:XnView
995:type:
881:NetBSD
839:X-Face
793:file:
753:, and
721:32-bit
702:16-bit
208:Netpbm
190:netpbm
31:Netpbm
2333:MODCA
1993:JBIG2
1883:BSAVE
1044:ASCII
1001:depth
993:tuple
989:depth
855:ASCII
679:reen-
533:gamma
397:Type
389:ASCII
228:macOS
179:below
125:/code
115:.code
2358:XAML
2343:PICT
2323:DjVu
2280:PGML
2275:IGES
2270:HVIF
2260:EMF+
2212:CIFF
2174:WebP
2169:WBMP
2147:TIFF
2125:RGBE
2115:QTVR
2060:NRRD
2055:MIFF
2003:JPEG
1988:JBIG
1983:ILBM
1968:ICNS
1963:ICER
1958:HEVC
1953:HDRi
1938:FLIF
1933:FLIC
1928:FITS
1868:AVIF
1858:APNG
1853:ANIM
1688:IANA
1684:MIME
1636:2023
1476:ISBN
1448:IANA
1440:MIME
1437:.pnm
1423:IANA
1415:MIME
1412:.ppm
1401:IANA
1393:MIME
1390:.pgm
1379:IANA
1371:MIME
1368:.pbm
1355:2021
1315:2010
1200:RGBA
1196:BGRA
1188:RGBA
1105:RGB
1022:and
1006:The
999:The
991:and
912:.pam
835:Ikon
819:PICT
791:.bmp
751:GIMP
529:sRGB
479:.ppm
456:.pgm
433:.pbm
348:are
216:Unix
194:.net
150:Perl
119:.net
59:1988
52:1988
2353:SWF
2338:PDF
2328:EPS
2318:CDF
2300:Xar
2295:WMF
2290:VML
2285:SVG
2255:EMF
2250:DXF
2245:CGM
2240:CDR
2217:DNG
2204:Raw
2194:XWD
2189:XPM
2184:XCF
2179:XBM
2142:TGA
2137:SGI
2120:RAS
2110:QOI
2105:PSP
2095:PNG
2085:PGF
2080:PCX
2070:PAM
2065:ORA
2050:MNG
2045:KRA
1998:JNG
1978:ICS
1948:GIF
1943:FPX
1923:EXR
1918:ECW
1913:DPX
1908:DDS
1903:CPT
1898:CPC
1893:CIN
1888:CAL
1878:BPG
1873:BMP
1863:ART
1848:ANI
1446:at
1421:at
1399:at
1377:at
1194:in
1184:BMP
1178:An
978:PAM
967:yes
833:to
831:XBM
815:XWD
675:ed-
511:PAM
494:RGB
489:216
486:777
358:PNM
342:PBM
335:PGM
328:PPM
316:yes
117:.sf
113:svn
2445::
2348:PS
2235:AI
1734:.
1717:.
1707:.
1690::
1585:.
1546:^
1536:.
1518:.
1474:.
1470:.
1454:^
1429:^
1346:.
1299:^
1153:4
1139:2
1125:2
1122:1
1111:3
1097:1
1083:1
1080:1
841:.
785:.
749:,
560:P1
507:P7
484:16
474:P6
469:P3
451:P5
446:P2
428:P4
423:P1
226:,
152:,
148:,
121:/p
1824:e
1817:t
1810:v
1762:.
1748:.
1673:.
1659:.
1638:.
1617:.
1603:.
1571:.
1557:.
1504:.
1490:.
1357:.
1331:.
1317:.
1014:.
976:(
963:?
681:b
677:g
673:r
669:0
356:(
344:)
337:)
330:)
312:?
146:C
127:/
92:)
61:)
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.