#include "magick/studio.h"#include "magick/artifact.h"#include "magick/cache.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/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"
Go to the source code of this file.
Defines | |
| #define | DupDispose ((DisposeType)9) |
| #define | DelDispose ((DisposeType)8) |
| #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 Image * | CoalesceImages (const Image *image, ExceptionInfo *exception) |
| MagickExport Image * | DisposeImages (const Image *image, 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 Image * | CompareImageLayers (const Image *image, const ImageLayerMethod method, ExceptionInfo *exception) |
| MagickExport Image * | DeconstructImages (const Image *images, ExceptionInfo *exception) |
| static Image * | OptimizeLayerFrames (const Image *image, const ImageLayerMethod method, ExceptionInfo *exception) |
| MagickExport Image * | OptimizeImageLayers (const Image *image, ExceptionInfo *exception) |
| MagickExport Image * | OptimizePlusImageLayers (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, long x_offset, long y_offset) |
| MagickExport void | CompositeLayers (Image *destination, const CompositeOperator compose, Image *source, const long x_offset, const long y_offset, ExceptionInfo *exception) |
| MagickExport Image * | MergeImageLayers (Image *image, const ImageLayerMethod method, ExceptionInfo *exception) |
| #define DelDispose ((DisposeType)8) |
Definition at line 948 of file layer.c.
Referenced by OptimizeLayerFrames().
| #define DupDispose ((DisposeType)9) |
Definition at line 944 of file layer.c.
Referenced by OptimizeLayerFrames().
| #define MergeLayersTag "Merge/Layers" |
Referenced by MergeImageLayers().
| static void ClearBounds | ( | Image * | image, | |
| RectangleInfo * | bounds | |||
| ) | [static] |
Definition at line 95 of file layer.c.
References _Image::exception, GetAuthenticPixels(), _RectangleInfo::height, MagickFalse, _Image::matte, OpaqueAlphaChannel, SetImageAlphaChannel(), SyncAuthenticPixels(), TransparentOpacity, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by CoalesceImages(), DisposeImages(), OptimizeImageTransparency(), and OptimizeLayerFrames().
| MagickExport Image* CoalesceImages | ( | const Image * | image, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 229 of file layer.c.
References _Image::background_color, BackgroundDispose, ClearBounds(), CloneImage(), CloneImageArtifacts(), CloneImageProfiles(), CloneImageProperties(), _Image::columns, CompositeImage(), CopyCompositeOp, _Image::debug, DestroyImage(), DestroyImageList(), _Image::dispose, _Image::filename, GetFirstImageInList(), GetMagickModule, GetNextImageInList(), GetPreviousImageInList(), _RectangleInfo::height, IsBoundsCleared(), LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::matte, _Image::next, NoneDispose, _PixelPacket::opacity, OverCompositeOp, _Image::page, _Image::previous, PreviousDispose, _Image::rows, SetImageBackgroundColor(), _ExceptionInfo::signature, _Image::signature, TraceEvent, TransparentOpacity, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
| static RectangleInfo CompareImageBounds | ( | const Image * | image1, | |
| const Image * | image2, | |||
| const ImageLayerMethod | method, | |||
| ExceptionInfo * | exception | |||
| ) | [static] |
Definition at line 590 of file layer.c.
References _Image::columns, ComparePixels(), GetMagickPixelPacket(), GetVirtualIndexQueue(), GetVirtualPixels(), _RectangleInfo::height, _Image::rows, SetMagickPixelPacket(), _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by CompareImageLayers(), OptimizeLayerFrames(), and RemoveDuplicateLayers().
| MagickExport Image* CompareImageLayers | ( | const Image * | image, | |
| const ImageLayerMethod | method, | |||
| ExceptionInfo * | exception | |||
| ) |
Definition at line 759 of file layer.c.
References AcquireQuantumMemory(), AppendImageToList(), _Image::background_color, CloneImage(), CompareAnyLayer, CompareClearLayer, CompareImageBounds(), CompareOverlayLayer, CompositeImage(), CopyCompositeOp, CropImage(), _Image::debug, DestroyImage(), DestroyImageList(), _Image::filename, GetFirstImageInList(), GetImageListLength(), GetMagickModule, GetNextImageInList(), _RectangleInfo::height, LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _PixelPacket::opacity, _Image::page, RelinquishMagickMemory(), ResourceLimitError, SetImageBackgroundColor(), _ExceptionInfo::signature, _Image::signature, ThrowImageException, TraceEvent, TransparentOpacity, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by DeconstructImages().
| static MagickBooleanType ComparePixels | ( | const ImageLayerMethod | method, | |
| const MagickPixelPacket * | p, | |||
| const MagickPixelPacket * | q | |||
| ) | [static] |
Definition at line 520 of file layer.c.
References CompareAnyLayer, CompareClearLayer, CompareOverlayLayer, IsMagickColorSimilar(), MagickFalse, MagickTrue, _MagickPixelPacket::matte, _MagickPixelPacket::opacity, OpaqueOpacity, and QuantumRange.
Referenced by CompareImageBounds().
| static void CompositeCanvas | ( | Image * | destination, | |
| const CompositeOperator | compose, | |||
| Image * | source, | |||
| long | x_offset, | |||
| long | y_offset | |||
| ) | [inline, static] |
Definition at line 1698 of file layer.c.
References CompositeImage(), _Image::page, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by CompositeLayers().
| MagickExport void CompositeLayers | ( | Image * | destination, | |
| const CompositeOperator | compose, | |||
| Image * | source, | |||
| const long | x_offset, | |||
| const long | y_offset, | |||
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1707 of file layer.c.
References AppendImageToList(), CloneImage(), CompositeCanvas(), _Image::debug, _Image::delay, DestroyImage(), _Image::filename, GetLastImageInList(), GetMagickModule, GetNextImageInList(), _Image::iterations, LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::next, _Image::previous, _ExceptionInfo::signature, _Image::signature, and TraceEvent.
| MagickExport Image* DeconstructImages | ( | const Image * | images, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 896 of file layer.c.
References CompareAnyLayer, and CompareImageLayers().
| MagickExport Image* DisposeImages | ( | const Image * | image, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 378 of file layer.c.
References AppendImageToList(), _Image::background_color, BackgroundDispose, ClearBounds(), CloneImage(), CloneImageArtifacts(), CloneImageProfiles(), CloneImageProperties(), _Image::columns, CompositeImage(), CopyCompositeOp, _Image::debug, DestroyImage(), DestroyImageList(), _Image::dispose, _Image::filename, GetFirstImageInList(), GetMagickModule, GetNextImageInList(), _RectangleInfo::height, LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::matte, NewImageList(), NoneDispose, _PixelPacket::opacity, OverCompositeOp, _Image::page, PreviousDispose, _Image::rows, SetImageBackgroundColor(), _ExceptionInfo::signature, _Image::signature, TraceEvent, TransparentOpacity, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
| static MagickBooleanType IsBoundsCleared | ( | const Image * | image1, | |
| const Image * | image2, | |||
| RectangleInfo * | bounds, | |||
| ExceptionInfo * | exception | |||
| ) | [static] |
Definition at line 163 of file layer.c.
References GetVirtualPixels(), _RectangleInfo::height, MagickFalse, MagickTrue, _PixelPacket::opacity, QuantumRange, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by CoalesceImages(), and OptimizeLayerFrames().
| MagickExport Image* MergeImageLayers | ( | Image * | image, | |
| const ImageLayerMethod | method, | |||
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1828 of file layer.c.
References CloneImage(), _Image::columns, _Image::compose, CompositeImage(), _Image::debug, _Image::dispose, _Image::filename, FlattenLayer, GetImageListLength(), GetMagickModule, GetNextImageInList(), _RectangleInfo::height, LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, MergeLayer, MergeLayersTag, MosaicLayer, _Image::page, _Image::rows, SetImageBackgroundColor(), SetImageProgress(), _ExceptionInfo::signature, _Image::signature, TraceEvent, TrimBoundsLayer, UndefinedDispose, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by FlattenImages(), MosaicImages(), and VignetteImage().
| MagickExport Image* OptimizeImageLayers | ( | const Image * | image, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1336 of file layer.c.
References OptimizeImageLayer, and OptimizeLayerFrames().
| MagickExport void OptimizeImageTransparency | ( | const Image * | image, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1406 of file layer.c.
References _Image::background_color, BackgroundDispose, ChangeMaskCompositeOp, ClearBounds(), CloneImage(), _Image::columns, CompositeImage(), CopyCompositeOp, _Image::debug, DestroyImage(), _Image::dispose, _Image::filename, GetFirstImageInList(), GetMagickModule, GetNextImageInList(), _RectangleInfo::height, LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, _Image::matte, NoneDispose, _PixelPacket::opacity, OverCompositeOp, _Image::page, PreviousDispose, _Image::rows, SetImageBackgroundColor(), _ExceptionInfo::signature, _Image::signature, TraceEvent, TransparentOpacity, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
| static Image* OptimizeLayerFrames | ( | const Image * | image, | |
| const ImageLayerMethod | method, | |||
| ExceptionInfo * | exception | |||
| ) | [static] |
Definition at line 950 of file layer.c.
References AcquireExceptionInfo(), AcquireQuantumMemory(), AppendImageToList(), _Image::background_color, BackgroundDispose, ClearBounds(), CloneImage(), _Image::columns, CompareAnyLayer, CompareClearLayer, CompareImageBounds(), CropImage(), _Image::debug, _Image::delay, DelDispose, DestroyExceptionInfo(), DestroyImage(), DestroyImageList(), _Image::dispose, DupDispose, _Image::filename, GetFirstImageInList(), GetImageListLength(), GetMagickModule, GetNextImageInList(), _RectangleInfo::height, IsBoundsCleared(), LogMagickEvent(), MagickFalse, MagickSignature, MagickTrue, NewImageList(), NoneDispose, _PixelPacket::opacity, OptimizeImageLayer, OptimizeLayer, OptimizePlusLayer, OptionError, _Image::page, _Image::previous, PreviousDispose, RelinquishMagickMemory(), ResourceLimitError, _Image::rows, SetImageBackgroundColor(), _ExceptionInfo::signature, _Image::signature, ThrowImageException, _Image::ticks_per_second, TraceEvent, TransparentOpacity, _RectangleInfo::width, _RectangleInfo::x, and _RectangleInfo::y.
Referenced by OptimizeImageLayers(), and OptimizePlusImageLayers().
| MagickExport Image* OptimizePlusImageLayers | ( | const Image * | image, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1369 of file layer.c.
References OptimizeLayerFrames(), and OptimizePlusLayer.
| MagickExport void RemoveDuplicateLayers | ( | Image ** | images, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1532 of file layer.c.
References _Image::columns, CompareAnyLayer, CompareImageBounds(), _Image::delay, DeleteImageFromList(), GetFirstImageInList(), GetMagickModule, GetNextImageInList(), _Image::iterations, LogMagickEvent(), MagickFalse, MagickSignature, _Image::page, _Image::rows, _ExceptionInfo::signature, _Image::ticks_per_second, TraceEvent, _RectangleInfo::x, and _RectangleInfo::y.
| MagickExport void RemoveZeroDelayLayers | ( | Image ** | images, | |
| ExceptionInfo * | exception | |||
| ) |
Definition at line 1613 of file layer.c.
References _Image::delay, DeleteImageFromList(), _Image::filename, GetFirstImageInList(), GetMagickModule, GetNextImageInList(), LogMagickEvent(), MagickFalse, MagickSignature, OptionWarning, _ExceptionInfo::signature, ThrowMagickException(), and TraceEvent.
1.6.1