19#ifndef _GDIPLUSGRAPHICS_H
20#define _GDIPLUSGRAPHICS_H
51 lastStatus = DllExports::GdipCreateFromHDC2(
hdc, hdevice, &graphics);
107 return SetStatus(DllExports::GdipDrawArcI(
114 return SetStatus(DllExports::GdipDrawArcI(
121 return SetStatus(DllExports::GdipDrawArc(
128 return SetStatus(DllExports::GdipDrawArcI(
135 return SetStatus(DllExports::GdipDrawBezierI(
142 return SetStatus(DllExports::GdipDrawBezier(
225 return SetStatus(DllExports::GdipDrawCurve3I(
232 return SetStatus(DllExports::GdipDrawCurve3(
252 return SetStatus(DllExports::GdipDrawDriverString(
260 return SetStatus(DllExports::GdipDrawEllipseI(
273 return SetStatus(DllExports::GdipDrawEllipse(
330 return SetStatus(DllExports::GdipDrawImagePointRect(
361 return SetStatus(DllExports::GdipDrawImagePointsRect(
369 const Rect &destRect,
379 return SetStatus(DllExports::GdipDrawImageRectRectI(
381 srcy, srcwidth, srcheight, srcUnit, imageAttributes ?
getNat(imageAttributes) :
NULL,
callback,
388 const Point *destPoints,
399 return SetStatus(DllExports::GdipDrawImagePointsRectI(
420 return SetStatus(DllExports::GdipDrawImagePointRectI(
427 const RectF &destRect,
437 return SetStatus(DllExports::GdipDrawImageRectRect(
439 srcy, srcwidth, srcheight, srcUnit, imageAttributes ?
getNat(imageAttributes) :
NULL,
callback,
491 return SetStatus(DllExports::GdipDrawPieI(
498 return SetStatus(DllExports::GdipDrawPieI(
505 return SetStatus(DllExports::GdipDrawPie(
512 return SetStatus(DllExports::GdipDrawPie(
531 return SetStatus(DllExports::GdipDrawRectangleI(
550 return SetStatus(DllExports::GdipDrawRectangleI(
571 const RectF &layoutRect,
575 return SetStatus(DllExports::GdipDrawString(
584 return SetStatus(DllExports::GdipDrawString(
598 return SetStatus(DllExports::GdipDrawString(
623 const Point *destPoints,
635 const Point &destPoint,
660 const Rect &destRect,
671 const RectF &destRect,
672 const RectF &srcRect,
684 const RectF &destRect,
696 const RectF &srcRect,
708 const Point *destPoints,
722 const Rect &destRect,
737 const RectF &srcRect,
749 const Point &destPoint,
786 return SetStatus(DllExports::GdipFillClosedCurve2I(
799 return SetStatus(DllExports::GdipFillClosedCurve2(
806 return SetStatus(DllExports::GdipFillEllipseI(
820 return SetStatus(DllExports::GdipFillEllipse(
840 return SetStatus(DllExports::GdipFillPieI(
848 return SetStatus(DllExports::GdipFillPieI(
855 return SetStatus(DllExports::GdipFillPie(
862 return SetStatus(DllExports::GdipFillPie(
896 return SetStatus(DllExports::GdipFillRectangleI(
903 return SetStatus(DllExports::GdipFillRectangle(
992 return compositingMode;
1000 return compositingQuality;
1038 return interpolationMode;
1056 color->SetValue(argb);
1081 return pixelOffsetMode;
1095 return smoothingMode;
1147 return SetStatus(DllExports::GdipSetClipRectI(
1246 const WCHAR *
string,
1249 const RectF &layoutRect,
1265 RectF *boundingBox)
const
1278 const WCHAR *
string,
1283 RectF *boundingBox)
const
1290 const WCHAR *
string,
1293 const RectF &layoutRect,
1296 INT *codepointsFitted,
1297 INT *linesFilled)
const
1304 const WCHAR *
string,
1307 const SizeF &layoutRectSize,
1310 INT *codepointsFitted,
1311 INT *linesFilled)
const
static const WCHAR stringFormat[]
Status DrawCurve(const Pen *pen, const Point *points, INT count)
Status FillClosedCurve(const Brush *brush, const PointF *points, INT count)
Status FillClosedCurve(const Brush *brush, const PointF *points, INT count, FillMode fillMode, REAL tension)
Status SetStatus(Status status) const
Status GetRenderingOrigin(INT *x, INT *y) const
Status DrawBezier(const Pen *pen, const PointF &pt1, const PointF &pt2, const PointF &pt3, const PointF &pt4)
Status EnumerateMetafile(const Metafile *metafile, const Point *destPoints, INT count, const Rect &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status DrawImage(Image *image, INT x, INT y)
Status SetCompositingMode(CompositingMode compositingMode)
Status TransformPoints(CoordinateSpace destSpace, CoordinateSpace srcSpace, Point *pts, INT count)
Status DrawLine(const Pen *pen, const PointF &pt1, const Point &pt2)
Status EnumerateMetafile(const Metafile *metafile, const Rect &destRect, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status DrawString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const Brush *brush)
BOOL IsVisible(const Point &point) const
CompositingMode GetCompositingMode() const
Status MultiplyTransform(Matrix *matrix, MatrixOrder order)
Status DrawCurve(const Pen *pen, const PointF *points, INT count)
Status DrawImage(Image *image, INT x, INT y, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit)
Status DrawImage(Image *image, REAL x, REAL y)
Status DrawArc(const Pen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Status DrawImage(Image *image, const RectF &rect)
Status FillPolygon(const Brush *brush, const PointF *points, INT count, FillMode fillMode)
Status Restore(GraphicsState gstate)
Status Clear(const Color &color)
Status DrawCurve(const Pen *pen, const PointF *points, INT count, INT offset, INT numberOfSegments, REAL tension)
Graphics(HWND hwnd, BOOL icm=FALSE)
Status SetPageUnit(Unit unit)
Status DrawEllipse(const Pen *pen, INT x, INT y, INT width, INT height)
Status IntersectClip(const Rect &rect)
Status SetClip(const Graphics *g, CombineMode combineMode=CombineModeReplace)
BOOL IsVisible(const Rect &rect) const
Status GetNearestColor(Color *color) const
Status DrawImage(Image *image, REAL x, REAL y, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit)
Status MeasureDriverString(const UINT16 *text, INT length, const Font *font, const PointF *positions, INT flags, const Matrix *matrix, RectF *boundingBox) const
Status DrawLine(const Pen *pen, INT x1, INT y1, INT x2, INT y2)
friend GpGraphics *& getNat(const Graphics *graphics)
Status DrawPie(const Pen *pen, const RectF &rect, REAL startAngle, REAL sweepAngle)
Status DrawPie(const Pen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
Status DrawString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, const StringFormat *stringFormat, const Brush *brush)
Status FillEllipse(const Brush *brush, INT x, INT y, INT width, INT height)
Status FillEllipse(const Brush *brush, const RectF &rect)
Status DrawPolygon(const Pen *pen, const Point *points, INT count)
Status FillClosedCurve(const Brush *brush, const Point *points, INT count)
GraphicsContainer BeginContainer()
Status GetClipBounds(Rect *rect) const
Status SetClip(const Rect &rect, CombineMode combineMode=CombineModeReplace)
Status SetClip(const RectF &rect, CombineMode combineMode=CombineModeReplace)
Status FillEllipse(const Brush *brush, const Rect &rect)
Status ExcludeClip(const Rect &rect)
Status FillPolygon(const Brush *brush, const PointF *points, INT count)
Status FillPie(const Brush *brush, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Status DrawCurve(const Pen *pen, const Point *points, INT count, REAL tension)
Status TransformPoints(CoordinateSpace destSpace, CoordinateSpace srcSpace, PointF *pts, INT count)
Status DrawPolygon(const Pen *pen, const PointF *points, INT count)
Status ExcludeClip(const RectF &rect)
Status ExcludeClip(const Region *region)
Status DrawClosedCurve(const Pen *pen, const PointF *points, INT count, REAL tension)
UINT GetTextContrast() const
Status IntersectClip(const RectF &rect)
Status DrawImage(Image *image, INT x, INT y, INT width, INT height)
Status SetTextRenderingHint(TextRenderingHint newMode)
Status DrawLine(const Pen *pen, REAL x1, REAL y1, REAL x2, REAL y2)
Status EnumerateMetafile(const Metafile *metafile, const RectF &destRect, const RectF &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status GetVisibleClipBounds(Rect *rect) const
Status TranslateTransform(REAL dx, REAL dy, MatrixOrder order=MatrixOrderPrepend)
Status SetTextContrast(UINT contrast)
BOOL IsVisible(REAL x, REAL y, REAL width, REAL height) const
Status DrawString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const StringFormat *stringFormat, const Brush *brush)
CompositingQuality GetCompositingQuality() const
UINT GetTextGammaValue() const
Status SetPageScale(REAL scale)
Status DrawClosedCurve(const Pen *pen, const Point *points, INT count, REAL tension)
Status SetSmoothingMode(SmoothingMode smoothingMode)
Status DrawCurve(const Pen *pen, const PointF *points, INT count, REAL tension)
BOOL IsVisible(REAL x, REAL y) const
Status DrawImage(Image *image, const Point *destPoints, INT count, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit, ImageAttributes *imageAttributes=NULL, DrawImageAbort callback=NULL, VOID *callbackData=NULL)
Status DrawRectangles(const Pen *pen, const Rect *rects, INT count)
Status FillPath(const Brush *brush, const GraphicsPath *path)
Status AddMetafileComment(const BYTE *data, UINT sizeData)
Status DrawLines(const Pen *pen, const PointF *points, INT count)
Status DrawDriverString(const UINT16 *text, INT length, const Font *font, const Brush *brush, const PointF *positions, INT flags, const Matrix *matrix)
Status DrawRectangle(const Pen *pen, const Rect &rect)
Status DrawPath(const Pen *pen, const GraphicsPath *path)
Status EnumerateMetafile(const Metafile *metafile, const Point &destPoint, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
static Graphics * FromHDC(HDC hdc)
static HPALETTE GetHalftonePalette()
VOID Flush(FlushIntention intention)
VOID SetNativeGraphics(GpGraphics *graphics)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const PointF &origin, RectF *boundingBox) const
Status MeasureString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, RectF *boundingBox) const
Status FillPolygon(const Brush *brush, const Point *points, INT count, FillMode fillMode)
Status DrawPie(const Pen *pen, const Rect &rect, REAL startAngle, REAL sweepAngle)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const SizeF &layoutRectSize, const StringFormat *stringFormat, SizeF *size, INT *codepointsFitted, INT *linesFilled) const
Status SetClip(const GraphicsPath *path, CombineMode combineMode=CombineModeReplace)
Status EnumerateMetafile(const Metafile *metafile, const Rect &destRect, const Rect &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status GetClipBounds(RectF *rect) const
Status FillRectangles(const Brush *brush, const Rect *rects, INT count)
Status FillClosedCurve(const Brush *brush, const Point *points, INT count, FillMode fillMode, REAL tension)
static Graphics * FromImage(Image *image)
GraphicsContainer BeginContainer(const RectF &dstrect, const RectF &srcrect, Unit unit)
Status DrawArc(const Pen *pen, const Rect &rect, REAL startAngle, REAL sweepAngle)
Status DrawClosedCurve(const Pen *pen, const Point *points, INT count)
REAL GetPageScale() const
Status EnumerateMetafile(const Metafile *metafile, const PointF *destPoints, INT count, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status FillEllipse(const Brush *brush, REAL x, REAL y, REAL width, REAL height)
Status DrawRectangle(const Pen *pen, INT x, INT y, INT width, INT height)
Status DrawLines(const Pen *pen, const Point *points, INT count)
Status IntersectClip(const Region *region)
Status RotateTransform(REAL angle, MatrixOrder order=MatrixOrderPrepend)
Status DrawBeziers(const Pen *pen, const PointF *points, INT count)
Status EnumerateMetafile(const Metafile *metafile, const Point &destPoint, const Rect &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status TranslateClip(REAL dx, REAL dy)
Status DrawRectangles(const Pen *pen, const RectF *rects, INT count)
Status SetTransform(const Matrix *matrix)
Status DrawImage(Image *image, const Rect &destRect, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit, const ImageAttributes *imageAttributes=NULL, DrawImageAbort callback=NULL, VOID *callbackData=NULL)
Status DrawBezier(const Pen *pen, const Point &pt1, const Point &pt2, const Point &pt3, const Point &pt4)
Status GetTransform(Matrix *matrix) const
TextRenderingHint GetTextRenderingHint() const
BOOL IsVisible(INT x, INT y, INT width, INT height) const
Status DrawImage(Image *image, const PointF *destPoints, INT count, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit, ImageAttributes *imageAttributes, DrawImageAbort callback, VOID *callbackData)
Status DrawImage(Image *image, const PointF *destPoints, INT count)
Status FillPie(const Brush *brush, RectF &rect, REAL startAngle, REAL sweepAngle)
Status GetClip(Region *region) const
Status DrawBezier(const Pen *pen, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, const StringFormat *stringFormat, RectF *boundingBox, INT *codepointsFitted, INT *linesFilled) const
Status DrawBeziers(const Pen *pen, const Point *points, INT count)
Status DrawImage(Image *image, REAL x, REAL y, REAL width, REAL height)
Status EnumerateMetafile(const Metafile *metafile, const RectF &destRect, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status DrawRectangle(const Pen *pen, const RectF &rect)
Status SetPixelOffsetMode(PixelOffsetMode pixelOffsetMode)
Status EnumerateMetafile(const Metafile *metafile, const PointF &destPoint, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status SetClip(HRGN hRgn, CombineMode combineMode=CombineModeReplace)
BOOL IsVisibleClipEmpty() const
Status FillRectangle(const Brush *brush, const Rect &rect)
Status DrawImage(Image *image, const Rect &rect)
Status DrawImage(Image *image, const PointF &point)
Graphics(HDC hdc, HANDLE hdevice)
Status DrawEllipse(const Pen *pen, REAL x, REAL y, REAL width, REAL height)
Status EnumerateMetafile(const Metafile *metafile, const PointF *destPoints, INT count, const RectF &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status TranslateClip(INT dx, INT dy)
Status FillRectangle(const Brush *brush, INT x, INT y, INT width, INT height)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const StringFormat *stringFormat, RectF *boundingBox) const
Status SetCompositingQuality(CompositingQuality compositingQuality)
Status FillRectangles(const Brush *brush, const RectF *rects, INT count)
Status DrawArc(const Pen *pen, const RectF &rect, REAL startAngle, REAL sweepAngle)
Status DrawLine(const Pen *pen, const Point &pt1, const Point &pt2)
Status EnumerateMetafile(const Metafile *metafile, const PointF &destPoint, const RectF &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status MeasureCharacterRanges(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, const StringFormat *stringFormat, INT regionCount, Region *regions) const
BOOL IsVisible(const RectF &rect) const
Status DrawCurve(const Pen *pen, const Point *points, INT count, INT offset, INT numberOfSegments, REAL tension)
InterpolationMode GetInterpolationMode() const
Status DrawArc(const Pen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
Status FillRegion(const Brush *brush, const Region *region)
static Graphics * FromHWND(HWND hWnd, BOOL icm)
static Graphics * FromHDC(HDC hdc, HANDLE hDevice)
Status EnumerateMetafile(const Metafile *metafile, const Point *destPoints, INT count, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
BOOL IsVisible(INT x, INT y) const
BOOL IsVisible(const PointF &point) const
Status GetLastStatus() const
Status DrawCachedBitmap(CachedBitmap *cb, INT x, INT y)
Status DrawImage(Image *image, const Point *destPoints, INT count)
Status GetVisibleClipBounds(RectF *rect) const
Status FillRectangle(const Brush *brush, const RectF &rect)
Status SetInterpolationMode(InterpolationMode interpolationMode)
Status EndContainer(GraphicsContainer state)
SmoothingMode GetSmoothingMode() const
Status DrawEllipse(const Pen *pen, const RectF &rect)
Status DrawPie(const Pen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Status FillPolygon(const Brush *brush, const Point *points, INT count)
Status DrawBezier(const Pen *pen, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4)
GraphicsContainer BeginContainer(const Rect &dstrect, const Rect &srcrect, Unit unit)
Status ScaleTransform(REAL sx, REAL sy, MatrixOrder order=MatrixOrderPrepend)
Status DrawImage(Image *image, const RectF &destRect, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit, ImageAttributes *imageAttributes=NULL, DrawImageAbort callback=NULL, VOID *callbackData=NULL)
Status DrawRectangle(const Pen *pen, REAL x, REAL y, REAL width, REAL height)
Status DrawImage(Image *image, const Point &point)
Status FillPie(const Brush *brush, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
Status SetRenderingOrigin(INT x, INT y)
Status FillRectangle(const Brush *brush, REAL x, REAL y, REAL width, REAL height)
PixelOffsetMode GetPixelOffsetMode() const
Status DrawClosedCurve(const Pen *pen, const PointF *points, INT count)
GpGraphics * nativeGraphics
Status DrawEllipse(const Pen *pen, const Rect &rect)
Status FillPie(const Brush *brush, const Rect &rect, REAL startAngle, REAL sweepAngle)
Status SetClip(const Region *region, CombineMode combineMode=CombineModeReplace)
ImageAbort DrawImageAbort
BOOL(CALLBACK * EnumerateMetafileProc)(EmfPlusRecordType, UINT, UINT, const BYTE *, VOID *)
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
GLuint GLuint GLsizei count
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLint GLint GLsizei GLsizei height
GLint GLint GLsizei width
GLenum GLenum GLenum GLenum GLenum scale
GLuint GLsizei GLsizei * length
GLuint GLdouble GLdouble GLint GLint order
GLsizei const GLfloat * points
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean flag
static IPrintDialogCallback callback
static HMODULE MODULEINFO DWORD cb
static const unsigned char metafile[]
png_const_structrp png_const_inforp int * unit
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG x2
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG _In_ LONG y2