1#ifndef GD_VECTOR2D_PRIVATE_H
2#define GD_VECTOR2D_PRIVATE_H
5#include "gd_vector2d.h"
7#if defined(__GNUC__) && !defined(_WIN32)
8#define GD_VECTOR2D_INTERNAL __attribute__((visibility("hidden")))
10#define GD_VECTOR2D_INTERNAL
20typedef struct gdSurfaceStruct {
25 int width, height, stride;
27typedef gdSurface *gdSurfacePtr;
29typedef struct gdSpanStruct {
32 unsigned char coverage;
34typedef gdSpan *gdSpanPtr;
35typedef struct gdSpanRleStruct {
43typedef gdSpanRle *gdSpanRlePtr;
51typedef struct gdColorStruct {
54typedef gdColor *gdColorPtr;
55struct gdPathPatternStruct {
63typedef struct gdGradientStruct gdGradient;
74typedef struct gdPathDashStruct {
79typedef gdPathDash *gdPathDashPtr;
80typedef struct gdStrokeStruct {
81 double width, miterlimit;
86typedef gdStroke *gdStrokePtr;
87typedef struct gdStateStruct {
88 gdSpanRlePtr clippath;
98 struct gdStateStruct *next;
100typedef gdState *gdStatePtr;
108typedef gdPathOps *gdPathOpsPtr;
115struct gdContextStruct {
117 gdSurfacePtr surface;
120 gdSpanRlePtr rle, clippath;
126GD_VECTOR2D_INTERNAL gdSurfacePtr gdSurfaceCreate(
int width,
int height,
unsigned int type);
127GD_VECTOR2D_INTERNAL gdSurfacePtr gdSurfaceCreateForData(
unsigned char *data,
int width,
int height,
128 int stride,
unsigned int type);
129GD_VECTOR2D_INTERNAL gdSurfacePtr gdSurfaceAddRef(gdSurfacePtr surface);
130GD_VECTOR2D_INTERNAL
void gdSurfaceDestroy(gdSurfacePtr surface);
131GD_VECTOR2D_INTERNAL
gdContextPtr gdContextCreate(gdSurfacePtr surface);
132GD_VECTOR2D_INTERNAL
gdPathPatternPtr gdPathPatternCreate(gdSurfacePtr surface);
133GD_VECTOR2D_INTERNAL
void gdContextSetSourceSurface(
gdContextPtr context, gdSurfacePtr surface,
135GD_VECTOR2D_INTERNAL gdPathPtr gdPathStrokeToPath(
const gdPathPtr path,
const gdStrokePtr stroke,
gdContext * gdContextPtr
Opaque 2D drawing context pointer.
Definition gd_vector2d.h:44
gdPaint * gdPaintPtr
Opaque paint source pointer.
Definition gd_vector2d.h:86
gdLineJoin
Definition gd_vector2d.h:210
gdCompositeOperator
Definition gd_vector2d.h:255
gdPathPattern * gdPathPatternPtr
Opaque image pattern pointer.
Definition gd_vector2d.h:106
gdPatternFilter
Definition gd_vector2d.h:241
gdLineCap
Definition gd_vector2d.h:196
gdFontFace * gdFontFacePtr
Opaque font face pointer.
Definition gd_vector2d.h:126
gdFillRule
Definition gd_vector2d.h:224
gdExtendMode
Definition gd_vector2d.h:181
Affine transformation matrix.
Definition gd_vector2d.h:139
Defines a point in a 2D coordinate system using floating point values.
Definition gd.h:518
Floating-point rectangle.
Definition gd_vector2d.h:160