Skip to content

Feature request: Netpbm formats #359

@nnsee

Description

@nnsee

The FOSS Netpbm project has a few image formats, .pbm, .pgm, .ppm, and .pnm. The formats are supported on most Linux distros alongside macOS and Windows. More reading. Netpbm formats are commonly used where encoding/decoding speed is crucial but image size is not important.

This is a feature request to support these formats, or at least the most widely used .ppm. The format itself is incredibly simple and thus should be simple to implement. For example, take the following dump:

P3           # "P3" means this is a RGB color image in ASCII
3 2          # "3 2" is the width and height of the image in pixels
255          # "255" is the maximum value for each color
# The part above is the header
# The part below is the image data: RGB triplets
255   0   0  # red
  0 255   0  # green
  0   0 255  # blue
255 255   0  # yellow
255 255 255  # white
  0   0   0  # black

The header (file magic, resolution, and maximum value) are ASCII, the actual image data can be bytes (0x00 .. 0xFF) depending on the file magic (type P3 represents ASCII, P6 represents raw bytes). This dump is a textual representation of the following six-pixel image (magnified for demo purposes):
image

The official web page for the PPM specification can be found here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions