MagickCore  6.9.11
Convert, Edit, Or Compose Bitmap Images
paint.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2020 ImageMagick Studio LLC, a non-profit organization
3  dedicated to making software imaging solutions freely available.
4 
5  You may not use this file except in compliance with the License. You may
6  obtain a copy of the License at
7 
8  https://imagemagick.org/script/license.php
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  MagickCore image paint methods.
17 */
18 #ifndef MAGICKCORE_PAINT_H
19 #define MAGICKCORE_PAINT_H
20 
21 #include "magick/color.h"
22 #include "magick/draw.h"
23 
24 #if defined(__cplusplus) || defined(c_plusplus)
25 extern "C" {
26 #endif
27 
28 extern MagickExport Image
29  *OilPaintImage(const Image *,const double,ExceptionInfo *);
30 
33  const MagickPixelPacket *,const ssize_t,const ssize_t,
34  const MagickBooleanType),
36  const PixelPacket *,const PixelPacket *),
38  const MagickBooleanType),
40  const MagickPixelPacket *,const MagickBooleanType),
42  const Quantum,const MagickBooleanType),
44  const MagickPixelPacket *,const Quantum,const MagickBooleanType);
45 
46 #if defined(__cplusplus) || defined(c_plusplus)
47 }
48 #endif
49 
50 #endif
_Image::colorspace
ColorspaceType colorspace
Definition: image.h:158
MagickExport
#define MagickExport
Definition: method-attribute.h:80
_Image::debug
MagickBooleanType debug
Definition: image.h:290
_Image::filename
char filename[MaxTextExtent]
Definition: image.h:278
_Image::progress_monitor
MagickProgressMonitor progress_monitor
Definition: image.h:264
CloneImage
MagickExport Image * CloneImage(const Image *image, const size_t columns, const size_t rows, const MagickBooleanType detach, ExceptionInfo *exception)
Definition: image.c:767
TransparentOpacity
#define TransparentOpacity
Definition: image.h:28
GetOptimalKernelWidth2D
MagickExport size_t GetOptimalKernelWidth2D(const double radius, const double sigma)
Definition: gem.c:1663
_Image::matte
MagickBooleanType matte
Definition: image.h:171
SetImageProgress
MagickExport MagickBooleanType SetImageProgress(const Image *image, const char *tag, const MagickOffsetType offset, const MagickSizeType extent)
Definition: monitor.c:136
OpaqueOpacity
#define OpaqueOpacity
Definition: image.h:27
_MagickPixelPacket::red
MagickRealType red
Definition: pixel.h:122
AcquireVirtualMemory
MagickExport MemoryInfo * AcquireVirtualMemory(const size_t count, const size_t quantum)
Definition: memory.c:670
GradientImage
MagickExport MagickBooleanType GradientImage(Image *, const GradientType, const SpreadMethod, const PixelPacket *, const PixelPacket *)
DirectClass
@ DirectClass
Definition: magick-type.h:194
BlueChannel
@ BlueChannel
Definition: magick-type.h:172
AcquireHistogramThreadSet
static size_t ** AcquireHistogramThreadSet(const size_t count)
Definition: paint.c:693
IsMagickColorSimilar
MagickExport MagickBooleanType IsMagickColorSimilar(const MagickPixelPacket *p, const MagickPixelPacket *q)
Definition: color.c:1949
GetMagickModule
#define GetMagickModule()
Definition: log.h:29
ConformMagickPixelPacket
MagickExport void ConformMagickPixelPacket(Image *image, const MagickPixelPacket *source, MagickPixelPacket *destination, ExceptionInfo *exception)
Definition: pixel.c:138
DestroyCacheView
MagickExport CacheView * DestroyCacheView(CacheView *cache_view)
Definition: cache-view.c:256
GetMagickPixelPacket
MagickExport void GetMagickPixelPacket(const Image *image, MagickPixelPacket *pixel)
Definition: pixel.c:2233
OpaquePaintImage
MagickExport MagickBooleanType OpaquePaintImage(Image *image, const MagickPixelPacket *target, const MagickPixelPacket *fill, const MagickBooleanType invert)
Definition: paint.c:934
RedChannel
@ RedChannel
Definition: magick-type.h:167
SetPixelOpacity
#define SetPixelOpacity(pixel, value)
Definition: pixel-accessor.h:81
ChannelType
ChannelType
Definition: magick-type.h:165
_GradientInfo::stops
StopInfo * stops
Definition: draw.h:166
MagickCoreSignature
#define MagickCoreSignature
Definition: method-attribute.h:86
GetCacheViewVirtualIndexQueue
MagickExport const IndexPacket * GetCacheViewVirtualIndexQueue(const CacheView *cache_view)
Definition: cache-view.c:638
GravityType
GravityType
Definition: geometry.h:79
_GradientInfo::radii
PointInfo radii
Definition: draw.h:188
TransparentPaintImageChroma
MagickExport MagickBooleanType TransparentPaintImageChroma(Image *, const MagickPixelPacket *, const MagickPixelPacket *, const Quantum, const MagickBooleanType)
Definition: paint.c:1227
FloodfillPaintImage
MagickExport MagickBooleanType FloodfillPaintImage(Image *image, const ChannelType channel, const DrawInfo *draw_info, const MagickPixelPacket *target, const ssize_t x_offset, const ssize_t y_offset, const MagickBooleanType invert)
Definition: paint.c:110
_RectangleInfo::height
size_t height
Definition: geometry.h:126
channel.h
DestroyDrawInfo
MagickExport DrawInfo * DestroyDrawInfo(DrawInfo *draw_info)
Definition: draw.c:886
IndexChannel
@ IndexChannel
Definition: magick-type.h:178
GetCacheViewAuthenticPixels
MagickExport PixelPacket * GetCacheViewAuthenticPixels(CacheView *cache_view, const ssize_t x, const ssize_t y, const size_t columns, const size_t rows, ExceptionInfo *exception)
Definition: cache-view.c:473
_SegmentInfo::x2
double x2
Definition: image.h:110
magick_restrict
#define magick_restrict
Definition: MagickCore.h:41
_SegmentInfo::y1
double y1
Definition: image.h:109
ResetAlphaChannel
@ ResetAlphaChannel
Definition: image.h:39
SetPixelRed
#define SetPixelRed(pixel, value)
Definition: pixel-accessor.h:82
_GradientInfo::gradient_vector
SegmentInfo gradient_vector
Definition: draw.h:163
monitor.h
_Image::columns
size_t columns
Definition: image.h:174
artifact.h
SetPixelGreen
#define SetPixelGreen(pixel, value)
Definition: pixel-accessor.h:77
SouthGravity
@ SouthGravity
Definition: geometry.h:89
_SegmentInfo
Definition: image.h:106
IndexPacket
Quantum IndexPacket
Definition: pixel.h:129
resource_.h
ConvertRGBToCMYK
static void ConvertRGBToCMYK(MagickPixelPacket *pixel)
Definition: colorspace-private.h:40
sRGBColorspace
@ sRGBColorspace
Definition: colorspace.h:40
ResourceLimitError
@ ResourceLimitError
Definition: exception.h:55
TransparentPaintImage
MagickExport MagickBooleanType TransparentPaintImage(Image *, const MagickPixelPacket *, const Quantum, const MagickBooleanType)
_CacheView
Definition: cache-view.c:66
EastGravity
@ EastGravity
Definition: geometry.h:87
string_.h
ThrowBinaryImageException
#define ThrowBinaryImageException(severity, tag, context)
Definition: exception-private.h:35
MagickTrue
@ MagickTrue
Definition: magick-type.h:201
QueueCacheViewAuthenticPixels
MagickExport PixelPacket * QueueCacheViewAuthenticPixels(CacheView *cache_view, const ssize_t x, const ssize_t y, const size_t columns, const size_t rows, ExceptionInfo *exception)
Definition: cache-view.c:883
OpaqueAlphaChannel
@ OpaqueAlphaChannel
Definition: image.h:38
SouthEastGravity
@ SouthEastGravity
Definition: geometry.h:90
_MagickPixelPacket::index
MagickRealType index
Definition: pixel.h:126
GetPixelIndex
#define GetPixelIndex(indexes)
Definition: pixel-accessor.h:44
SyncCacheViewAuthenticPixels
MagickExport MagickBooleanType SyncCacheViewAuthenticPixels(CacheView *magick_restrict cache_view, ExceptionInfo *exception)
Definition: cache-view.c:1000
_MagickPixelPacket::blue
MagickRealType blue
Definition: pixel.h:124
ParseAbsoluteGeometry
MagickExport MagickStatusType ParseAbsoluteGeometry(const char *geometry, RectangleInfo *region_info)
Definition: geometry.c:711
ClampToQuantum
static Quantum ClampToQuantum(const MagickRealType quantum)
Definition: quantum.h:88
WestGravity
@ WestGravity
Definition: geometry.h:85
_StopInfo::offset
MagickRealType offset
Definition: draw.h:151
thread-private.h
TraceEvent
@ TraceEvent
Definition: log.h:38
_GradientInfo::center
PointInfo center
Definition: draw.h:181
_MemoryInfo
Definition: memory.c:136
ThrowImageException
#define ThrowImageException(severity, tag)
Definition: exception-private.h:70
OilPaintImage
MagickExport Image * OilPaintImage(const Image *image, const double radius, ExceptionInfo *exception)
Definition: paint.c:718
OpaquePaintImageChannel
MagickExport MagickBooleanType OpaquePaintImageChannel(Image *image, const ChannelType channel, const MagickPixelPacket *target, const MagickPixelPacket *fill, const MagickBooleanType invert)
Definition: paint.c:941
_GradientInfo::radius
MagickRealType radius
Definition: draw.h:184
LinearGradient
@ LinearGradient
Definition: draw.h:74
OpaquePaintImageTag
#define OpaquePaintImageTag
_GradientInfo::bounding_box
RectangleInfo bounding_box
Definition: draw.h:160
SetImageAlphaChannel
MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, const AlphaChannelType alpha_type)
Definition: channel.c:652
_Image
Definition: image.h:153
MaxStacksize
#define MaxStacksize
GetCacheViewAuthenticIndexQueue
MagickExport IndexPacket * GetCacheViewAuthenticIndexQueue(CacheView *cache_view)
Definition: cache-view.c:564
AcquireAuthenticCacheView
MagickExport CacheView * AcquireAuthenticCacheView(const Image *image, ExceptionInfo *exception)
Definition: cache-view.c:111
_MagickPixelPacket
Definition: pixel.h:105
MagickMax
#define MagickMax(x, y)
Definition: image-private.h:36
LocaleCompare
MagickExport int LocaleCompare(const char *p, const char *q)
Definition: locale.c:1435
OpacityChannel
@ OpacityChannel
Definition: magick-type.h:175
SpreadMethod
SpreadMethod
Definition: draw.h:131
_GradientInfo::type
GradientType type
Definition: draw.h:157
_Image::exception
ExceptionInfo exception
Definition: image.h:287
SetPixelBlue
#define SetPixelBlue(pixel, value)
Definition: pixel-accessor.h:71
_StopInfo::color
MagickPixelPacket color
Definition: draw.h:148
MagickFalse
@ MagickFalse
Definition: magick-type.h:200
MagickProgressMonitor
MagickBooleanType(* MagickProgressMonitor)(const char *, const MagickOffsetType, const MagickSizeType, void *)
Definition: monitor.h:26
PushSegmentStack
#define PushSegmentStack(up, left, right, delta)
pixel-private.h
_GradientInfo::number_stops
size_t number_stops
Definition: draw.h:169
GetPixelOpacity
#define GetPixelOpacity(pixel)
Definition: pixel-accessor.h:49
OilPaintImageTag
#define OilPaintImageTag
TransparentPaintImageChroma
MagickExport MagickBooleanType TransparentPaintImageChroma(Image *image, const MagickPixelPacket *low, const MagickPixelPacket *high, const Quantum opacity, const MagickBooleanType invert)
Definition: paint.c:1227
_SegmentInfo::x1
double x1
Definition: image.h:108
OpaquePaintImage
MagickExport MagickBooleanType OpaquePaintImage(Image *, const MagickPixelPacket *, const MagickPixelPacket *, const MagickBooleanType)
OilPaintImage
MagickExport Image * OilPaintImage(const Image *, const double, ExceptionInfo *)
Definition: paint.c:718
_PixelPacket::opacity
Quantum opacity
Definition: pixel.h:146
color-private.h
draw.h
GradientImage
MagickExport MagickBooleanType GradientImage(Image *image, const GradientType type, const SpreadMethod method, const PixelPacket *start_color, const PixelPacket *stop_color)
Definition: paint.c:426
composite.h
CMYKColorspace
@ CMYKColorspace
Definition: colorspace.h:39
_DrawInfo::gradient
GradientInfo gradient
Definition: draw.h:233
_Image::rows
size_t rows
Definition: image.h:175
FloodfillPaintImage
MagickExport MagickBooleanType FloodfillPaintImage(Image *, const ChannelType, const DrawInfo *, const MagickPixelPacket *, const ssize_t, const ssize_t, const MagickBooleanType)
cache.h
SetMagickPixelPacket
static void SetMagickPixelPacket(const Image *image, const PixelPacket *color, const IndexPacket *index, MagickPixelPacket *pixel)
Definition: pixel-private.h:78
_ExceptionInfo::signature
size_t signature
Definition: exception.h:124
TransparentPaintImageTag
#define TransparentPaintImageTag
GetVirtualMemoryBlob
MagickExport void * GetVirtualMemoryBlob(const MemoryInfo *memory_info)
Definition: memory.c:1051
RelinquishVirtualMemory
MagickExport MemoryInfo * RelinquishVirtualMemory(MemoryInfo *memory_info)
Definition: memory.c:1190
_GradientInfo::spread
SpreadMethod spread
Definition: draw.h:172
_Image::signature
size_t signature
Definition: image.h:307
MagickBooleanType
MagickBooleanType
Definition: magick-type.h:199
StringToDouble
static double StringToDouble(const char *magick_restrict string, char **magick_restrict sentinal)
Definition: string-private.h:82
composite-private.h
RelinquishMagickMemory
MagickExport void * RelinquishMagickMemory(void *memory)
Definition: memory.c:1123
GradientType
GradientType
Definition: draw.h:72
_ExceptionInfo
Definition: exception.h:103
DegreesToRadians
static double DegreesToRadians(const double degrees)
Definition: image-private.h:53
_RectangleInfo::width
size_t width
Definition: geometry.h:125
SetPixelIndex
#define SetPixelIndex(indexes, value)
Definition: pixel-accessor.h:78
studio.h
_StopInfo
Definition: draw.h:146
TransparentPaintImage
MagickExport MagickBooleanType TransparentPaintImage(Image *image, const MagickPixelPacket *target, const Quantum opacity, const MagickBooleanType invert)
Definition: paint.c:1090
GetFillColor
static MagickBooleanType GetFillColor(const DrawInfo *draw_info, const ssize_t x, const ssize_t y, PixelPacket *fill)
Definition: draw-private.h:29
_DrawInfo::signature
size_t signature
Definition: draw.h:329
ParseCommandOption
MagickExport ssize_t ParseCommandOption(const CommandOption option, const MagickBooleanType list, const char *options)
Definition: option.c:2585
NorthWestGravity
@ NorthWestGravity
Definition: geometry.h:82
OpaquePaintImageChannel
MagickExport MagickBooleanType OpaquePaintImageChannel(Image *, const ChannelType, const MagickPixelPacket *, const MagickPixelPacket *, const MagickBooleanType)
MagickRealType
MagickDoubleType MagickRealType
Definition: magick-type.h:125
_PointInfo::y
double y
Definition: draw.h:142
monitor-private.h
GetImageArtifact
MagickExport const char * GetImageArtifact(const Image *image, const char *artifact)
Definition: artifact.c:266
CompositeChannels
@ CompositeChannels
Definition: magick-type.h:179
AcquireVirtualCacheView
MagickExport CacheView * AcquireVirtualCacheView(const Image *image, ExceptionInfo *exception)
Definition: cache-view.c:153
DestroyImage
MagickExport Image * DestroyImage(Image *image)
Definition: image.c:1166
ThreadResource
@ ThreadResource
Definition: resource_.h:33
_SegmentInfo::y2
double y2
Definition: image.h:111
paint.h
NorthEastGravity
@ NorthEastGravity
Definition: geometry.h:84
color.h
_GradientInfo
Definition: draw.h:155
_DrawInfo
Definition: draw.h:211
AcquireDrawInfo
MagickExport DrawInfo * AcquireDrawInfo(void)
Definition: draw.c:233
exception-private.h
SouthWestGravity
@ SouthWestGravity
Definition: geometry.h:88
DestroyHistogramThreadSet
static size_t ** DestroyHistogramThreadSet(size_t **histogram)
Definition: paint.c:680
exception.h
GetPixelIntensity
MagickExport MagickRealType GetPixelIntensity(const Image *image, const PixelPacket *magick_restrict pixel)
Definition: pixel.c:2292
option.h
SetImageStorageClass
MagickExport MagickBooleanType SetImageStorageClass(Image *image, const ClassType storage_class)
Definition: image.c:2587
gem.h
LogMagickEvent
MagickExport MagickBooleanType LogMagickEvent(const LogEventType type, const char *module, const char *function, const size_t line, const char *format,...)
Definition: log.c:1420
draw-private.h
NumberPaintBins
#define NumberPaintBins
GetCacheViewVirtualPixels
MagickExport const PixelPacket * GetCacheViewVirtualPixels(const CacheView *cache_view, const ssize_t x, const ssize_t y, const size_t columns, const size_t rows, ExceptionInfo *exception)
Definition: cache-view.c:723
string-private.h
colorspace-private.h
InheritException
MagickExport void InheritException(ExceptionInfo *exception, const ExceptionInfo *relative)
Definition: exception.c:692
MagickGravityOptions
@ MagickGravityOptions
Definition: option.h:58
MagickMin
#define MagickMin(x, y)
Definition: image-private.h:37
NorthGravity
@ NorthGravity
Definition: geometry.h:83
_MagickPixelPacket::opacity
MagickRealType opacity
Definition: pixel.h:125
_DrawInfo::fill
PixelPacket fill
Definition: draw.h:226
_PointInfo::x
double x
Definition: draw.h:141
_MagickPixelPacket::green
MagickRealType green
Definition: pixel.h:123
GreenChannel
@ GreenChannel
Definition: magick-type.h:170
_GradientInfo::angle
MagickRealType angle
Definition: draw.h:185
GetMagickResourceLimit
MagickExport MagickSizeType GetMagickResourceLimit(const ResourceType type)
Definition: resource.c:842
_PixelPacket
Definition: pixel.h:132
ThrowBinaryException
#define ThrowBinaryException(severity, tag, context)
Definition: exception-private.h:29
IsGrayColorspace
static MagickBooleanType IsGrayColorspace(const ColorspaceType colorspace)
Definition: colorspace-private.h:96
AcquireQuantumMemory
MagickExport void * AcquireQuantumMemory(const size_t count, const size_t quantum)
Definition: memory.c:634
Quantum
unsigned short Quantum
Definition: magick-type.h:85
DrawGradientImage
MagickExport MagickBooleanType DrawGradientImage(Image *image, const DrawInfo *draw_info)
Definition: draw.c:1948
MagickOffsetType
ssize_t MagickOffsetType
Definition: magick-type.h:135
GetOpenMPThreadId
static int GetOpenMPThreadId(void)
Definition: thread-private.h:120
SetImageColorspace
MagickExport MagickBooleanType SetImageColorspace(Image *image, const ColorspaceType colorspace)
Definition: colorspace.c:1250