MagickCore  6.9.11
layer.c File Reference
#include "magick/studio.h"
#include "magick/artifact.h"
#include "magick/cache.h"
#include "magick/channel.h"
#include "magick/color.h"
#include "magick/color-private.h"
#include "magick/composite.h"
#include "magick/effect.h"
#include "magick/exception.h"
#include "magick/exception-private.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/monitor-private.h"
#include "magick/option.h"
#include "magick/pixel-private.h"
#include "magick/property.h"
#include "magick/profile.h"
#include "magick/resource_.h"
#include "magick/resize.h"
#include "magick/statistic.h"
#include "magick/string_.h"
#include "magick/transform.h"
Include dependency graph for layer.c:

Go to the source code of this file.

Macros

#define DupDispose   ((DisposeType)9)
 
#define DelDispose   ((DisposeType)8)
 
#define DEBUG_OPT_FRAME   0
 
#define MergeLayersTag   "Merge/Layers"
 

Functions

static void ClearBounds (Image *image, RectangleInfo *bounds)
 
static MagickBooleanType IsBoundsCleared (const Image *image1, const Image *image2, RectangleInfo *bounds, ExceptionInfo *exception)
 
MagickExport ImageCoalesceImages (const Image *image, ExceptionInfo *exception)
 
MagickExport ImageDisposeImages (const Image *images, ExceptionInfo *exception)
 
static MagickBooleanType ComparePixels (const ImageLayerMethod method, const MagickPixelPacket *p, const MagickPixelPacket *q)
 
static RectangleInfo CompareImageBounds (const Image *image1, const Image *image2, const ImageLayerMethod method, ExceptionInfo *exception)
 
MagickExport ImageCompareImageLayers (const Image *image, const ImageLayerMethod method, ExceptionInfo *exception)
 
MagickExport ImageDeconstructImages (const Image *images, ExceptionInfo *exception)
 
static ImageOptimizeLayerFrames (const Image *image, const ImageLayerMethod method, ExceptionInfo *exception)
 
MagickExport ImageOptimizeImageLayers (const Image *image, ExceptionInfo *exception)
 
MagickExport ImageOptimizePlusImageLayers (const Image *image, ExceptionInfo *exception)
 
MagickExport void OptimizeImageTransparency (const Image *image, ExceptionInfo *exception)
 
MagickExport void RemoveDuplicateLayers (Image **images, ExceptionInfo *exception)
 
MagickExport void RemoveZeroDelayLayers (Image **images, ExceptionInfo *exception)
 
static void CompositeCanvas (Image *destination, const CompositeOperator compose, Image *source, ssize_t x_offset, ssize_t y_offset)
 
MagickExport void CompositeLayers (Image *destination, const CompositeOperator compose, Image *source, const ssize_t x_offset, const ssize_t y_offset, ExceptionInfo *exception)
 
MagickExport ImageMergeImageLayers (Image *image, const ImageLayerMethod method, ExceptionInfo *exception)
 

Macro Definition Documentation

◆ DEBUG_OPT_FRAME

#define DEBUG_OPT_FRAME   0

Definition at line 968 of file layer.c.

◆ DelDispose

#define DelDispose   ((DisposeType)8)

Definition at line 966 of file layer.c.

Referenced by OptimizeLayerFrames().

◆ DupDispose

#define DupDispose   ((DisposeType)9)

Definition at line 962 of file layer.c.

Referenced by OptimizeLayerFrames().

◆ MergeLayersTag

#define MergeLayersTag   "Merge/Layers"

Referenced by MergeImageLayers().

Function Documentation

◆ ClearBounds()

◆ CoalesceImages()

◆ CompareImageBounds()

◆ CompareImageLayers()

◆ ComparePixels()

◆ CompositeCanvas()

static void CompositeCanvas ( Image destination,
const CompositeOperator  compose,
Image source,
ssize_t  x_offset,
ssize_t  y_offset 
)
inlinestatic

Definition at line 1815 of file layer.c.

References CompositeImage(), _Image::page, _RectangleInfo::x, and _RectangleInfo::y.

Referenced by CompositeLayers().

◆ CompositeLayers()

◆ DeconstructImages()

MagickExport Image* DeconstructImages ( const Image images,
ExceptionInfo exception 
)

Definition at line 913 of file layer.c.

References CompareAnyLayer, and CompareImageLayers().

◆ DisposeImages()

◆ IsBoundsCleared()

static MagickBooleanType IsBoundsCleared ( const Image image1,
const Image image2,
RectangleInfo bounds,
ExceptionInfo exception 
)
static

◆ MergeImageLayers()

◆ OptimizeImageLayers()

MagickExport Image* OptimizeImageLayers ( const Image image,
ExceptionInfo exception 
)

Definition at line 1446 of file layer.c.

References OptimizeImageLayer, and OptimizeLayerFrames().

◆ OptimizeImageTransparency()

◆ OptimizeLayerFrames()

◆ OptimizePlusImageLayers()

MagickExport Image* OptimizePlusImageLayers ( const Image image,
ExceptionInfo exception 
)

Definition at line 1479 of file layer.c.

References OptimizeLayerFrames(), and OptimizePlusLayer.

◆ RemoveDuplicateLayers()

◆ RemoveZeroDelayLayers()