<!--
{
  "documentType" : "article",
  "framework" : "ImageIO",
  "identifier" : "/documentation/ImageIO/png-image-properties",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "PNG Image Properties"
}
-->

# PNG Image Properties

Metadata keys for the Portable Network Graphics (PNG) format.

## Topics

### Dictionary

[`kCGImagePropertyPNGDictionary`](/documentation/ImageIO/kCGImagePropertyPNGDictionary)

A dictionary of key-value pairs for an image that uses Portable Network Graphics (PNG) format.

### Properties

[`kCGImagePropertyPNGSource`](/documentation/ImageIO/kCGImagePropertyPNGSource)

### Image Properties

[`kCGImagePropertyAPNGCanvasPixelHeight`](/documentation/ImageIO/kCGImagePropertyAPNGCanvasPixelHeight)

The height of the main image, in pixels.

[`kCGImagePropertyAPNGCanvasPixelWidth`](/documentation/ImageIO/kCGImagePropertyAPNGCanvasPixelWidth)

The width of the main image, in pixels.

[`kCGImagePropertyPNGXPixelsPerMeter`](/documentation/ImageIO/kCGImagePropertyPNGXPixelsPerMeter)

The number of x pixels per meter.

[`kCGImagePropertyPNGYPixelsPerMeter`](/documentation/ImageIO/kCGImagePropertyPNGYPixelsPerMeter)

The number of y pixels per meter.

[`kCGImagePropertyPNGGamma`](/documentation/ImageIO/kCGImagePropertyPNGGamma)

The gamma value.

[`kCGImagePropertyPNGInterlaceType`](/documentation/ImageIO/kCGImagePropertyPNGInterlaceType)

The interlace type.

[`kCGImagePropertyPNGsRGBIntent`](/documentation/ImageIO/kCGImagePropertyPNGsRGBIntent)

The sRGB intent.

[`kCGImagePropertyPNGChromaticities`](/documentation/ImageIO/kCGImagePropertyPNGChromaticities)

The chromaticities.

### Sequence Timing

[`kCGImagePropertyAPNGFrameInfoArray`](/documentation/ImageIO/kCGImagePropertyAPNGFrameInfoArray)

An array of dictionaries that contain timing information for the image sequence.

[`kCGImagePropertyAPNGDelayTime`](/documentation/ImageIO/kCGImagePropertyAPNGDelayTime)

The number of seconds to wait before displaying the next image in an animated sequence.

[`kCGImagePropertyAPNGUnclampedDelayTime`](/documentation/ImageIO/kCGImagePropertyAPNGUnclampedDelayTime)

The number of seconds to wait before displaying the next image in an animated sequence.

[`kCGImagePropertyAPNGLoopCount`](/documentation/ImageIO/kCGImagePropertyAPNGLoopCount)

The number of times that an animated PNG should play through its frames before stopping.

### Descriptive Information

[`kCGImagePropertyPNGTitle`](/documentation/ImageIO/kCGImagePropertyPNGTitle)

A string that holds the image’s title.

[`kCGImagePropertyPNGDescription`](/documentation/ImageIO/kCGImagePropertyPNGDescription)

A string that describes the image.

[`kCGImagePropertyPNGComment`](/documentation/ImageIO/kCGImagePropertyPNGComment)

A string that contains image comments.

[`kCGImagePropertyPNGDisclaimer`](/documentation/ImageIO/kCGImagePropertyPNGDisclaimer)

A disclaimer string.

[`kCGImagePropertyPNGWarning`](/documentation/ImageIO/kCGImagePropertyPNGWarning)

A warning string.

[`kCGImagePropertyPNGAuthor`](/documentation/ImageIO/kCGImagePropertyPNGAuthor)

A string that identifies the author of the image.

[`kCGImagePropertyPNGCopyright`](/documentation/ImageIO/kCGImagePropertyPNGCopyright)

A string that identifies the copyright of the image.

[`kCGImagePropertyPNGCreationTime`](/documentation/ImageIO/kCGImagePropertyPNGCreationTime)

A string that identifies the date and time the image was created.

[`kCGImagePropertyPNGModificationTime`](/documentation/ImageIO/kCGImagePropertyPNGModificationTime)

A string that identifies the last date and time the image was modified.

[`kCGImagePropertyPNGSoftware`](/documentation/ImageIO/kCGImagePropertyPNGSoftware)

A string that identifies the software used to create the image.

### Pre-Compression Filters

[`kCGImagePropertyPNGCompressionFilter`](/documentation/ImageIO/kCGImagePropertyPNGCompressionFilter)

The PNG filter to apply prior to compression.

[`IMAGEIO_PNG_NO_FILTERS`](/documentation/ImageIO/IMAGEIO_PNG_NO_FILTERS)

No PNG filters.

[`IMAGEIO_PNG_FILTER_NONE`](/documentation/ImageIO/IMAGEIO_PNG_FILTER_NONE)

A filter in which each byte is unchanged.

[`IMAGEIO_PNG_FILTER_SUB`](/documentation/ImageIO/IMAGEIO_PNG_FILTER_SUB)

A filter in which each byte is replaced with the difference between it and the corresponding byte to its left.

[`IMAGEIO_PNG_FILTER_UP`](/documentation/ImageIO/IMAGEIO_PNG_FILTER_UP)

A filter in which each byte is replaced with the difference between it and the byte above it.

[`IMAGEIO_PNG_FILTER_AVG`](/documentation/ImageIO/IMAGEIO_PNG_FILTER_AVG)

A filter in which each byte is replaced with the difference between it and the average of the bytes above it and to its left.

[`IMAGEIO_PNG_FILTER_PAETH`](/documentation/ImageIO/IMAGEIO_PNG_FILTER_PAETH)

A filter in which each byte is replaced with the difference between it and the Paeth predictor of the bytes to its left, above, and upper left.

[`IMAGEIO_PNG_ALL_FILTERS`](/documentation/ImageIO/IMAGEIO_PNG_ALL_FILTERS)

All PNG filters.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)