Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

Several image file formats enable you to store metadata along with an image. Metadata is information about an image; for example, title, width, camera model, and artist.

The Imaging API provides a uniform way of storing and retrieving metadata from image files in the following formats:

  • Tagged Image File Format (TIFF)

  • JPEG

  • Portable Network Graphics (PNG)

  • Exchangeable Image File (EXIF)

When working with the Imaging API, a piece of metadata is called a property item, and an individual property item is identified by a numerical constant called a property tag.

You can store and retrieve metadata by calling the IImageDecoder::SetPropertyItemand IImageDecoder::GetPropertyItemmethods, and you do not need to be concerned with the details of how a particular file format stores that metadata.

The following topics list and describe the property items supported by the Imaging API. The descriptions are brief and general so they apply to a variety of file formats.

For a detailed description of how a property item is used in a particular file format, see the specification for that file format. For links to several file format specifications, see Image File Format Specifications.

The following list shows the values used to identify image properties in a PropertyItemobject.

The Exchangeable Image File (EXIF) format is a Japan Electronic Industry Development Association (JEIDA) standard, revised June 1998 as version 2.1. Portions of the EXIF specification are used with permission of JEIDA.

PropertyTagArtist

Null-terminated character string that specifies the name of the person who created the image.

Tag0x013B TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagBitsPerSample

Number of bits per color component. See also PropertyTagSamplesPerPixel.

Tag0x0102 TypePropertyTagTypeShort CountNumber of samples (components) per pixel

PropertyTagCellHeight

Height of the dithering or halftoning matrix.

Tag0x0109 TypePropertyTagTypeShort Count1

PropertyTagCellWidth

Width of the dithering or halftoning matrix.

Tag0x0108 TypePropertyTagTypeShort Count1

PropertyTagChrominanceTable

Chrominance table.

The luminance table and the chrominance table are used to control JPEG quality.

A valid luminance or chrominance table has 64 entries of type PropertyTagTypeShort.

If an image has a luminance table or a chrominance table, it must have both tables.

Tag0x5091 TypePropertyTagTypeShort Count64

PropertyTagColorMap

Color palette (lookup table) for a palette-indexed image.

Tag0x0140 TypePropertyTagTypeShort CountNumber of 16-bit words required for the palette

PropertyTagColorTransferFunction

Table of values that specify color transfer functions.

Tag0x501A TypePropertyTagTypeUndefined CountAny

PropertyTagCompression

Compression scheme used for the image data.

Tag0x0103 TypePropertyTagTypeShort Count1

PropertyTagCopyright

Null-terminated character string that contains copyright information.

Tag0x8298 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagDateTime

Date and time the image was created.

Tag0x0132 TypePropertyTagTypeASCII Count20

PropertyTagDocumentName

Null-terminated character string that specifies the name of the document from which the image was scanned.

Tag0x010D TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagDotRange

Color component values that correspond to a 0 percent dot and a 100 percent dot.

Tag0x0150 TypePropertyTagTypeByte or PropertyTagTypeShort Count2 or 2×PropertyTagSamplesPerPixel

PropertyTagEquipMake

Null-terminated character string that specifies the manufacturer of the equipment used to record the image.

Tag0x010F TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagEquipModel

Null-terminated character string that specifies the model name or model number of the equipment used to record the image.

Tag0x0110 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagExifAperture

Lens aperture.

The unit is the APEX value.

Tag0x9202 TypePropertyTagTypeRational Count1

PropertyTagExifBrightness

Brightness value.

The unit is the APEX value. Ordinarily it is given in the range of -99.99 to 99.99.

Tag0x9203 TypePropertyTagTypeSRational Count1

PropertyTagExifCfaPattern

The color filter array (CFA) geometric pattern of the image sensor when a one-chip color area sensor is used. It does not apply to all sensing methods.

Tag0xA302 TypePropertyTagTypeUndefined CountAny

PropertyTagExifColorSpace

Color space specifier.

Normally sRGB (=1) is used to define the color space based on the PC monitor conditions and environment.

If a color space other than sRGB is used, Uncalibrated (=0xFFFF) is set.

Image data recorded as Uncalibrated can be treated as sRGB when it is converted to FlashPix.

PropertyTagExifColorSpace Value Description

0x1

The sRGB color space.

0xFFFF

Uncalibrated.

Other

Reserved.

Tag0xA001 TypePropertyTagTypeShort Count1

PropertyTagExifCompBPP

Information specific to compressed data. The compression mode used for a compressed image is indicated in unit BPP.

Tag0x9102 TypePropertyTagTypeRational Count1

PropertyTagExifCompConfig

Information specific to compressed data. The channels of each component are arranged in order from the first component to the fourth.

For uncompressed data, the data arrangement is given in the PropertyTagPhotometricInterp tag. However, because PropertyTagPhotometricInterp can only express the order of Y, Cb, and Cr, this property is provided for cases when compressed data uses components other than Y, Cb, and Cr and to support other sequences.

Component Identifier Description

0

The color component does not exist.

1

The luminance (Y) color component.

2

The blue chrominance (Cb) color component.

3

The red chrominance (Cr) color component.

4

The red (R) color component.

5

The green (G) color component.

6

The blue (B) color component.

Other

Reserved.

The default setting for the PropertyTagExifCompConfig value is '4 5 6 0' for uncompressed RGB data an '1 2 3 0' for all other cases.

Tag0x9101 TypePropertyTagTypeUndefined Count4

PropertyTagExifDTDigitized

Date and time when the image was stored as digital data.

The format is YYYY:MM:DD HH:MM:SS, with time shown in 24-hour format and the date and time separated by one blank character (0x2000).

The character string length is 20 bytes including the NULL terminator.

When the field is empty, it is treated as unknown.

Tag0x9004 TypePropertyTagTypeASCII Count20

PropertyTagExifDTDigSS

Null-terminated character string that specifies a fraction of a second for the PropertyTagExifDTDigitized tag.

Tag0x9292 TypeASCII CountLength of the string including the NULL terminator

PropertyTagExifDTOrig

Date and time when the original image data was generated.

For a digital camera, the date and time when the picture was taken.

The format is YYYY:MM:DD HH:MM:SS with time shown in 24-hour format and the date and time separated by one blank character (0x2000).

The character string length is 20 bytes including the NULL terminator.

When the field is empty, it is treated as unknown.

Tag0x9003 TypePropertyTagTypeASCII Count20

PropertyTagExifDTOrigSS

Null-terminated character string that specifies a fraction of a second for the PropertyTagExifDTOrig tag.

Tag0x9291 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagExifDTSubsec

Null-terminated character string that specifies a fraction of a second for the PropertyTagDateTime tag.

Tag0x9290 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagExifExposureBias

Exposure bias.

The unit is the APEX value.

Ordinarily it is given in the range -99.99 to 99.99.

Tag0x9204 TypePropertyTagTypeSRational Count1

PropertyTagExifExposureIndex

Exposure index selected on the camera or input device at the time the image was captured.

Tag0xA215 TypePropertyTagTypeRational Count1

PropertyTagExifExposureProg

Class of the program used by the camera to set exposure when the picture is taken.

PropertyTagExifExposureProg Value Description

0

Not defined

1

Manual

2

Normal program

3

Aperture priority

4

Shutter priority

5

Creative program (biased toward depth of field)

6

Action program (biased toward fast shutter speed)

7

Portrait mode (for close-up photos with the background out of focus)

8

Landscape mode (for landscape photos with the background in focus)

9 to 255

Reserved

The default setting for the this property is 0

Tag0x8822 TypeSHORT Count1

PropertyTagExifExposureTime

Exposure time, measured in seconds.

Tag0x829A TypePropertyTagTypeRational Count1

PropertyTagExifFileSource

The image source.

If a digital camera recorded the image, the setting for this property is 3.

Tag0xA300 TypePropertyTagTypeUndefined Count1

PropertyTagExifFlash

Flash status.

This property is recorded when an image is taken using a strobe light (flash).

Bit 0 indicates the flash firing status, and bits 1 and 2 indicate the flash return status.

The following table shows the possible values for bit 0.

Bit 0 Value Description

0

The flash did not fire

1

The flash fired

The following table shows the possible values for bits 1 and 2.

Bit 1 and 2 Values Description

00

No strobe return detection function

01

Reserved

10

Strobe return light not detected

11

Strobe return light detected

The following table shows examples of PropertyTagExifFlash settings.

PropertyTagExifFlash Setting Description

0x0000

Flash did not fire

0x0001

Flash fired

0x0005

Flash fired, but no strobe return light was detected

Tag0x9209 TypePropertyTagTypeShort Count1

PropertyTagExifFlashEnergy

Strobe energy, in Beam Candle Power Seconds (BCPS), at the time the image was captured.

Tag0xA20B TypePropertyTagTypeRational Count1

PropertyTagExifFNumber

The F number at the time the image was taken.

Tag0x829D TypeRATIONAL Count1

PropertyTagExifFocalLength

Actual focal length, in millimeters, of the lens.

Conversion is not made to the focal length of a 35 millimeter film camera.

Tag0x920A TypePropertyTagTypeRational Count1

PropertyTagExifFocalResUnit

Unit of measure for PropertyTagExifFocalXRes and PropertyTagExifFocalYRes.

A setting of 2 indicates inches and a setting of 3 indicates centimeters.

Tag0xA210 TypePropertyTagTypeShort Count1

PropertyTagExifFocalXRes

Number of pixels in the image width (x) direction per unit on the camera focal plane.

The unit is specified in PropertyTagExifFocalResUnit.

Tag0xA20E TypePropertyTagTypeRational Count1

PropertyTagExifFocalYRes

Number of pixels in the image height (y) direction per unit on the camera focal plane.

The unit is specified in PropertyTagExifFocalResUnit.

Tag0xA20F TypePropertyTagTypeRational Count1

PropertyTagExifFPXVer

FlashPix format version supported by an FPXR file.

If the FPXR function supports FlashPix format version 1.0, this is indicated similarly to PropertyTagExifVer by recording 0100 as a 4-byte ASCII string.

Because the type is PropertyTagTypeUndefined, there is no NULL terminator.

The default setting for this property is 0100, all other values are reserved.

Tag0xA000 TypePropertyTagTypeUndefined Count4

PropertyTagExifIFD

Private property used by the Imaging API.

Not for public use.

The Imaging API uses this property to locate Exif-specific information.

Tag0x8769 TypePropertyTagTypeLong Count1

PropertyTagExifInterop

Offset to a block of property items that contain interoperability information.

Tag0xA005 TypePropertyTagTypeLong Count1

PropertyTagExifISOSpeed

ISO speed and ISO latitude of the camera or input device as specified in ISO 12232.

Tag0x8827 TypePropertyTagTypeShort CountAny

PropertyTagExifLightSource

Type of light source.

PropertyTagExifLightSource Settings Description

0

Unknown lighting

1

Daylight

2

Fluorescent lighting

3

Tungsten lighting

17

Standard Light A

18

Standard Light B

19

Standard Light C

20

D55 light

21

D65 light

22

D75 light

23 to 254

Reserved

255

Other lighting

The default setting for this property is 0.

Tag0x9208 TypePropertyTagTypeShort Count1

PropertyTagExifMakerNote

Note tag. A property used by manufacturers of EXIF writers to record information. The contents are up to the manufacturer.

Tag0x927C TypePropertyTagTypeUndefined CountAny

PropertyTagExifMaxAperture

Smallest F number of the lens.

The unit is the APEX value.

Ordinarily it is given in the range of 00.00 to 99.99, but it is not limited to this range.

Tag0x9205 TypePropertyTagTypeRational Count1

PropertyTagExifMeteringMode

Metering mode.

PropertyTagExifMeteringMode Setting Description

0

Unknown

1

Average

2

Center-weighted average

3

Spot

4

Multi-spot

5

Pattern

6

Partial

7 to 254

Reserved

255

Other

The default setting for this property is 0.

Tag0x9207

TypePropertyTagTypeShort

Count1

PropertyTagExifOECF

Optoelectronic conversion function (OECF) specified in ISO 14524.

The OECF is the relationship between the camera optical input and the image values.

Tag0x8828 TypePropertyTagTypeUndefined CountAny

PropertyTagExifPixXDim

Information specific to compressed data.

When a compressed file is recorded, the valid width of the meaningful image must be recorded in this tag, whether or not there is padding data or a restart marker.

This property should not exist in an uncompressed file. Tag0xA002 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagExifPixYDim

Information specific to compressed data.

When a compressed file is recorded, the valid height of the meaningful image must be recorded in this property's setting whether or not there is padding data or a restart marker.

This property should not exist in an uncompressed file.

Because data padding is unnecessary in the vertical direction, the number of lines recorded in this valid image height property will be the same as that recorded in the SOF.

Tag0xA003 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagExifRelatedWav

The name of an audio file related to the image data.

The only relational information recorded is the EXIF audio file name and extension (an ASCII string that consists of 8 characters plus a period (.), plus 3 characters).

The path is not recorded.

When you use this tag, audio files must be recorded in conformance with the EXIF audio format.

Writers can also store audio data within APP2 as FlashPix extension stream data.

Tag0xA004 TypePropertyTagTypeASCII Count13

PropertyTagExifSceneType

The type of scene.

If a digital camera recorded the image, the value of this property must be set to 1, indicating that the image was directly photographed.

Tag0xA301 TypePropertyTagTypeUndefined Count1

PropertyTagExifSensingMethod

Image sensor type on the camera or input device.

PropertyTagExifSensingMethod Setting Description

1

Not defined

2

One-chip color area sensor

3

Two-chip color area sensor

4

Three-chip color area sensor

5

Color sequential area sensor

7

Trilinear sensor

8

Color sequential linear sensor

Other

Reserved

Tag0xA217 TypePropertyTagTypeShort Count1

PropertyTagExifShutterSpeed

Shutter speed.

The unit is the Additive System of Photographic Exposure (APEX) value.

Tag0x9201 TypePropertyTagTypeSRational Count1

PropertyTagExifSpatialFR

Camera or input device spatial frequency table and SFR values in the image width, image height, and diagonal direction, as specified in ISO 12233.

Tag0xA20C TypePropertyTagTypeUndefined CountAny

PropertyTagExifSpectralSense

Null-terminated character string that specifies the spectral sensitivity of each channel of the camera used.

The string is compatible with the standard developed by the ASTM Technical Committee.

Tag0x8824 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagExifSubjectDist

Distance to the subject, measured in meters.

Tag0x9206 TypePropertyTagTypeRational Count1

PropertyTagExifSubjectLoc

Location of the main subject in the scene.

The value of this property represents the pixel at the center of the main subject relative to the left edge.

The first value indicates the column number, and the second value indicates the row number.

Tag0xA214 TypePropertyTagTypeShort Count2

PropertyTagExifUserComment

Comment tag. A property used by EXIF users to write keywords or comments about the image besides those in PropertyTagImageDescription and without the character-code limitations of the PropertyTagImageDescription tag.

The character code used in the PropertyTagExifUserComment property is identified based on an ID code in a fixed 8-byte area at the start of the property data area.

The unused portion of the area is padded with NULL (0). ID codes are assigned by means of registration.

Because the type is not ASCII, it is not necessary to use a NULL terminator.

Tag0x9286 TypePropertyTagTypeUndefined CountAny

PropertyTagExifVer

Version of the EXIF standard supported.

Nonexistence of this field is taken to mean nonconformance to the standard.

Conformance to the standard is indicated by recording 0210 as a 4-byte ASCII string.

Because the type is PropertyTagTypeUndefined, there is no NULL terminator.

The default setting for this property is 0210.

Tag0x9000 TypePropertyTagTypeUndefined Count4

PropertyTagExtraSamples

Number of extra color components. For example, one extra component might hold an alpha value.

Tag0x0152 TypePropertyTagTypeShort Count1

PropertyTagFillOrder

Logical order of bits in a byte.

Tag0x010A TypePropertyTagTypeShort Count1

PropertyTagFrameDelay

Time delay, in hundredths of a second, between two frames in an animated GIF image.

Tag0x5100 TypePropertyTagTypeLong CountNumber of frames in the image

PropertyTagFreeByteCounts

For each string of contiguous unused bytes, the number of bytes in that string.

Tag0x0121 TypePropertyTagTypeLong CountNumber of strings of contiguous unused bytes.

PropertyTagFreeOffset

For each string of contiguous unused bytes, the byte offset of that string.

Tag0x0120 TypePropertyTagTypeLong

PropertyTagGamma

Gamma value attached to the image.

The gamma value is stored as a rational number (pair of long) with a numerator of 100000. For example, a gamma value of 2.2 is stored as the pair (100000, 45455).

Tag0x0301 TypePropertyTagTypeRational Count1

PropertyTagGlobalPalette

Color palette for an indexed bitmap in a GIF image.

Tag0x5102 TypePropertyTagTypeByte Count3 x number of palette entries

PropertyTagGpsAltitude

Altitude, in meters, based on the reference altitude specified by PropertyTagGpsAltitudeRef.

Tag0x0006 TypePropertyTagTypeRational Count1

PropertyTagGpsAltitudeRef

Reference altitude, in meters.

Tag0x0005 TypePropertyTagTypeByte Count1

PropertyTagGpsDestBear

Bearing to the destination point.

The range of values is from 0.00 to 359.99.

Tag0x0018 TypePropertyTagTypeRational Count1

PropertyTagGpsDestBearRef

Null-terminated character string that specifies the reference used for giving the bearing to the destination point.

T specifies true direction, and M specifies magnetic direction.

Tag0x0017 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsDestDist

Distance to the destination point.

Tag0x001A TypePropertyTagTypeRational Count1

PropertyTagGpsDestDistRef

Null-terminated character string that specifies the unit used to express the distance to the destination point.

K, M, and N represent kilometers, miles, and knots respectively.

Tag0x0019 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsDestLat

Latitude of the destination point. The latitude is expressed as three rational values giving the degrees, minutes, and seconds respectively.

When degrees, minutes, and seconds are expressed, the format is dd/1, mm/1, ss/1.

When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format is dd/1, mmmm/100, 0/1.

Tag0x0014 TypePropertyTagTypeRational Count3

PropertyTagGpsDestLatRef

Null-terminated character string that specifies whether the latitude of the destination point is north or south latitude.

N specifies north latitude, and S specifies south latitude.

Tag0x0013 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsDestLong

Longitude of the destination point. The longitude is expressed as three rational values giving the degrees, minutes, and seconds respectively.

When degrees, minutes, and seconds are expressed, the format is ddd/1, mm/1, ss/1.

When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format is ddd/1, mmmm/100, 0/1.

Tag0x0016 TypePropertyTagTypeRational Count3

PropertyTagGpsDestLongRef

Null-terminated character string that specifies whether the longitude of the destination point is east or west longitude.

E specifies east longitude, and W specifies west longitude.

Tag0x0015 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsGpsDop

GPS DOP (data degree of precision).

An HDOP value is written during 2-D measurement, and a PDOP value is written during 3-D measurement.

Tag0x000B TypePropertyTagTypeRational Count1

PropertyTagGpsGpsMeasureMode

Null-terminated character string that specifies the GPS measurement mode.

2 specifies 2-D measurement, and 3 specifies 3-D measurement.

Tag0x000A TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsGpsSatellites

Null-terminated character string that specifies the GPS satellites used for measurements.

This property can be used to specify the ID number, angle of elevation, azimuth, SNR, and other information about each satellite. The format is not specified.

If the GPS receiver is incapable of taking measurements, the value of the property must be set to NULL.

Tag0x0008 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagGpsGpsStatus

Null-terminated character string that specifies the status of the GPS receiver when the image is recorded.

A means measurement is in progress, and V means the measurement is Interoperability.

Tag0x0009 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsGpsTime

Time as coordinated universal time (UTC).

The value is expressed as three rational numbers that give the hour, minute, and second.

Tag0x0007 TypePropertyTagTypeRational Count3

PropertyTagGpsIFD

Offset to a block of GPS property items.

Property items whose tags have the prefix PropertyTagGps are stored in the GPS block. The GPS property items are defined in the EXIF specification.

The Imaging API uses this property to locate GPS information, but it does not expose this property for public use.

Tag0x8825 TypePropertyTagTypeLong Count1

PropertyTagGpsImgDir

Direction of the image when it was captured.

The range of values is from 0.00 to 359.99.

Tag0x0011 TypePropertyTagTypeRational Count1

PropertyTagGpsImgDirRef

Null-terminated character string that specifies the reference for the direction of the image when it is captured.

T specifies true direction, and M specifies magnetic direction.

Tag0x0010 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsLatitude

Latitude. Latitude is expressed as three rational values giving the degrees, minutes, and seconds respectively.

When degrees, minutes, and seconds are expressed, the format is dd/1, mm/1, ss/1.

When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format is dd/1, mmmm/100, 0/1.

Tag0x0002 TypePropertyTagTypeRational Count3

PropertyTagGpsLatitudeRef

Null-terminated character string that specifies whether the latitude is north or south. N specifies north latitude, and S specifies south latitude.

Tag0x0001 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsLongitude

Longitude. Longitude is expressed as three rational values giving the degrees, minutes, and seconds respectively.

When degrees, minutes and seconds are expressed, the format is ddd/1, mm/1, ss/1.

When degrees and minutes are used and, for example, fractions of minutes are given up to two decimal places, the format is ddd/1, mmmm/100, 0/1.

Tag0x0004 TypePropertyTagTypeRational Count3

PropertyTagGpsLongitudeRef

Null-terminated character string that specifies whether the longitude is east or west longitude.

E specifies east longitude, and W specifies west longitude.

Tag0x0003 TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsMapDatum

Null-terminated character string that specifies geodetic survey data used by the GPS receiver.

If the survey data is restricted to Japan, the value of this property is TOKYO or WGS-84.

Tag0x0012 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagGpsSpeed

Speed of the GPS receiver movement.

Tag0x000D TypePropertyTagTypeRational Count1

PropertyTagGpsSpeedRef

Null-terminated character string that specifies the unit used to express the GPS receiver speed of movement.

K, M, and N represent kilometers per hour, miles per hour, and knots respectively.

Tag0x000C TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsTrack

Direction of GPS receiver movement.

The range of values is from 0.00 to 359.99.

Tag0x000F TypePropertyTagTypeRational Count1

PropertyTagGpsTrackRef

Null-terminated character string that specifies the reference for giving the direction of GPS receiver movement.

T specifies true direction, and M specifies magnetic direction.

Tag0x000E TypePropertyTagTypeASCII Count2 (one character plus the NULL terminator)

PropertyTagGpsVer

Version of the Global Positioning Systems (GPS) IFD, given as 2.0.0.0.

This property is mandatory when the PropertyTagGpsIFD property is present.

When the version is 2.0.0.0, the property value is 0x02000000.

Tag0x0000 TypePropertyTagTypeByte Count4

PropertyTagGrayResponseCurve

For each possible pixel value in a grayscale image, the optical density of that pixel value.

Tag0x0123 TypePropertyTagTypeShort CountNumber of possible pixel values

PropertyTagGrayResponseUnit

Precision of the number specified by PropertyTagGrayResponseCurve.

1 specifies tenths, 2 specifies hundredths, 3 specifies thousandths, and so on.

Tag0x0122 TypePropertyTagTypeShort Count1

PropertyTagGridSize

Block of information about grids and guides.

Tag0x5011 TypePropertyTagTypeUndefined CountAny

PropertyTagHalftoneDegree

Angle for screen.

Tag0x500C TypePropertyTagTypeRational Count1

PropertyTagHalftoneHints

Information used by the halftone function

Tag0x0141 TypePropertyTagTypeShort Count2

PropertyTagHalftoneLPI

Ink's screen frequency, in lines per inch.

Tag0x500A TypePropertyTagTypeRational Count1

PropertyTagHalftoneLPIUnit

Units for the screen frequency.

A setting of 1 indicates lines per inch and a setting of 2 indicates lines per centimeter

Tag0x500B TypePropertyTagTypeShort Count1

PropertyTagHalftoneMisc

Miscellaneous halftone information.

Tag0x500E TypePropertyTagTypeLong Count1

PropertyTagHalftoneScreen

Boolean value that specifies whether to use the printer's default screens.

A setting of 1 indicates that the printer's default screens should be used and a setting of 2 indicates otherwise.

Tag0x500F TypePropertyTagTypeByte Count1

PropertyTagHalftoneShape

Shape of the halftone dots.

PropertyTagHalftoneShape Setting Description

0

Round

1

Ellipse

2

Line

3

Square

4

Cross

6

Diamond

Tag0x500D TypePropertyTagTypeShort Count1

PropertyTagHostComputer

Null-terminated character string that specifies the computer and/or operating system used to create the image.

Tag0x013C TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagICCProfile

International Color Consortium (ICC) profile embedded in the image.

Tag0x8773 TypePropertyTagTypeByte CountLength of the profile

PropertyTagICCProfileDescriptor

Null-terminated character string that identifies an ICC profile.

Tag0x0302 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagImageDescription

Null-terminated character string that specifies the title of the image.

Tag0x010E TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagImageHeight

Number of pixel rows.

Tag0x0101 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagImageTitle

Null-terminated character string that specifies the title of the image.

Tag0x0320 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagImageWidth

Number of pixels per row.

Tag0x0100 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagIndexBackground

Index of the background color in the palette of a GIF image.

Tag0x5103 TypePropertyTagTypeByte Count1

PropertyTagIndexTransparent

Index of the transparent color in the palette of a GIF image.

Tag0x5104 TypePropertyTagTypeByte Count1

PropertyTagInkNames

Sequence of concatenated, null-terminated, character strings that specify the names of the inks used in a separated image.

Tag0x014D TypePropertyTagTypeASCII CountTotal length of the sequence of strings including the NULL terminators

PropertyTagInkSet

Set of inks used in a separated image.

Tag0x014C TypePropertyTagTypeShort Count1

PropertyTagJPEGACTables

For each color component, the offset to the AC Huffman table for that component. See also PropertyTagSamplesPerPixel.

Tag0x0209 TypePropertyTagTypeLong CountNumber of samples (components) per pixel

PropertyTagJPEGDCTables

For each color component, the offset to the DC Huffman table (or lossless Huffman table) for that component. See also PropertyTagSamplesPerPixel.

Tag0x0208 TypePropertyTagTypeLong CountNumber of samples (components) per pixel

PropertyTagJPEGInterFormat

Offset to the start of a JPEG bitstream.

Tag0x0201 TypePropertyTagTypeLong Count1

PropertyTagJPEGInterLength

Length, in bytes, of the JPEG bitstream.

Tag0x0202 TypePropertyTagTypeLong Count1

PropertyTagJPEGLosslessPredictors

For each color component, a lossless predictor-selection value for that component. See also PropertyTagSamplesPerPixel.

Tag0x0205 TypePropertyTagTypeShort CountNumber of samples (components) per pixel

PropertyTagJPEGPointTransforms

For each color component, a point transformation value for that component. See also PropertyTagSamplesPerPixel.

Tag0x0206 TypePropertyTagTypeShort CountNumber of samples (components) per pixel

PropertyTagJPEGProc

JPEG compression process.

Tag0x0200 TypePropertyTagTypeShort Count1

PropertyTagJPEGQTables

For each color component, the offset to the quantization table for that component. See also PropertyTagSamplesPerPixel.

Tag0x0207 TypePropertyTagTypeLong CountNumber of samples (components) per pixel

PropertyTagJPEGQuality

Private property used by the Adobe Photoshop format.

Not for public use.

Tag0x5010 TypePropertyTagTypeShort CountAny

PropertyTagJPEGRestartInterval

Length of the restart interval.

Tag0x0203 TypePropertyTagTypeShort Count1

PropertyTagLoopCount

For an animated GIF image, the number of times to display the animation.

A value of 0 specifies that the animation should be displayed infinitely.

Tag0x5101 TypePropertyTagTypeShort Count1

PropertyTagLuminanceTable

Luminance table. The luminance table and the chrominance table are used to control JPEG quality.

A valid luminance or chrominance table has 64 entries of type PropertyTagTypeShort.

If an image has a luminance table or a chrominance table, it must have both tables.

Tag0x5090 TypePropertyTagTypeShort Count64

PropertyTagMaxSampleValue

For each color component, the maximum value assigned to that component. See also PropertyTagSamplesPerPixel.

Tag0x0119 TypePropertyTagTypeShort CountNumber of samples (components) per pixel

PropertyTagMinSampleValue

For each color component, the minimum value assigned to that component. See also PropertyTagSamplesPerPixel.

Tag0x0118 TypePropertyTagTypeShort CountNumber of samples (components) per pixel

PropertyTagNewSubfileType

Typeof data in a subfile.

Tag0x00FE TypePropertyTagTypeLong Count1

PropertyTagNumberOfInks

Number of inks.

Tag0x014E TypePropertyTagTypeShort Count1

PropertyTagOrientation

Image orientation viewed in terms of rows and columns.

PropertyTagOrientation Setting Description

1

The 0th row is at the top of the visual image, and the 0th column is the visual left side.

2

The 0th row is at the visual top of the image, and the 0th column is the visual right side.

3

The 0th row is at the visual bottom of the image, and the 0th column is the visual right side.

4

The 0th row is at the visual bottom of the image, and the 0th column is the visual right side.

5

The 0th row is the visual left side of the image, and the 0th column is the visual top.

6

The 0th row is the visual right side of the image, and the 0th column is the visual top.

7

The 0th row is the visual right side of the image, and the 0th column is the visual bottom.

8

The 0th row is the visual left side of the image, and the 0th column is the visual bottom.

Tag0x0112 TypePropertyTagTypeShort Count1

PropertyTagPageName

Null-terminated character string that specifies the name of the page from which the image was scanned.

Tag0x011D TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagPageNumber

Page number of the page from which the image was scanned.

Tag0x0129 TypePropertyTagTypeShort Count1

PropertyTagPaletteHistogram

Palette histogram.

Tag0x5113 TypePropertyTagTypeByte CountLength of the histogram

PropertyTagPhotometricInterp

How pixel data will be interpreted.

Tag0x0106 TypePropertyTagTypeShort Count1

PropertyTagPixelPerUnitX

Pixels per unit in the x direction.

Tag0x5111 TypePropertyTagTypeLong Count1

PropertyTagPixelPerUnitY

Pixels per unit in the y direction.

Tag0x5112 TypePropertyTagTypeLong Count1

PropertyTagPixelUnit

Unit for PropertyTagPixelPerUnitX and PropertyTagPixelPerUnitY.

A setting of 0 indicates that property is unknown.

Tag0x5110 TypePropertyTagTypeByte Count1

PropertyTagPlanarConfig

Whether pixel components are recorded in chunky or planar format.

Tag0x011C TypePropertyTagTypeShort Count1

PropertyTagPredictor

Type of prediction scheme that was applied to the image data before the encoding scheme was applied.

Tag0x013D TypePropertyTagTypeShort Count1

PropertyTagPrimaryChromaticities

For each of the three primary colors in the image, the chromaticity of that color.

Tag0x013F TypePropertyTagTypeRational Count6

PropertyTagPrintFlags

Sequence of one-byte Boolean values that specify printing options.

Tag0x5005 TypePropertyTagTypeASCII CountNumber of flags

PropertyTagPrintFlagsBleedWidth

Print flags bleed width.

Tag0x5008 TypePropertyTagTypeLong Count1

PropertyTagPrintFlagsBleedWidthScale

Print flags bleed width scale.

Tag0x5009 TypePropertyTagTypeShort Count1

PropertyTagPrintFlagsCrop

Print flags center crop marks.

Tag0x5007 TypePropertyTagTypeByte Count1

PropertyTagPrintFlagsVersion

Print flags version.

Tag0x5006 TypePropertyTagTypeShort Count1

PropertyTagREFBlackWhite

Reference black point value and reference white point value.

Tag0x0214 TypePropertyTagTypeRational Count6

PropertyTagResolutionUnit

Unit of measure for the horizontal resolution and the vertical resolution.

A setting of 2 indicates inches and a setting of 3 indicates centimeters.

Tag0x0128 TypePropertyTagTypeShort Count1

PropertyTagResolutionXLengthUnit

Units in which to display the image width.

PropertyTagResolutionXLengthUnit Setting Description

1

Inches

2

Centimeters

3

Points

4

Picas

5

Columns

Tag0x5003 TypePropertyTagTypeShort Count1

PropertyTagResolutionXUnit

Units in which to display horizontal resolution.

A setting of 1 indicates pixels per inch and a setting of 2 indicates pixels per centimeter.

Tag0x5001 TypePropertyTagTypeShort Count1

PropertyTagResolutionYLengthUnit

Units in which to display the image height.

PropertyTagResolutionYLengthUnit Setting Description

1

Inches

2

Centimeters

3

Points

4

Picas

5

Columns

Tag0x5004 TypePropertyTagTypeShort Count1

PropertyTagResolutionYUnit

Units in which to display vertical resolution.

A setting of 1 indicates pixels per inch and a setting of 2 indicates pixels per centimeter.

Tag0x5002 TypePropertyTagTypeShort Count1

PropertyTagRowsPerStrip

Number of rows per strip. See also PropertyTagStripBytesCount and PropertyTagStripOffsets.

Tag0x0116 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagSampleFormat

For each color component, the numerical format (unsigned, signed, floating point) of that component. See also PropertyTagSamplesPerPixel.

Tag0x0153 TypePropertyTagTypeShort CountNumber of samples (components) per pixel

PropertyTagSamplesPerPixel

Number of color components per pixel.

Tag0x0115 TypePropertyTagTypeShort Count1

PropertyTagSMaxSampleValue

For each color component, the maximum value of that component. See also PropertyTagSamplesPerPixel.

Tag0x0155 TypeThe type that best matches the pixel component data CountNumber of samples (components) per pixel

PropertyTagSMinSampleValue

For each color component, the minimum value of that component. See also PropertyTagSamplesPerPixel.

Tag0x0154 TypeThe type that best matches the pixel component data CountNumber of samples (components) per pixel

PropertyTagSoftwareUsed

Null-terminated character string that specifies the name and version of the software or firmware of the device used to generate the image.

Tag0x0131 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagSRGBRenderingIntent

How the image should be displayed as defined by the International Color Consortium (ICC).

If an Image object is constructed with the useEmbeddedColorManagement parameter set to TRUE, then the Imaging API renders the image according to the specified rendering intent.

The following table shows the possible settings for this property.

PropertyTagSRGBRenderingIntent Settings Description

0

Perceptual intent, which is suitable for photographs, gives good adaptation to the display device gamut at the expense of colorimetric accuracy.

1

Relative colorimetric intent is suitable for images (for example, logos) that require color appearance matching that is relative to the display device white point.

2

Saturation intent, which is suitable for charts and graphs, preserves saturation at the expense of hue and lightness.

3

Absolute colorimetric intent is suitable for proofs (previews of images destined for a different display device) that require preservation of absolute colorimetry.

Tag0x0303 TypeBYTE Count1

PropertyTagStripBytesCount

For each strip, the total number of bytes in that strip.

Tag0x0117 TypePropertyTagTypeShort or PropertyTagTypeLong CountNumber of strips

PropertyTagStripOffsets

For each strip, the byte offset of that strip. See also PropertyTagRowsPerStrip> and PropertyTagStripBytesCount.

Tag0x0111 TypePropertyTagTypeShort or PropertyTagTypeLong CountNumber of strips

PropertyTagSubfileType

Typeof data in a subfile.

Tag0x00FF TypePropertyTagTypeShort Count1

PropertyTagT4Option

Set of flags that relate to T4 encoding.

Tag0x0124 TypePropertyTagTypeLong Count1

PropertyTagT6Option

Set of flags that relate to T6 encoding.

Tag0x0125 TypePropertyTagTypeLong Count1

PropertyTagTargetPrinter

Null-terminated character string that describes the intended printing environment.

Tag0x0151 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThreshHolding

Technique used to convert from gray pixels to black and white pixels.

Tag0x0107 TypePropertyTagTypeShort Count1

PropertyTagThumbnailArtist

Null-terminated character string that specifies the name of the person who created the thumbnail image.

Tag0x5034 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThumbnailBitsPerSample

Number of bits per color component in the thumbnail image. See also PropertyTagThumbnailSamplesPerPixel.

Tag0x5022 TypePropertyTagTypeShort CountNumber of samples (components) per pixel in the thumbnail image

PropertyTagThumbnailColorDepth

Bits per pixel (BPP) for the thumbnail image.

Tag0x5015 TypePropertyTagTypeShort Count1

PropertyTagThumbnailCompressedSize

Compressed size, in bytes, of the thumbnail image.

Tag0x5019 TypePropertyTagTypeLong Count1

PropertyTagThumbnailCompression

Compression scheme used for thumbnail image data.

Tag0x5023 TypePropertyTagTypeShort Count1

PropertyTagThumbnailCopyRight

Null-terminated character string that contains copyright information for the thumbnail image.

Tag0x503B TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThumbnailData

Raw thumbnail bits in JPEG or RGB format. Depends on PropertyTagThumbnailFormat.

Tag0x501B TypePropertyTagTypeByte CountVariable

PropertyTagThumbnailDateTime

Date and time the thumbnail image was created. See also PropertyTagDateTime.

Tag0x5033 TypePropertyTagTypeASCII Count20

PropertyTagThumbnailEquipMake

Null-terminated character string that specifies the manufacturer of the equipment used to record the thumbnail image.

Tag0x5026 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThumbnailEquipModel

Null-terminated character string that specifies the model name or model number of the equipment used to record the thumbnail image.

Tag0x5027 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThumbnailFormat

Format of the thumbnail image.

A setting of 1 indicates raw RGB and a setting of 2 indicates JPEG.

Tag0x5012 TypePropertyTagTypeLong Count1

PropertyTagThumbnailHeight

Height, in pixels, of the thumbnail image.

Tag0x5014 TypePropertyTagTypeLong Count1

PropertyTagThumbnailImageDescription

Null-terminated character string that specifies the title of the image.

Tag0x5025 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThumbnailImageHeight

Number of pixel rows in the thumbnail image.

Tag0x5021 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagThumbnailImageWidth

Number of pixels per row in the thumbnail image.

Tag0x5020 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagThumbnailOrientation

Thumbnail image orientation in terms of rows and columns. See also PropertyTagOrientation.

Tag0x5029 TypePropertyTagTypeShort Count1

PropertyTagThumbnailPhotometricInterp

How thumbnail pixel data will be interpreted.

Tag0x5024 TypePropertyTagTypeShort Count1

PropertyTagThumbnailPlanarConfig

Whether pixel components in the thumbnail image are recorded in chunky or planar format. See also PropertyTagPlanarConfig.

Tag0x502F TypePropertyTagTypeShort Count1

PropertyTagThumbnailPlanes

Number of color planes for the thumbnail image.

Tag0x5016 TypePropertyTagTypeShort Count1

PropertyTagThumbnailPrimaryChromaticities

For each of the three primary colors in the thumbnail image, the chromaticity of that color. See also PropertyTagPrimaryChromaticities.

Tag0x5036 TypePropertyTagTypeRational Count6

PropertyTagThumbnailRawBytes

Byte offset between rows of pixel data.

Tag0x5017 TypePropertyTagTypeLong Count1

PropertyTagThumbnailRefBlackWhite

Reference black point value and reference white point value for the thumbnail image. See also PropertyTagREFBlackWhite.

Tag0x503A TypePropertyTagTypeRational Count6

PropertyTagThumbnailResolutionUnit

Unit of measure for the horizontal resolution and the vertical resolution of the thumbnail image. See also PropertyTagResolutionUnit.

Tag0x5030 TypePropertyTagTypeShort Count1

PropertyTagThumbnailResolutionX

Thumbnail resolution in the width direction. The resolution unit is given in PropertyTagThumbnailResolutionUnit

Tag0x502D

PropertyTagThumbnailResolutionY

Thumbnail resolution in the height direction. The resolution unit is given in PropertyTagThumbnailResolutionUnit

Tag0x502E

PropertyTagThumbnailRowsPerStrip

Number of rows per strip in the thumbnail image. See also PropertyTagThumbnailStripBytesCount and PropertyTagThumbnailStripOffsets.

Tag0x502B TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagThumbnailSamplesPerPixel

Number of color components per pixel in the thumbnail image.

Tag0x502A TypePropertyTagTypeShort Count1

PropertyTagThumbnailSize

Total size, in bytes, of the thumbnail image.

Tag0x5018 TypePropertyTagTypeLong Count1

PropertyTagThumbnailSoftwareUsed

Null-terminated character string that specifies the name and version of the software or firmware of the device used to generate the thumbnail image.

Tag0x5032 TypePropertyTagTypeASCII CountLength of the string including the NULL terminator

PropertyTagThumbnailStripBytesCount

For each thumbnail image strip, the total number of bytes in that strip.

Tag0x502C TypePropertyTagTypeShort or PropertyTagTypeLong CountNumber of strips in the thumbnail image

PropertyTagThumbnailStripOffsets

For each strip in the thumbnail image, the byte offset of that strip. See also PropertyTagThumbnailRowsPerStrip and PropertyTagThumbnailStripBytesCount.

Tag0x5028 TypePropertyTagTypeShort or PropertyTagTypeLong CountNumber of strips

PropertyTagThumbnailTransferFunction

Tables that specify transfer functions for the thumbnail image. See also PropertyTagTransferFunction.

Tag0x5031 TypePropertyTagTypeShort CountTotal number of 16-bit words required for the tables

PropertyTagThumbnailWhitePoint

Chromaticity of the white point of the thumbnail image. See also PropertyTagWhitePoint.

Tag0x5035 TypePropertyTagTypeRational Count2

PropertyTagThumbnailWidth

Width, in pixels, of the thumbnail image.

Tag0x5013 TypePropertyTagTypeLong Count1

PropertyTagThumbnailYCbCrCoefficients

Coefficients for transformation from RGB to YCbCr data for the thumbnail image. See also PropertyTagYCbCrCoefficients.

Tag0x5037 TypePropertyTagTypeRational Count3

PropertyTagThumbnailYCbCrPositioning

Position of chrominance components in relation to the luminance component for the thumbnail image. See also PropertyTagYCbCrPositioning.

Tag0x5039 TypePropertyTagTypeShort Count1

PropertyTagThumbnailYCbCrSubsampling

Sampling ratio of chrominance components in relation to the luminance component for the thumbnail image. See also PropertyTagYCbCrSubsampling.

Tag0x5038 TypePropertyTagTypeShort Count2

PropertyTagTileByteCounts

For each tile, the number of bytes in that tile.

Tag0x0145 TypePropertyTagTypeShort or PropertyTagTypeLong CountNumber of tiles

PropertyTagTileLength

Number of pixel rows in each tile.

Tag0x0143 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagTileOffset

For each tile, the byte offset of that tile.

Tag0x0144 TypePropertyTagTypeLong CountNumber of tiles

PropertyTagTileWidth

Number of pixel columns in each tile.

Tag0x0142 TypePropertyTagTypeShort or PropertyTagTypeLong Count1

PropertyTagTransferFunction

Tables that specify transfer functions for the image.

Tag0x012D TypePropertyTagTypeShort CountTotal number of 16-bit words required for the tables

PropertyTagTransferRange

Table of values that extends the range of the transfer function.

Tag0x0156 TypePropertyTagTypeShort Count6

PropertyTagWhitePoint

Chromaticity of the white point of the image.

Tag0x013E TypePropertyTagTypeRational Count2

PropertyTagXPosition

Offset from the left side of the page to the left side of the image. The unit of measure is specified by PropertyTagResolutionUnit.

Tag0x011E TypePropertyTagTypeRational Count1

PropertyTagXResolution

Number of pixels per unit in the image width (x) direction. The unit is specified by PropertyTagResolutionUnit

Tag0x011A TypePropertyTagTypeRational Count1

PropertyTagYCbCrCoefficients

Coefficients for transformation from RGB to YCbCr image data.

Tag0x0211 TypePropertyTagTypeRational Count3

PropertyTagYCbCrPositioning

Position of chrominance components in relation to the luminance component.

Tag0x0213 TypePropertyTagTypeShort Count1

PropertyTagYCbCrSubsampling

Sampling ratio of chrominance components in relation to the luminance component.

Tag0x0212 TypePropertyTagTypeShort Count2

PropertyTagYPosition

Offset from the top of the page to the top of the image. The unit of measure is specified by PropertyTagResolutionUnit.

Tag0x011F TypePropertyTagTypeRational Count1

PropertyTagYResolution

Number of pixels per unit in the image height (y) direction. The unit is specified by PropertyTagResolutionUnit.

Tag0x011B TypePropertyTagTypeRational Count1

Remarks

The data type for a value of a property item is defined by one of the PropertyTagType Values.

Requirements

Header imaging.h
Windows Embedded CE Windows CE 5.0 and later

See Also