# property.c File Reference

`#include "magick/studio.h"`
`#include "magick/cache.h"`
`#include "magick/color.h"`
`#include "magick/compare.h"`
`#include "magick/constitute.h"`
`#include "magick/draw.h"`
`#include "magick/effect.h"`
`#include "magick/exception.h"`
`#include "magick/exception-private.h"`
`#include "magick/fx.h"`
`#include "magick/fx-private.h"`
`#include "magick/gem.h"`
`#include "magick/geometry.h"`
`#include "magick/image.h"`
`#include "magick/layer.h"`
`#include "magick/list.h"`
`#include "magick/memory_.h"`
`#include "magick/monitor.h"`
`#include "magick/montage.h"`
`#include "magick/option.h"`
`#include "magick/profile.h"`
`#include "magick/property.h"`
`#include "magick/quantum.h"`
`#include "magick/resource_.h"`
`#include "magick/splay-tree.h"`
`#include "magick/signature.h"`
`#include "magick/statistic.h"`
`#include "magick/string_.h"`
`#include "magick/token.h"`
`#include "magick/utility.h"`
`#include "magick/xml-tree.h"`

## Defines

#define | MaxDirectoryStack 16
#define | EXIF_DELIMITER "\n"
#define | EXIF_NUM_FORMATS 12
#define | EXIF_FMT_BYTE 1
#define | EXIF_FMT_STRING 2
#define | EXIF_FMT_USHORT 3
#define | EXIF_FMT_ULONG 4
#define | EXIF_FMT_URATIONAL 5
#define | EXIF_FMT_SBYTE 6
#define | EXIF_FMT_UNDEFINED 7
#define | EXIF_FMT_SSHORT 8
#define | EXIF_FMT_SLONG 9
#define | EXIF_FMT_SRATIONAL 10
#define | EXIF_FMT_SINGLE 11
#define | EXIF_FMT_DOUBLE 12
#define | TAG_EXIF_OFFSET 0x8769
#define | TAG_INTEROP_OFFSET 0xa005

## Functions

MagickExport MagickBooleanType | CloneImageProperties (Image *image, const Image *clone_image)
MagickExport MagickBooleanType | DefineImageProperty (Image *image, const char *property)
MagickExport MagickBooleanType | DeleteImageProperty (Image *image, const char *property)
MagickExport void | DestroyImageProperties (Image *image)
MagickExport MagickBooleanType | FormatImagePropertyList (Image *image, const char *property, const char *format, va_list operands)
MagickExport MagickBooleanType | FormatImageProperty (Image *image, const char *property, const char *format,...)
static char * | TracePSClippath (const unsigned char *, size_t, const unsigned long, const unsigned long)
static char ** | TraceSVGClippath (const unsigned char *, size_t, const unsigned long, const unsigned long)
static MagickBooleanType | GetIPTCProperty (const Image *image, const char *key)
static long | MagickMax (const long x, const long y)
static int | ReadPropertyByte (const unsigned char **p, size_t *length)
static unsigned long | ReadPropertyMSBLong (const unsigned char **p, size_t *length)
static unsigned short | ReadPropertyMSBShort (const unsigned char **p, size_t *length)
static MagickBooleanType | Get8BIMProperty (const Image *image, const char *key)
static unsigned short | ReadPropertyShort (const EndianType endian, const unsigned char *buffer)
static unsigned long | ReadPropertyLong (const EndianType endian, const unsigned char *buffer)
static MagickBooleanType | GetEXIFProperty (const Image *image, const char *property)
static MagickBooleanType | GetXMPProperty (const Image *image, const char *property)
static char * | TracePSClippath (const unsigned char *blob, size_t length, const unsigned long magick_unused(columns), const unsigned long magick_unused(rows))
MagickExport const char * | GetImageProperty (const Image *image, const char *property)
MagickExport char * | GetNextImageProperty (const Image *image)
static const char * | GetMagickProperty (const ImageInfo *image_info, Image *image, const char *property)
MagickExport char * | InterpretImageProperties (const ImageInfo *image_info, Image *image, const char *embed_text)
MagickExport char * | RemoveImageProperty (Image *image, const char *property)
MagickExport void | ResetImagePropertyIterator (const Image *image)
MagickExport MagickBooleanType | SetImageProperty (Image *image, const char *property, const char *value)

## Define Documentation

#define EXIF_DELIMITER "\n"

#define EXIF_FMT_BYTE 1

#define EXIF_FMT_DOUBLE 12

#define EXIF_FMT_SBYTE 6

#define EXIF_FMT_SINGLE 11

#define EXIF_FMT_SLONG 9

#define EXIF_FMT_SRATIONAL 10

#define EXIF_FMT_SSHORT 8

#define EXIF_FMT_STRING 2

#define EXIF_FMT_ULONG 4

#define EXIF_FMT_UNDEFINED 7

#define EXIF_FMT_URATIONAL 5

#define EXIF_FMT_USHORT 3

#define EXIF_NUM_FORMATS 12

#define MaxDirectoryStack 16

#define TAG_EXIF_OFFSET 0x8769

#define TAG_INTEROP_OFFSET 0xa005

## Function Documentation

MagickExport MagickBooleanType CloneImageProperties | ( | Image * | image,
|  | const Image * | clone_image |
| ) |  |  |

MagickExport MagickBooleanType DefineImageProperty | ( | Image * | image,
|  | const char * | property |
| ) |  |  |

MagickExport MagickBooleanType DeleteImageProperty | ( | Image * | image,
|  | const char * | property |
| ) |  |  |

MagickExport void DestroyImageProperties | ( | Image * | image | ) |

MagickExport MagickBooleanType FormatImageProperty | ( | Image * | image,
|  | const char * | property,
|  | const char * | format,
|  |  | ... |
| ) |  |  |

MagickExport MagickBooleanType FormatImagePropertyList | ( | Image * | image,
|  | const char * | property,
|  | const char * | format,
|  | va_list | operands |
| ) |  |  |

static MagickBooleanType Get8BIMProperty | ( | const Image * | image,
|  | const char * | key |
| ) |  |  | `[static]`

static MagickBooleanType GetEXIFProperty | ( | const Image * | image,
|  | const char * | property |
| ) |  |  | `[static]`

MagickExport const char* GetImageProperty | ( | const Image * | image,
|  | const char * | property |
| ) |  |  |

static MagickBooleanType GetIPTCProperty | ( | const Image * | image,
|  | const char * | key |
| ) |  |  | `[static]`

static const char* GetMagickProperty | ( | const ImageInfo * | image_info,
|  | Image * | image,
|  | const char * | property |
| ) |  |  | `[static]`

MagickExport char* GetNextImageProperty | ( | const Image * | image | ) |

static MagickBooleanType GetXMPProperty | ( | const Image * | image,
|  | const char * | property |
| ) |  |  | `[static]`

MagickExport char* InterpretImageProperties | ( | const ImageInfo * | image_info,
|  | Image * | image,
|  | const char * | embed_text |
| ) |  |  |

static long MagickMax | ( | const long | x,
|  | const long | y |
| ) |  |  | `[inline, static]`

static int ReadPropertyByte | ( | const unsigned char ** | p,
|  | size_t * | length |
| ) |  |  | `[inline, static]`

static unsigned long ReadPropertyLong | ( | const EndianType | endian,
|  | const unsigned char * | buffer |
| ) |  |  | `[inline, static]`

static unsigned long ReadPropertyMSBLong | ( | const unsigned char ** | p,
|  | size_t * | length |
| ) |  |  | `[inline, static]`

static unsigned short ReadPropertyMSBShort | ( | const unsigned char ** | p,
|  | size_t * | length |
| ) |  |  | `[inline, static]`

static unsigned short ReadPropertyShort | ( | const EndianType | endian,
|  | const unsigned char * | buffer |
| ) |  |  | `[inline, static]`

MagickExport char* RemoveImageProperty | ( | Image * | image,
|  | const char * | property |
| ) |  |  |

MagickExport void ResetImagePropertyIterator | ( | const Image * | image | ) |

MagickExport MagickBooleanType SetImageProperty | ( | Image * | image,
|  | const char * | property,
|  | const char * | value |
| ) |  |  |

static char* TracePSClippath | ( | const unsigned char * | blob,
|  | size_t | length,
|  | const unsigned long | magick_unused(columns),
|  | const unsigned long | magick_unused(rows) |
| ) |  |  | `[static]`

static char* TracePSClippath | ( | const unsigned char * | ,
|  | size_t | ,
|  | const unsigned | long,
|  | const unsigned | long |
| ) |  |  | `[static]`

static char * TraceSVGClippath | ( | const unsigned char * | blob,
|  | size_t | length,
|  | const unsigned long | columns,
|  | const unsigned long | rows |
| ) |  |  |