PNG (.png)

Background

    Registered MIME type: image/png
    PNG raster image format.
    Commonly used for graphics and photographic images on the web.
    PNG is an acronym for Portable Network Graphics.
    Binary format.
    Stores both static and animated images.
    Stores color bitmaps at a resolution of 8 or 16 bits per channel.
    Grayscale images are represented at a depth of 1, 2, 4, 8, or 16 bits per pixel.
    Supports alpha channels for 8-bit and 16-bit RGB and grayscale images.
    Has support for color-reduction palettes using 2, 4, 16 or 256 8-bit RGB colors.
    Developed in 1995 as an open and patent-free alternative to the GIF format.
    Published as international standard ISO/IEC 15948:2003 and ISO/IEC 15948:2004.

Import and Export

  • Import["file.png"] imports a PNG file, returning a single Image object or a list of images.
  • Import["file.png",elem] imports the specified element from a PNG file.
  • The import format can be specified with Import["file","PNG"] or Import["file",{"PNG",elem,}].
  • Export["file.png",expr] exports an image, graphics, or any other expression as an image to a PNG file.
  • When exporting Wolfram Language graphics or arbitrary expressions to PNG, the resulting image has the same raster size as its displayed form.
  • Image objects are by default exported at their raster size.
  • Because PNG is a raster image format, all fonts are rasterized on export.
  • See the reference pages for full general information on Import and Export.
  • ImportString and ExportString support the PNG format.

Notebook Interface

  • In the notebook front end, Insert Picture and the Open menu allow the import of a PNG file into a cell.
  • Save Selection As exports the selected part of a notebook as a PNG file.

Elements

  • General Import elements:
  • "Elements" list of elements and options available in this file
    "Rules"full list of rules for each element and option
    "Options"list of rules for options, properties, and settings
  • Data representation elements:
  • "Animation"animated PNG represented as an animation object
    "Data"array of RGB color values
    "Graphics"first frame of a PNG file, given as a Graphics object
    "GraphicsList"frames of an animated PNG as a list of Graphics objects
    "Image"first frame of a PNG file, given as an Image object
    "ImageList"frames of an animated PNG as a list of Image objects
    "RawData"array of color map indices
    {"Thumbnail",size}thumbnail of a given size (default size = Small)
    {"ThumbnailList",frames,size}a list of thumbnails (default frames=All, size=Small)
  • Import by default uses the "Image" element for a static PNG and "ImageList" for an animated PNG.
  • Import of an animated PNG with element "Image" gives the first frame of the animation.
  • Export by default uses the "Image" element for PNG files.
  • Advanced Import elements:
  • "AnimationRepetitions"how many times the animation is played before stopping
    "BitDepth"bits used to represent each color channel in the file
    "BlendOperation"whether to perform alpha blending to create the next frame
    "CameraTopOrientation"orientation of the camera when the picture was taken
    "Channels"the number of color channels used in the file
    "ColorMap"color reduction palette, given as a list of color values
    "ColorProfileData"embedded color profile, given as a ColorProfileData object
    "ColorSpace"color encoding used in the file
    "Comments"user comments stored in the file
    "DisplayDurations"display durations of animation frames, given in seconds
    "DisposalOperation"disposal operation before creating the next frame
    "FlashUsed"
  • whether the flash was fired
  • "GeoPosition"latitude and longitude represented as a GeoPosition object
    "GPSDateTime"
  • image creation date and time registered by GPS
  • "ImageCount"number of frames in an animated PNG
    "ImageSize"overall image size
    "RedEyeCorrection"whether a red-eye correction was performed
    "Summary"summary of the file
    "SummarySlideView"slide-view summary of all frames
  • PNG supports a color palette of at most 256 colors, always storing colors at a resolution of 8 bits per color channel.
  • "DisposalOperation" specifies how to dispose the current frame before creating the next frame. Possible values are:
  • "None"no disposal
    "Background"replace with a fully transparent black background
    "Previous"replace with the previous frame
  • "BlendOperation" specifies whether to alpha blend the next frame to the current frame, after disposal.
  • Metadata elements:
  • "Exif"formatted Exif (Exchange image file format)
    "IPTC"formatted IPTC (International Press Telecommunications Council)
    "XMP"formatted XMP (Extensible metadata platform)
  • Raw metadata, as stored in the file, can be imported using "RawExif", "RawXMP" and "RawIPTC" elements which are returned in an association.
  • All Exif and IPTC tags can be imported individually. Common tags include:
  • "ApertureValue"lens aperture
    "Artist"photographer or image creator
    "DateTime"image creation date and time
    "ExposureTime"exposure time, given in seconds
    "FlashInfo"
  • flash information: flash fired, red-eye correction, etc.
  • "FNumber"F number
    "FocalLength"actual focal length of the lens, given in millimeters
    "GPSAltitude"altitude of the GPS position
    "GPSLatitude"latitude of the GPS position
    "GPSLongitude"longitude of the GPS position
    "Make"manufacturer of the recording equipment
    "Model"model name or model number of the equipment
    "Software"name and version of the software or firmware of the camera or image input device used to generate the image

Options

  • Import and Export options:
  • ImageSizeAutomaticoverall image size
    IncludeMetaInformationAllmetadata types to import and export
    "ImageTopOrientation"Automaticorientation of the image as stored in the file
  • Import option:
  • "TakeRows"{1,-1}rows to import
  • Export options:
  • "ColorSpace"Automaticcolor encoding to be used in the file
    "Comments"Nonetextual information
    "CompressionLevel"Automaticcompression level, given as a number between 0 and 1
  • Supported "ColorSpace" settings are: "Grayscale" and "RGB". Using "ColorSpace"->Automatic, Export attempts to create a PNG file with the same color space.

Examples

open allclose all

Basic Examples  (4)

Import a PNG file as an image:

In[1]:=
Click for copyable input
Out[1]=

Summary of an image:

In[1]:=
Click for copyable input
Out[1]=

Import an animated PNG as an animation:

In[1]:=
Click for copyable input
Out[1]=

Export an RGB image to PNG:

In[1]:=
Click for copyable input
Out[1]=

Scope  (3)

Import Elements  (39)

Import Options  (6)

Export Options  (4)

See Also

"GIF"  "JPEG"  "PBM"  "PGM"  "PNM"  "PPM"  "PXR"  "SCT"  "TIFF"  "ICC"

Tutorials

Introduced in 2003
(5.0)
| Updated in 2017
(11.2)