blob: e2debde566981c88978034201a379173161c6c25 [file] [log] [blame]
cristy3ed852e2009-09-05 21:47:34 +00001/*
cristy7e41fe82010-12-04 23:12:08 +00002 Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization
cristy3ed852e2009-09-05 21:47:34 +00003 dedicated to making software imaging solutions freely available.
4
5 You may not use this file except in compliance with the License.
6 obtain a copy of the License at
7
8 http://www.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 MagickWand drawing wand methods.
17*/
18#ifndef _MAGICKWAND_DRAWING_WAND_H
19#define _MAGICKWAND_DRAWING_WAND_H
20
21#if defined(__cplusplus) || defined(c_plusplus)
22extern "C" {
23#endif
24
cristy4c08aed2011-07-01 19:47:50 +000025#include "MagickWand/pixel-wand.h"
cristy3ed852e2009-09-05 21:47:34 +000026
27typedef struct _DrawingWand
28 DrawingWand;
29
30extern WandExport AlignType
31 DrawGetTextAlignment(const DrawingWand *);
32
33extern WandExport char
34 *DrawGetClipPath(const DrawingWand *),
35 *DrawGetException(const DrawingWand *,ExceptionType *),
36 *DrawGetFont(const DrawingWand *),
37 *DrawGetFontFamily(const DrawingWand *),
38 *DrawGetTextEncoding(const DrawingWand *),
39 *DrawGetVectorGraphics(DrawingWand *);
40
41extern WandExport ClipPathUnits
42 DrawGetClipUnits(const DrawingWand *);
43
44extern WandExport DecorationType
45 DrawGetTextDecoration(const DrawingWand *);
46
47extern WandExport double
cristyb6a294d2011-10-03 00:55:17 +000048 DrawGetFillAlpha(const DrawingWand *),
cristy3ed852e2009-09-05 21:47:34 +000049 DrawGetFontSize(const DrawingWand *),
cristyb6a294d2011-10-03 00:55:17 +000050 DrawGetAlpha(const DrawingWand *),
cristybb503372010-05-27 20:51:26 +000051 *DrawGetStrokeDashArray(const DrawingWand *,size_t *),
cristy3ed852e2009-09-05 21:47:34 +000052 DrawGetStrokeDashOffset(const DrawingWand *),
cristyb6a294d2011-10-03 00:55:17 +000053 DrawGetStrokeAlpha(const DrawingWand *),
cristy3ed852e2009-09-05 21:47:34 +000054 DrawGetStrokeWidth(const DrawingWand *),
55 DrawGetTextKerning(DrawingWand *),
cristyb32b90a2009-09-07 21:45:48 +000056 DrawGetTextInterlineSpacing(DrawingWand *),
cristy3ed852e2009-09-05 21:47:34 +000057 DrawGetTextInterwordSpacing(DrawingWand *);
58
59extern WandExport DrawInfo
60 *PeekDrawingWand(const DrawingWand *);
61
62extern WandExport DrawingWand
63 *CloneDrawingWand(const DrawingWand *),
64 *DestroyDrawingWand(DrawingWand *),
65 *DrawAllocateWand(const DrawInfo *,Image *),
66 *NewDrawingWand(void);
67
68extern WandExport ExceptionType
69 DrawGetExceptionType(const DrawingWand *);
70
71extern WandExport FillRule
72 DrawGetClipRule(const DrawingWand *),
73 DrawGetFillRule(const DrawingWand *);
74
75extern WandExport GravityType
76 DrawGetGravity(const DrawingWand *);
77
78extern WandExport LineCap
79 DrawGetStrokeLineCap(const DrawingWand *);
80
81extern WandExport LineJoin
82 DrawGetStrokeLineJoin(const DrawingWand *);
83
84extern WandExport MagickBooleanType
85 DrawClearException(DrawingWand *),
86 DrawComposite(DrawingWand *,const CompositeOperator,const double,const double,
87 const double,const double,MagickWand *),
cristy56375382010-11-21 23:49:30 +000088 DrawGetFontResolution(const DrawingWand *,double *,double *),
cristy3ed852e2009-09-05 21:47:34 +000089 DrawGetStrokeAntialias(const DrawingWand *),
90 DrawGetTextAntialias(const DrawingWand *),
91 DrawPopPattern(DrawingWand *),
92 DrawPushPattern(DrawingWand *,const char *,const double,const double,
93 const double,const double),
94 DrawRender(DrawingWand *),
95 DrawSetClipPath(DrawingWand *,const char *),
96 DrawSetFillPatternURL(DrawingWand *,const char *),
97 DrawSetFont(DrawingWand *,const char *),
98 DrawSetFontFamily(DrawingWand *,const char *),
cristy56375382010-11-21 23:49:30 +000099 DrawSetFontResolution(DrawingWand *,const double,const double),
cristybb503372010-05-27 20:51:26 +0000100 DrawSetStrokeDashArray(DrawingWand *,const size_t,const double *),
cristy3ed852e2009-09-05 21:47:34 +0000101 DrawSetStrokePatternURL(DrawingWand *,const char *),
102 DrawSetVectorGraphics(DrawingWand *,const char *),
103 IsDrawingWand(const DrawingWand *),
104 PopDrawingWand(DrawingWand *),
105 PushDrawingWand(DrawingWand *);
106
107extern WandExport StretchType
108 DrawGetFontStretch(const DrawingWand *);
109
110extern WandExport StyleType
111 DrawGetFontStyle(const DrawingWand *);
112
cristybb503372010-05-27 20:51:26 +0000113extern WandExport size_t
cristy3ed852e2009-09-05 21:47:34 +0000114 DrawGetFontWeight(const DrawingWand *),
115 DrawGetStrokeMiterLimit(const DrawingWand *);
116
117extern WandExport void
118 ClearDrawingWand(DrawingWand *),
119 DrawAffine(DrawingWand *,const AffineMatrix *),
120 DrawAnnotation(DrawingWand *,const double,const double,const unsigned char *),
121 DrawArc(DrawingWand *,const double,const double,const double,const double,
122 const double,const double),
cristybb503372010-05-27 20:51:26 +0000123 DrawBezier(DrawingWand *,const size_t,const PointInfo *),
cristy3ed852e2009-09-05 21:47:34 +0000124 DrawGetBorderColor(const DrawingWand *,PixelWand *),
125 DrawCircle(DrawingWand *,const double,const double,const double,const double),
126 DrawColor(DrawingWand *,const double,const double,const PaintMethod),
127 DrawComment(DrawingWand *,const char *),
128 DrawEllipse(DrawingWand *,const double,const double,const double,const double,
129 const double,const double),
130 DrawGetFillColor(const DrawingWand *,PixelWand *),
131 DrawGetStrokeColor(const DrawingWand *,PixelWand *),
132 DrawSetTextKerning(DrawingWand *,const double),
cristyb32b90a2009-09-07 21:45:48 +0000133 DrawSetTextInterlineSpacing(DrawingWand *,const double),
cristy3ed852e2009-09-05 21:47:34 +0000134 DrawSetTextInterwordSpacing(DrawingWand *,const double),
135 DrawGetTextUnderColor(const DrawingWand *,PixelWand *),
136 DrawLine(DrawingWand *,const double, const double,const double,const double),
137 DrawMatte(DrawingWand *,const double,const double,const PaintMethod),
138 DrawPathClose(DrawingWand *),
139 DrawPathCurveToAbsolute(DrawingWand *,const double,const double,const double,
140 const double,const double,const double),
141 DrawPathCurveToRelative(DrawingWand *,const double,const double,const double,
142 const double,const double, const double),
143 DrawPathCurveToQuadraticBezierAbsolute(DrawingWand *,const double,
144 const double,const double,const double),
145 DrawPathCurveToQuadraticBezierRelative(DrawingWand *,const double,
146 const double,const double,const double),
147 DrawPathCurveToQuadraticBezierSmoothAbsolute(DrawingWand *,const double,
148 const double),
149 DrawPathCurveToQuadraticBezierSmoothRelative(DrawingWand *,const double,
150 const double),
151 DrawPathCurveToSmoothAbsolute(DrawingWand *,const double,const double,
152 const double,const double),
153 DrawPathCurveToSmoothRelative(DrawingWand *,const double,const double,
154 const double,const double),
155 DrawPathEllipticArcAbsolute(DrawingWand *,const double,const double,
156 const double,const MagickBooleanType,const MagickBooleanType,const double,
157 const double),
158 DrawPathEllipticArcRelative(DrawingWand *,const double,const double,
159 const double,const MagickBooleanType,const MagickBooleanType,const double,
160 const double),
161 DrawPathFinish(DrawingWand *),
162 DrawPathLineToAbsolute(DrawingWand *,const double,const double),
163 DrawPathLineToRelative(DrawingWand *,const double,const double),
164 DrawPathLineToHorizontalAbsolute(DrawingWand *,const double),
165 DrawPathLineToHorizontalRelative(DrawingWand *,const double),
166 DrawPathLineToVerticalAbsolute(DrawingWand *,const double),
167 DrawPathLineToVerticalRelative(DrawingWand *,const double),
168 DrawPathMoveToAbsolute(DrawingWand *,const double,const double),
169 DrawPathMoveToRelative(DrawingWand *,const double,const double),
170 DrawPathStart(DrawingWand *),
171 DrawPoint(DrawingWand *,const double,const double),
cristybb503372010-05-27 20:51:26 +0000172 DrawPolygon(DrawingWand *,const size_t,const PointInfo *),
173 DrawPolyline(DrawingWand *,const size_t,const PointInfo *),
cristy3ed852e2009-09-05 21:47:34 +0000174 DrawPopClipPath(DrawingWand *),
175 DrawPopDefs(DrawingWand *),
176 DrawPushClipPath(DrawingWand *,const char *),
177 DrawPushDefs(DrawingWand *),
178 DrawRectangle(DrawingWand *,const double,const double,const double,
179 const double),
180 DrawResetVectorGraphics(DrawingWand *),
181 DrawRotate(DrawingWand *,const double),
182 DrawRoundRectangle(DrawingWand *,double,double,double,double,double,double),
183 DrawScale(DrawingWand *,const double,const double),
184 DrawSetBorderColor(DrawingWand *,const PixelWand *),
185 DrawSetClipRule(DrawingWand *,const FillRule),
186 DrawSetClipUnits(DrawingWand *,const ClipPathUnits),
187 DrawSetFillColor(DrawingWand *,const PixelWand *),
cristyb6a294d2011-10-03 00:55:17 +0000188 DrawSetFillAlpha(DrawingWand *,const double),
cristy3ed852e2009-09-05 21:47:34 +0000189 DrawSetFillRule(DrawingWand *,const FillRule),
190 DrawSetFontSize(DrawingWand *,const double),
191 DrawSetFontStretch(DrawingWand *,const StretchType),
192 DrawSetFontStyle(DrawingWand *,const StyleType),
cristybb503372010-05-27 20:51:26 +0000193 DrawSetFontWeight(DrawingWand *,const size_t),
cristy3ed852e2009-09-05 21:47:34 +0000194 DrawSetGravity(DrawingWand *,const GravityType),
cristyb6a294d2011-10-03 00:55:17 +0000195 DrawSetAlpha(DrawingWand *,const double),
cristy3ed852e2009-09-05 21:47:34 +0000196 DrawSetStrokeAntialias(DrawingWand *,const MagickBooleanType),
197 DrawSetStrokeColor(DrawingWand *,const PixelWand *),
198 DrawSetStrokeDashOffset(DrawingWand *,const double dashoffset),
199 DrawSetStrokeLineCap(DrawingWand *,const LineCap),
200 DrawSetStrokeLineJoin(DrawingWand *,const LineJoin),
cristybb503372010-05-27 20:51:26 +0000201 DrawSetStrokeMiterLimit(DrawingWand *,const size_t),
cristyb6a294d2011-10-03 00:55:17 +0000202 DrawSetStrokeAlpha(DrawingWand *, const double),
cristy3ed852e2009-09-05 21:47:34 +0000203 DrawSetStrokeWidth(DrawingWand *,const double),
204 DrawSetTextAlignment(DrawingWand *,const AlignType),
205 DrawSetTextAntialias(DrawingWand *,const MagickBooleanType),
206 DrawSetTextDecoration(DrawingWand *,const DecorationType),
207 DrawSetTextEncoding(DrawingWand *,const char *),
208 DrawSetTextUnderColor(DrawingWand *,const PixelWand *),
cristy5ed838e2010-05-31 00:05:35 +0000209 DrawSetViewbox(DrawingWand *,ssize_t,ssize_t,ssize_t,ssize_t),
cristy3ed852e2009-09-05 21:47:34 +0000210 DrawSkewX(DrawingWand *,const double),
211 DrawSkewY(DrawingWand *,const double),
212 DrawTranslate(DrawingWand *,const double,const double);
213
214#if defined(__cplusplus) || defined(c_plusplus)
215}
216#endif
217
218#endif