module dmagick.c.layer; import core.sys.posix.sys.types; import dmagick.c.composite; import dmagick.c.exception; import dmagick.c.image; extern(C) { enum DisposeType { UnrecognizedDispose, UndefinedDispose = 0, NoneDispose = 1, BackgroundDispose = 2, PreviousDispose = 3 } enum ImageLayerMethod { UndefinedLayer, CoalesceLayer, CompareAnyLayer, CompareClearLayer, CompareOverlayLayer, DisposeLayer, OptimizeLayer, OptimizeImageLayer, OptimizePlusLayer, OptimizeTransLayer, RemoveDupsLayer, RemoveZeroLayer, CompositeLayer, MergeLayer, FlattenLayer, MosaicLayer, TrimBoundsLayer } Image* CoalesceImages(const(Image)*, ExceptionInfo*); Image* DisposeImages(const(Image)*, ExceptionInfo*); Image* CompareImageLayers(const(Image)*, const ImageLayerMethod, ExceptionInfo*); Image* DeconstructImages(const(Image)*, ExceptionInfo*); Image* MergeImageLayers(Image*, const ImageLayerMethod, ExceptionInfo*); Image* OptimizeImageLayers(const(Image)*, ExceptionInfo*); Image* OptimizePlusImageLayers(const(Image)*, ExceptionInfo*); void CompositeLayers(Image*, const CompositeOperator, Image*, const ssize_t, const ssize_t, ExceptionInfo*); void OptimizeImageTransparency(const(Image)*, ExceptionInfo*); void RemoveDuplicateLayers(Image**, ExceptionInfo*); void RemoveZeroDelayLayers(Image**, ExceptionInfo*); }