- NAME
- SYNOPSIS
- FUNCTION DESCRIPTIONS

- DestroyImageAttributes
- GetImageAttribute
- GetImageClippingPathAttribute
- SetImageAttribute
- TracePSClippath
- TraceSVGClippath

# NAME

attribute - Image Text Attributes

# SYNOPSIS

DestroyImageAttributes( Image *image );

const ImageAttribute * GetImageAttribute( const Image *image, const char *key );

const ImageAttribute * GetImageClippingPathAttribute( const Image *image );

MagickBooleanType SetImageAttribute( Image *image, const char *key, const char *value );

# FUNCTION DESCRIPTIONS

## DestroyImageAttributes

> DestroyImageAttributes() deallocates memory associated with the image attribute list.

The format of the DestroyImageAttributes method is:

> DestroyImageAttributes ( Image *image );

A description of each parameter follows:

image:
  The image.

## GetImageAttribute

> GetImageAttribute() searches the list of image attributes and returns a pointer to the attribute if it exists otherwise NULL.

The format of the GetImageAttribute method is:

> const ImageAttribute *GetImageAttribute ( const Image *image, const char *key );

A description of each parameter follows:

image:
  The image.

key:
  These character strings are the name of an image attribute to return.

## GetImageClippingPathAttribute

> GetImageClippingPathAttribute() searches the list of image attributes and returns a pointer to a clipping path if it exists otherwise NULL.

The format of the GetImageClippingPathAttribute method is:

> const ImageAttribute *GetImageClippingPathAttribute ( const Image *image );

A description of each parameter follows:

attribute:
  Method GetImageClippingPathAttribute returns the clipping path if it exists otherwise NULL.

image:
  The image.

## SetImageAttribute

> SetImageAttribute() searches the list of image attributes and replaces the attribute value. If it is not found in the list, the attribute name and value is added to the list. If the attribute exists in the list, the value is concatenated to the attribute. SetImageAttribute returns MagickTrue if the attribute is successfully concatenated or added to the list, otherwise MagickFalse. If the value is NULL, the matching key is deleted from the list.

The format of the SetImageAttribute method is:

> MagickBooleanType SetImageAttribute ( Image *image, const char *key, const char *value );

A description of each parameter follows:

image:
  The image.

key,value:
  These character strings are the name and value of an image attribute to replace or add to the list.

## TracePSClippath

`TracePSClipPath()` traces a clip path and returns it as Postscript.

The format of the TracePSClipPath method is:

        char *TracePSClipPath(unsigned char *blob,size_t length,
          const unsigned long columns,const unsigned long rows)

A description of each parameter follows:

blob:
  The blob.

length:
  The length of the blob.

columns:
  The image width.

rows:
  The image height.

## TraceSVGClippath

`TraceSVGClipPath()` traces a clip path and returns it as SVG.

The format of the TraceSVGClipPath method is:

        char *TraceSVGClipPath(unsigned char *blob,size_t length,
          const unsigned long columns,const unsigned long rows)

A description of each parameter follows:

blob:
  The blob.

length:
  The length of the blob.

columns:
  The image width.

rows:
  The image height.

"Image manipulation software that works like magick"