Knowledge (XXG)

Netpbm

Source ๐Ÿ“

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:
International Press Telecommunications Council ยง Photo metadata
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:)

Index

Netpbm format
Developer(s)
Jef Poskanzer
Stable release
Edit this on Wikidata
Repository
svn.code.sf.net/p/netpbm/code/
Edit this at Wikidata
C
Perl
Unix Shell
Operating system
Cross-platform
License
below
netpbm.sourceforge.net
Edit this at Wikidata
open-source
Unix
operating system
Microsoft Windows
macOS
Filename extension
Internet media type
Uniform Type Identifier (UTI)
Jef Poskanzer
Image file format
Portable Arbitrary Map (PAM)
Open format
image file formats

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

โ†‘