This documentation is for the old version. Go to the latest Graphics Mill docs

MetadataDictionary Class

This class represents a dicitonary of image metadata, such as EXIF or IPTC.

Namespace: Aurigma.GraphicsMill.Codecs
Assembly: Aurigma.GraphicsMill (in Aurigma.GraphicsMill.dll)


Visual Basic
<DefaultMemberAttribute("Item")> _
Public MustInherit Class MetadataDictionary _
	Inherits LockableObject _
	Implements IDictionary, ICloneable
public abstract class MetadataDictionary : LockableObject, IDictionary, 


This abstract class contains partial implementation of the ExifDictionary and IptcDictionary classes. It is used to read, write, and modify metadata stored in images.

Metadata is stored as pairs of keys and values. Key is an EXIF or IPTC tag (e.g. DateTime), value is an actual value stored at this key (e.g. "2004:11:19 20:50:03"). To get a piece of data from the collection use property Item[Object] or method GetItemArray(Object) (for several items). To check whether an item with certain key is available at the dictionary, you can use Contains(Object) method. Also, you can get all keys or all values through Keys or Values property correspondingly. For easier displaying, you can convert key into human-readable text string using GetKeyDescription(Object) method. Property Count returns number of items in the dictionary.

Typically you get this class instance from Exif or Iptc property of the format reader that implements IMetadataReadSupport interface. You can also create new empty instance of ExifDictionary or IptcDictionary class and put necessary details using Add(Object, Object) method. After that you can put this dictionary into Exif or Iptc property of the format writer that implements IMetadataWriteSupport interface. This way you can save updated EXIF data into the image file.

Inheritance Hierarchy

Thread Safety

Static members of this type are safe for multi-threaded operations. Instance members of this type are safe for multi-threaded operations.

See Also