# ImageMagick: MagickCore, C API for ImageMagick: Working with Image Lists
ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves. ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the [cut: 1167 characters, first 599 kept]
Author: ImageMagick Studio LLC
Keywords: magickcore, c, api, for, imagemagick:, working, with, image, lists, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand

## AppendImageToList

AppendImageToList() appends an image to the end of the list.

The format of the AppendImageToList method is:

      AppendImageToList(Image *images,const Image *image)

A description of each parameter follows:

##### images

The image list.

##### image

The image.

## CloneImageList

CloneImageList() returns a duplicate of the image list.

The format of the CloneImageList method is:

      Image *CloneImageList(const Image *images,ExceptionInfo *exception)

A description of each parameter follows:

##### images

The image list.

##### exception

Return any errors or warnings in this structure.

## CloneImages

CloneImages() clones one or more images from an image sequence.

The format of the CloneImages method is:

      Image *CloneImages(const Image *images,const char *scenes,
        ExceptionInfo *exception)

A description of each parameter follows:

##### images

The image sequence.

##### scenes

This character string specifies which scenes to clone (e.g. 1,3-5,7-6,2).

##### exception

Return any errors or warnings in this structure.

## DeleteImageFromList

DeleteImageFromList() deletes an image from the list.

The format of the DeleteImageFromList method is:

      DeleteImageFromList(Image **images)

A description of each parameter follows:

##### images

The image list.

## DeleteImages

DeleteImages() deletes one or more images from an image sequence.

The format of the DeleteImages method is:

      DeleteImages(Image **images,const char *scenes,ExceptionInfo *exception)

A description of each parameter follows:

##### images

The image sequence.

##### scenes

This character string specifies which scenes to delete (e.g. 1,3-5,7-6,2).

##### exception

Return any errors or warnings in this structure.

## DestroyImageList

DestroyImageList() destroys an image list.

The format of the DestroyImageList method is:

      Image *DestroyImageList(Image *image)

A description of each parameter follows:

##### image

The image sequence.

## GetFirstImageInList

GetFirstImageInList() returns a pointer to the first image in the list.

The format of the GetFirstImageInList method is:

      Image *GetFirstImageInList(const Image *images)

A description of each parameter follows:

##### images

The image list.

## GetImageFromList

GetImageFromList() returns an image at the specified offset from the list.

The format of the GetImageFromList method is:

      Image *GetImageFromList(const Image *images,const long index)

A description of each parameter follows:

##### images

The image list.

##### index

The position within the list.

## GetImageIndexInList

GetImageIndexInList() returns the offset in the list of the specified image.

The format of the GetImageIndexInList method is:

      long GetImageIndexInList(const Image *images)

A description of each parameter follows:

##### images

The image list.

## GetImageListLength

GetImageListLength() returns the length of the list (the number of images in the list).

The format of the GetImageListLength method is:

      unsigned long GetImageListLength(const Image *images)

A description of each parameter follows:

##### images

The image list.

## GetLastImageInList

GetLastImageInList() returns a pointer to the last image in the list.

The format of the GetLastImageInList method is:

      Image *GetLastImageInList(const Image *images)

A description of each parameter follows:

##### images

The image list.

## GetNextImageInList

GetNextImageInList() returns the next image in the list.

The format of the GetNextImageInList method is:

      Image *GetNextImageInList(const Image *images)

A description of each parameter follows:

##### images

The image list.

## GetPreviousImageInList

GetPreviousImageInList() returns the previous image in the list.

The format of the GetPreviousImageInList method is:

      Image *GetPreviousImageInList(const Image *images)

A description of each parameter follows:

##### images

The image list.

## ImageListToArray

ImageListToArray() is a convenience method that converts an image list to a sequential array. For example,

group = ImageListToArray(images, exception); for (i = 0; i < n; i++) puts(group[i]->filename);

The format of the ImageListToArray method is:

      Image **ImageListToArray(const Image *images,ExceptionInfo *exception)

A description of each parameter follows:

##### image

The image list.

##### exception

Return any errors or warnings in this structure.

## InsertImageInList

InsertImageInList() inserts an image in the list.

The format of the InsertImageInList method is:

      InsertImageInList(Image **images,Image *image)

A description of each parameter follows:

##### images

The image list.

##### image

The image.

## NewImageList

NewImageList() creates an empty image list.

The format of the NewImageList method is:

      Image *NewImageList(void)

## PrependImageToList

PrependImageToList() prepends the image to the beginning of the list.

The format of the PrependImageToList method is:

      PrependImageToList(Image *images,Image *image)

A description of each parameter follows:

##### images

The image list.

##### image

The image.

## RemoveImageFromList

RemoveImageFromList() removes an image from the list.

The format of the RemoveImageFromList method is:

      Image *RemoveImageFromList(Image **images)

A description of each parameter follows:

##### images

The image list.

## RemoveFirstImageFromList

RemoveFirstImageFromList() removes the first image in the list.

The format of the RemoveFirstImageFromList method is:

      Image *RemoveFirstImageFromList(Image **images)

A description of each parameter follows:

##### images

The image list.

## RemoveLastImageFromList

RemoveLastImageFromList() removes the last image from the list.

The format of the RemoveLastImageFromList method is:

      Image *RemoveLastImageFromList(Image **images)

A description of each parameter follows:

##### images

The image list.

## ReplaceImageInList

ReplaceImageInList() replaces an image in the list.

The format of the ReplaceImageInList method is:

      ReplaceImageInList(Image **images,Image *image)

A description of each parameter follows:

##### images

The image list.

##### image

The image.

## ReverseImageList

ReverseImageList() reverses the image list.

The format of the ReverseImageList method is:

       ReverseImageList(const Image **images)

A description of each parameter follows:

##### images

The image list.

## SpliceImageIntoList

SpliceImageIntoList() removes 'length' images from the list and replaces them with the specified splice.

The format of the SpliceImageIntoList method is:

      SpliceImageIntoList(Image **images,const unsigned unsigned long,
        const Image *splice)

A description of each parameter follows:

##### images

The image list.

##### length

The length of the image list to remove.

##### splice

Replace the removed image list with this list.

## SplitImageList

SplitImageList() splits an image into two lists.

The format of the SplitImageList method is:

      Image *SplitImageList(Image *images)

A description of each parameter follows:

##### images

The image list.

Discourse Server • Mailing Lists • ImageMagick Studio