1 /**************************************************************************\ 2 * 3 * Copyright (c) 1998-2000, Microsoft Corp. All Rights Reserved. 4 * 5 * Module Name: 6 * 7 * GdiplusFlat.h 8 * 9 * Abstract: 10 * 11 * Flat GDI+ API wrappers - header file 12 * 13 \**************************************************************************/ 14 15 // TODO: this file style needs to be made internally consistent with the way 16 // it handles breaking the long argument lists across multiple lines 17 18 #ifndef _FLATAPI_H 19 #define _FLATAPI_H 20 21 #define WINGDIPAPI __stdcall 22 23 // currently, only C++ wrapper API's force const. 24 25 #define GDIPCONST const 26 27 #ifdef __cplusplus 28 extern "C" { 29 #endif 30 31 #ifndef DCR_USE_NEW_175866 32 33 VOID 34 WINGDIPAPI 35 GdipDisplayPaletteWindowNotify(WindowNotifyEnum notify); 36 37 #endif 38 39 //---------------------------------------------------------------------------- 40 // GraphicsPath methods 41 //---------------------------------------------------------------------------- 42 43 GpStatus WINGDIPAPI 44 GdipCreatePath(GpFillMode brushMode, GpPath **path); 45 46 GpStatus WINGDIPAPI 47 GdipCreatePath2(GDIPCONST GpPointF*, GDIPCONST BYTE*, INT, GpFillMode, 48 GpPath **path); 49 50 GpStatus WINGDIPAPI 51 GdipCreatePath2I(GDIPCONST GpPoint*, GDIPCONST BYTE*, INT, GpFillMode, 52 GpPath **path); 53 54 GpStatus WINGDIPAPI 55 GdipClonePath(GpPath* path, GpPath **clonePath); 56 57 GpStatus WINGDIPAPI 58 GdipDeletePath(GpPath* path); 59 60 GpStatus WINGDIPAPI 61 GdipResetPath(GpPath* path); 62 63 GpStatus WINGDIPAPI 64 GdipGetPointCount(GpPath* path, INT* count); 65 66 GpStatus WINGDIPAPI 67 GdipGetPathTypes(GpPath* path, BYTE* types, INT count); 68 69 GpStatus WINGDIPAPI 70 GdipGetPathPoints(GpPath*, GpPointF* points, INT count); 71 72 GpStatus WINGDIPAPI 73 GdipGetPathPointsI(GpPath*, GpPoint* points, INT count); 74 75 GpStatus WINGDIPAPI 76 GdipGetPathFillMode(GpPath *path, GpFillMode *fillmode); 77 78 GpStatus WINGDIPAPI 79 GdipSetPathFillMode(GpPath *path, GpFillMode fillmode); 80 81 GpStatus WINGDIPAPI 82 GdipGetPathData(GpPath *path, GpPathData* pathData); 83 84 GpStatus WINGDIPAPI 85 GdipStartPathFigure(GpPath *path); 86 87 GpStatus WINGDIPAPI 88 GdipClosePathFigure(GpPath *path); 89 90 GpStatus WINGDIPAPI 91 GdipClosePathFigures(GpPath *path); 92 93 GpStatus WINGDIPAPI 94 GdipSetPathMarker(GpPath* path); 95 96 GpStatus WINGDIPAPI 97 GdipClearPathMarkers(GpPath* path); 98 99 GpStatus WINGDIPAPI 100 GdipReversePath(GpPath* path); 101 102 GpStatus WINGDIPAPI 103 GdipGetPathLastPoint(GpPath* path, GpPointF* lastPoint); 104 105 GpStatus WINGDIPAPI 106 GdipAddPathLine(GpPath *path, REAL x1, REAL y1, REAL x2, REAL y2); 107 108 GpStatus WINGDIPAPI 109 GdipAddPathLine2(GpPath *path, GDIPCONST GpPointF *points, INT count); 110 111 GpStatus WINGDIPAPI 112 GdipAddPathArc(GpPath *path, REAL x, REAL y, REAL width, REAL height, 113 REAL startAngle, REAL sweepAngle); 114 115 GpStatus WINGDIPAPI 116 GdipAddPathBezier(GpPath *path, REAL x1, REAL y1, REAL x2, REAL y2, 117 REAL x3, REAL y3, REAL x4, REAL y4); 118 119 GpStatus WINGDIPAPI 120 GdipAddPathBeziers(GpPath *path, GDIPCONST GpPointF *points, INT count); 121 122 GpStatus WINGDIPAPI 123 GdipAddPathCurve(GpPath *path, GDIPCONST GpPointF *points, INT count); 124 125 GpStatus WINGDIPAPI 126 GdipAddPathCurve2(GpPath *path, GDIPCONST GpPointF *points, INT count, 127 REAL tension); 128 129 GpStatus WINGDIPAPI 130 GdipAddPathCurve3(GpPath *path, GDIPCONST GpPointF *points, INT count, 131 INT offset, INT numberOfSegments, REAL tension); 132 133 GpStatus WINGDIPAPI 134 GdipAddPathClosedCurve(GpPath *path, GDIPCONST GpPointF *points, INT count); 135 136 GpStatus WINGDIPAPI 137 GdipAddPathClosedCurve2(GpPath *path, GDIPCONST GpPointF *points, INT count, 138 REAL tension); 139 140 GpStatus WINGDIPAPI 141 GdipAddPathRectangle(GpPath *path, REAL x, REAL y, REAL width, REAL height); 142 143 GpStatus WINGDIPAPI 144 GdipAddPathRectangles(GpPath *path, GDIPCONST GpRectF *rects, INT count); 145 146 GpStatus WINGDIPAPI 147 GdipAddPathEllipse(GpPath *path, REAL x, REAL y, REAL width, 148 REAL height); 149 150 GpStatus WINGDIPAPI 151 GdipAddPathPie(GpPath *path, REAL x, REAL y, REAL width, REAL height, 152 REAL startAngle, REAL sweepAngle); 153 154 GpStatus WINGDIPAPI 155 GdipAddPathPolygon(GpPath *path, GDIPCONST GpPointF *points, INT count); 156 157 GpStatus WINGDIPAPI 158 GdipAddPathPath(GpPath *path, GDIPCONST GpPath* addingPath, BOOL connect); 159 160 GpStatus WINGDIPAPI 161 GdipAddPathString(GpPath *path, GDIPCONST WCHAR *string, 162 INT length, GDIPCONST GpFontFamily *family, INT style, 163 REAL emSize, GDIPCONST RectF *layoutRect, 164 GDIPCONST GpStringFormat *format); 165 166 GpStatus WINGDIPAPI 167 GdipAddPathStringI(GpPath *path, GDIPCONST WCHAR *string, 168 INT length, GDIPCONST GpFontFamily *family, INT style, 169 REAL emSize, GDIPCONST Rect *layoutRect, 170 GDIPCONST GpStringFormat *format); 171 172 GpStatus WINGDIPAPI 173 GdipAddPathLineI(GpPath *path, INT x1, INT y1, INT x2, INT y2); 174 175 GpStatus WINGDIPAPI 176 GdipAddPathLine2I(GpPath *path, GDIPCONST GpPoint *points, INT count); 177 178 GpStatus WINGDIPAPI 179 GdipAddPathArcI(GpPath *path, INT x, INT y, INT width, INT height, 180 REAL startAngle, REAL sweepAngle); 181 182 GpStatus WINGDIPAPI 183 GdipAddPathBezierI(GpPath *path, INT x1, INT y1, INT x2, INT y2, 184 INT x3, INT y3, INT x4, INT y4); 185 186 GpStatus WINGDIPAPI 187 GdipAddPathBeziersI(GpPath *path, GDIPCONST GpPoint *points, INT count); 188 189 GpStatus WINGDIPAPI 190 GdipAddPathCurveI(GpPath *path, GDIPCONST GpPoint *points, INT count); 191 192 GpStatus WINGDIPAPI 193 GdipAddPathCurve2I(GpPath *path, GDIPCONST GpPoint *points, INT count, 194 REAL tension); 195 196 GpStatus WINGDIPAPI 197 GdipAddPathCurve3I(GpPath *path, GDIPCONST GpPoint *points, INT count, 198 INT offset, INT numberOfSegments, REAL tension); 199 200 GpStatus WINGDIPAPI 201 GdipAddPathClosedCurveI(GpPath *path, GDIPCONST GpPoint *points, INT count); 202 203 GpStatus WINGDIPAPI 204 GdipAddPathClosedCurve2I(GpPath *path, GDIPCONST GpPoint *points, INT count, 205 REAL tension); 206 207 GpStatus WINGDIPAPI 208 GdipAddPathRectangleI(GpPath *path, INT x, INT y, INT width, INT height); 209 210 GpStatus WINGDIPAPI 211 GdipAddPathRectanglesI(GpPath *path, GDIPCONST GpRect *rects, INT count); 212 213 GpStatus WINGDIPAPI 214 GdipAddPathEllipseI(GpPath *path, INT x, INT y, INT width, INT height); 215 216 GpStatus WINGDIPAPI 217 GdipAddPathPieI(GpPath *path, INT x, INT y, INT width, INT height, 218 REAL startAngle, REAL sweepAngle); 219 220 GpStatus WINGDIPAPI 221 GdipAddPathPolygonI(GpPath *path, GDIPCONST GpPoint *points, INT count); 222 223 GpStatus WINGDIPAPI 224 GdipFlattenPath(GpPath *path, GpMatrix* matrix, REAL flatness); 225 226 GpStatus WINGDIPAPI 227 GdipWindingModeOutline( 228 GpPath *path, 229 GpMatrix *matrix, 230 REAL flatness 231 ); 232 233 234 #ifdef DCR_USE_NEW_202903 235 236 GpStatus WINGDIPAPI 237 GdipWidenPath( 238 GpPath *nativePath, 239 GpPen *pen, 240 GpMatrix *matrix, 241 REAL flatness 242 ); 243 244 #else 245 246 GpStatus WINGDIPAPI 247 GdipWidenPathWithMinimumResolutions(GpPath *path, GpPen *pen, REAL minXres, 248 REAL minYres, GpMatrix *matrix, BOOL removeSelftIntersects); 249 250 #endif 251 252 GpStatus WINGDIPAPI 253 GdipWarpPath(GpPath *path, GpMatrix* matrix, 254 GDIPCONST GpPointF *points, INT count, 255 REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, 256 WarpMode warpMode, REAL flatness); 257 258 GpStatus WINGDIPAPI 259 GdipTransformPath(GpPath* path, GpMatrix* matrix); 260 261 GpStatus WINGDIPAPI 262 GdipGetPathWorldBounds(GpPath* path, GpRectF* bounds, GDIPCONST GpMatrix *matrix, 263 GDIPCONST GpPen *pen); 264 265 GpStatus WINGDIPAPI 266 GdipGetPathWorldBoundsI(GpPath* path, GpRect* bounds, GDIPCONST GpMatrix *matrix, 267 GDIPCONST GpPen *pen); 268 269 GpStatus WINGDIPAPI 270 GdipIsVisiblePathPoint(GpPath* path, REAL x, REAL y, 271 GpGraphics *graphics, BOOL *result); 272 273 GpStatus WINGDIPAPI 274 GdipIsVisiblePathPointI(GpPath* path, INT x, INT y, 275 GpGraphics *graphics, BOOL *result); 276 277 GpStatus WINGDIPAPI 278 GdipIsOutlineVisiblePathPoint(GpPath* path, REAL x, REAL y, GpPen *pen, 279 GpGraphics *graphics, BOOL *result); 280 281 GpStatus WINGDIPAPI 282 GdipIsOutlineVisiblePathPointI(GpPath* path, INT x, INT y, GpPen *pen, 283 GpGraphics *graphics, BOOL *result); 284 285 286 //---------------------------------------------------------------------------- 287 // Path Enumeration methods 288 //---------------------------------------------------------------------------- 289 290 GpStatus WINGDIPAPI 291 GdipCreatePathIter(GpPathIterator **iterator, GpPath* path); 292 293 GpStatus WINGDIPAPI 294 GdipDeletePathIter(GpPathIterator *iterator); 295 296 GpStatus WINGDIPAPI 297 GdipPathIterNextSubpath(GpPathIterator* iterator, INT *resultCount, 298 INT* startIndex, INT* endIndex, BOOL* isClosed); 299 300 GpStatus WINGDIPAPI 301 GdipPathIterNextSubpathPath(GpPathIterator* iterator, INT* resultCount, 302 GpPath* path, BOOL* isClosed); 303 304 GpStatus WINGDIPAPI 305 GdipPathIterNextPathType(GpPathIterator* iterator, INT* resultCount, 306 BYTE* pathType, INT* startIndex, INT* endIndex); 307 308 GpStatus WINGDIPAPI 309 GdipPathIterNextMarker(GpPathIterator* iterator, INT *resultCount, 310 INT* startIndex, INT* endIndex); 311 312 GpStatus WINGDIPAPI 313 GdipPathIterNextMarkerPath(GpPathIterator* iterator, INT* resultCount, 314 GpPath* path); 315 316 GpStatus WINGDIPAPI 317 GdipPathIterGetCount(GpPathIterator* iterator, INT* count); 318 319 GpStatus WINGDIPAPI 320 GdipPathIterGetSubpathCount(GpPathIterator* iterator, INT* count); 321 322 GpStatus WINGDIPAPI 323 GdipPathIterIsValid(GpPathIterator* iterator, BOOL* valid); 324 325 GpStatus WINGDIPAPI 326 GdipPathIterHasCurve(GpPathIterator* iterator, BOOL* hasCurve); 327 328 GpStatus WINGDIPAPI 329 GdipPathIterRewind(GpPathIterator* iterator); 330 331 GpStatus WINGDIPAPI 332 GdipPathIterEnumerate(GpPathIterator* iterator, INT* resultCount, 333 GpPointF *points, BYTE *types, INT count); 334 335 GpStatus WINGDIPAPI 336 GdipPathIterCopyData(GpPathIterator* iterator, INT* resultCount, 337 GpPointF* points, BYTE* types, INT startIndex, INT endIndex); 338 339 //---------------------------------------------------------------------------- 340 // Matrix methods 341 //---------------------------------------------------------------------------- 342 343 GpStatus WINGDIPAPI 344 GdipCreateMatrix(GpMatrix **matrix); 345 346 GpStatus WINGDIPAPI 347 GdipCreateMatrix2(REAL m11, REAL m12, REAL m21, REAL m22, REAL dx, 348 REAL dy, GpMatrix **matrix); 349 350 GpStatus WINGDIPAPI 351 GdipCreateMatrix3(GDIPCONST GpRectF *rect, GDIPCONST GpPointF *dstplg, 352 GpMatrix **matrix); 353 354 GpStatus WINGDIPAPI 355 GdipCreateMatrix3I(GDIPCONST GpRect *rect, GDIPCONST GpPoint *dstplg, 356 GpMatrix **matrix); 357 358 GpStatus WINGDIPAPI 359 GdipCloneMatrix(GpMatrix *matrix, GpMatrix **cloneMatrix); 360 361 GpStatus WINGDIPAPI 362 GdipDeleteMatrix(GpMatrix *matrix); 363 364 GpStatus WINGDIPAPI 365 GdipSetMatrixElements(GpMatrix *matrix, REAL m11, REAL m12, REAL m21, REAL m22, 366 REAL dx, REAL dy); 367 368 GpStatus WINGDIPAPI 369 GdipMultiplyMatrix(GpMatrix *matrix, GpMatrix* matrix2, 370 GpMatrixOrder order); 371 372 GpStatus WINGDIPAPI 373 GdipTranslateMatrix(GpMatrix *matrix, REAL offsetX, REAL offsetY, 374 GpMatrixOrder order); 375 376 GpStatus WINGDIPAPI 377 GdipScaleMatrix(GpMatrix *matrix, REAL scaleX, REAL scaleY, 378 GpMatrixOrder order); 379 380 GpStatus WINGDIPAPI 381 GdipRotateMatrix(GpMatrix *matrix, REAL angle, GpMatrixOrder order); 382 383 GpStatus WINGDIPAPI 384 GdipShearMatrix(GpMatrix *matrix, REAL shearX, REAL shearY, 385 GpMatrixOrder order); 386 387 GpStatus WINGDIPAPI 388 GdipInvertMatrix(GpMatrix *matrix); 389 390 GpStatus WINGDIPAPI 391 GdipTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, INT count); 392 393 GpStatus WINGDIPAPI 394 GdipTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, INT count); 395 396 GpStatus WINGDIPAPI 397 GdipVectorTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, 398 INT count); 399 400 GpStatus WINGDIPAPI 401 GdipVectorTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, 402 INT count); 403 404 GpStatus WINGDIPAPI 405 GdipGetMatrixElements(GDIPCONST GpMatrix *matrix, REAL *matrixOut); 406 407 GpStatus WINGDIPAPI 408 GdipIsMatrixInvertible(GDIPCONST GpMatrix *matrix, BOOL *result); 409 410 GpStatus WINGDIPAPI 411 GdipIsMatrixIdentity(GDIPCONST GpMatrix *matrix, BOOL *result); 412 413 GpStatus WINGDIPAPI 414 GdipIsMatrixEqual(GDIPCONST GpMatrix *matrix, GDIPCONST GpMatrix *matrix2, BOOL *result); 415 416 //---------------------------------------------------------------------------- 417 // Region methods 418 //---------------------------------------------------------------------------- 419 420 GpStatus WINGDIPAPI 421 GdipCreateRegion(GpRegion **region); 422 423 GpStatus WINGDIPAPI 424 GdipCreateRegionRect(GDIPCONST GpRectF *rect, GpRegion **region); 425 426 GpStatus WINGDIPAPI 427 GdipCreateRegionRectI(GDIPCONST GpRect *rect, GpRegion **region); 428 429 GpStatus WINGDIPAPI 430 GdipCreateRegionPath(GpPath *path, GpRegion **region); 431 432 GpStatus WINGDIPAPI 433 GdipCreateRegionRgnData(GDIPCONST BYTE *regionData, INT size, GpRegion **region); 434 435 GpStatus WINGDIPAPI 436 GdipCreateRegionHrgn(HRGN hRgn, GpRegion **region); 437 438 GpStatus WINGDIPAPI 439 GdipCloneRegion(GpRegion *region, GpRegion **cloneRegion); 440 441 GpStatus WINGDIPAPI 442 GdipDeleteRegion(GpRegion *region); 443 444 GpStatus WINGDIPAPI 445 GdipSetInfinite(GpRegion *region); 446 447 GpStatus WINGDIPAPI 448 GdipSetEmpty(GpRegion *region); 449 450 GpStatus WINGDIPAPI 451 GdipCombineRegionRect(GpRegion *region, GDIPCONST GpRectF *rect, 452 CombineMode combineMode); 453 454 GpStatus WINGDIPAPI 455 GdipCombineRegionRectI(GpRegion *region, GDIPCONST GpRect *rect, 456 CombineMode combineMode); 457 458 GpStatus WINGDIPAPI 459 GdipCombineRegionPath(GpRegion *region, GpPath *path, CombineMode combineMode); 460 461 GpStatus WINGDIPAPI 462 GdipCombineRegionRegion(GpRegion *region, GpRegion *region2, 463 CombineMode combineMode); 464 465 GpStatus WINGDIPAPI 466 GdipTranslateRegion(GpRegion *region, REAL dx, REAL dy); 467 468 GpStatus WINGDIPAPI 469 GdipTranslateRegionI(GpRegion *region, INT dx, INT dy); 470 471 GpStatus WINGDIPAPI 472 GdipTransformRegion(GpRegion *region, GpMatrix *matrix); 473 474 GpStatus WINGDIPAPI 475 GdipGetRegionBounds(GpRegion *region, GpGraphics *graphics, 476 GpRectF *rect); 477 478 GpStatus WINGDIPAPI 479 GdipGetRegionBoundsI(GpRegion *region, GpGraphics *graphics, 480 GpRect *rect); 481 482 GpStatus WINGDIPAPI 483 GdipGetRegionHRgn(GpRegion *region, GpGraphics *graphics, HRGN *hRgn); 484 485 GpStatus WINGDIPAPI 486 GdipIsEmptyRegion(GpRegion *region, GpGraphics *graphics, 487 BOOL *result); 488 489 GpStatus WINGDIPAPI 490 GdipIsInfiniteRegion(GpRegion *region, GpGraphics *graphics, 491 BOOL *result); 492 493 GpStatus WINGDIPAPI 494 GdipIsEqualRegion(GpRegion *region, GpRegion *region2, 495 GpGraphics *graphics, BOOL *result); 496 497 GpStatus WINGDIPAPI 498 GdipGetRegionDataSize(GpRegion *region, UINT * bufferSize); 499 500 GpStatus WINGDIPAPI 501 GdipGetRegionData(GpRegion *region, BYTE * buffer, UINT bufferSize, UINT * sizeFilled); 502 503 GpStatus WINGDIPAPI 504 GdipIsVisibleRegionPoint(GpRegion *region, REAL x, REAL y, 505 GpGraphics *graphics, BOOL *result); 506 507 GpStatus WINGDIPAPI 508 GdipIsVisibleRegionPointI(GpRegion *region, INT x, INT y, 509 GpGraphics *graphics, BOOL *result); 510 511 GpStatus WINGDIPAPI 512 GdipIsVisibleRegionRect(GpRegion *region, REAL x, REAL y, REAL width, 513 REAL height, GpGraphics *graphics, BOOL *result); 514 515 GpStatus WINGDIPAPI 516 GdipIsVisibleRegionRectI(GpRegion *region, INT x, INT y, INT width, 517 INT height, GpGraphics *graphics, BOOL *result); 518 519 GpStatus WINGDIPAPI 520 GdipGetRegionScansCount(GpRegion *region, UINT* count, GpMatrix* matrix); 521 522 GpStatus WINGDIPAPI 523 GdipGetRegionScans(GpRegion *region, GpRectF* rects, INT* count, GpMatrix* matrix); 524 525 GpStatus WINGDIPAPI 526 GdipGetRegionScansI(GpRegion *region, GpRect* rects, INT* count, GpMatrix* matrix); 527 528 //---------------------------------------------------------------------------- 529 // Brush methods 530 //---------------------------------------------------------------------------- 531 532 GpStatus WINGDIPAPI 533 GdipCloneBrush(GpBrush *brush, GpBrush **cloneBrush); 534 535 GpStatus WINGDIPAPI 536 GdipDeleteBrush(GpBrush *brush); 537 538 GpStatus WINGDIPAPI 539 GdipGetBrushType(GpBrush *brush, GpBrushType *type); 540 541 //---------------------------------------------------------------------------- 542 // Hatch Brush methods 543 //---------------------------------------------------------------------------- 544 545 GpStatus WINGDIPAPI 546 GdipCreateHatchBrush(GpHatchStyle hatchstyle, ARGB forecol, 547 ARGB backcol, GpHatch **brush); 548 549 GpStatus WINGDIPAPI 550 GdipGetHatchStyle(GpHatch *brush, GpHatchStyle *hatchstyle); 551 552 GpStatus WINGDIPAPI 553 GdipGetHatchForegroundColor(GpHatch *brush, ARGB* forecol); 554 555 GpStatus WINGDIPAPI 556 GdipGetHatchBackgroundColor(GpHatch *brush, ARGB* backcol); 557 558 //---------------------------------------------------------------------------- 559 // Texture Brush methods 560 //---------------------------------------------------------------------------- 561 562 GpStatus WINGDIPAPI 563 GdipCreateTexture(GpImage *image, GpWrapMode wrapmode, 564 GpTexture **texture); 565 566 GpStatus WINGDIPAPI 567 GdipCreateTexture2(GpImage *image, GpWrapMode wrapmode, REAL x, 568 REAL y, REAL width, REAL height, GpTexture **texture); 569 570 GpStatus WINGDIPAPI 571 GdipCreateTextureIA(GpImage *image, GDIPCONST GpImageAttributes *imageAttributes, 572 REAL x, REAL y, REAL width, REAL height, 573 GpTexture **texture); 574 575 GpStatus WINGDIPAPI 576 GdipCreateTexture2I(GpImage *image, GpWrapMode wrapmode, INT x, 577 INT y, INT width, INT height, GpTexture **texture); 578 579 GpStatus WINGDIPAPI 580 GdipCreateTextureIAI(GpImage *image, GDIPCONST GpImageAttributes *imageAttributes, 581 INT x, INT y, INT width, INT height, 582 GpTexture **texture); 583 584 585 GpStatus WINGDIPAPI 586 GdipGetTextureTransform(GpTexture *brush, GpMatrix *matrix); 587 588 GpStatus WINGDIPAPI 589 GdipSetTextureTransform(GpTexture *brush, GDIPCONST GpMatrix *matrix); 590 591 GpStatus WINGDIPAPI 592 GdipResetTextureTransform(GpTexture* brush); 593 594 GpStatus WINGDIPAPI 595 GdipMultiplyTextureTransform(GpTexture* brush, GDIPCONST GpMatrix *matrix, 596 GpMatrixOrder order); 597 598 GpStatus WINGDIPAPI 599 GdipTranslateTextureTransform(GpTexture* brush, REAL dx, REAL dy, 600 GpMatrixOrder order); 601 602 GpStatus WINGDIPAPI 603 GdipScaleTextureTransform(GpTexture* brush, REAL sx, REAL sy, 604 GpMatrixOrder order); 605 606 GpStatus WINGDIPAPI 607 GdipRotateTextureTransform(GpTexture* brush, REAL angle, GpMatrixOrder order); 608 609 GpStatus WINGDIPAPI 610 GdipSetTextureWrapMode(GpTexture *brush, GpWrapMode wrapmode); 611 612 GpStatus WINGDIPAPI 613 GdipGetTextureWrapMode(GpTexture *brush, GpWrapMode *wrapmode); 614 615 GpStatus WINGDIPAPI 616 GdipGetTextureImage(GpTexture *brush, GpImage **image); 617 618 //---------------------------------------------------------------------------- 619 // Solid Brush methods 620 //---------------------------------------------------------------------------- 621 622 GpStatus WINGDIPAPI 623 GdipCreateSolidFill(ARGB color, GpSolidFill **brush); 624 625 GpStatus WINGDIPAPI 626 GdipSetSolidFillColor(GpSolidFill *brush, ARGB color); 627 628 GpStatus WINGDIPAPI 629 GdipGetSolidFillColor(GpSolidFill *brush, ARGB *color); 630 631 //---------------------------------------------------------------------------- 632 // LineBrush methods 633 //---------------------------------------------------------------------------- 634 635 GpStatus WINGDIPAPI 636 GdipCreateLineBrush(GDIPCONST GpPointF* point1, 637 GDIPCONST GpPointF* point2, 638 ARGB color1, ARGB color2, 639 GpWrapMode wrapMode, 640 GpLineGradient **lineGradient); 641 642 GpStatus WINGDIPAPI 643 GdipCreateLineBrushI(GDIPCONST GpPoint* point1, 644 GDIPCONST GpPoint* point2, 645 ARGB color1, ARGB color2, 646 GpWrapMode wrapMode, 647 GpLineGradient **lineGradient); 648 649 GpStatus WINGDIPAPI 650 GdipCreateLineBrushFromRect(GDIPCONST GpRectF* rect, 651 ARGB color1, ARGB color2, 652 LinearGradientMode mode, 653 GpWrapMode wrapMode, 654 GpLineGradient **lineGradient); 655 656 GpStatus WINGDIPAPI 657 GdipCreateLineBrushFromRectI(GDIPCONST GpRect* rect, 658 ARGB color1, ARGB color2, 659 LinearGradientMode mode, 660 GpWrapMode wrapMode, 661 GpLineGradient **lineGradient); 662 663 GpStatus WINGDIPAPI 664 GdipCreateLineBrushFromRectWithAngle(GDIPCONST GpRectF* rect, 665 ARGB color1, ARGB color2, 666 REAL angle, 667 BOOL isAngleScalable, 668 GpWrapMode wrapMode, 669 GpLineGradient **lineGradient); 670 671 GpStatus WINGDIPAPI 672 GdipCreateLineBrushFromRectWithAngleI(GDIPCONST GpRect* rect, 673 ARGB color1, ARGB color2, 674 REAL angle, 675 BOOL isAngleScalable, 676 GpWrapMode wrapMode, 677 GpLineGradient **lineGradient); 678 679 GpStatus WINGDIPAPI 680 GdipSetLinePoints(GpLineGradient *brush, 681 GDIPCONST GpPointF* point1, 682 GDIPCONST GpPointF* point2); 683 684 GpStatus WINGDIPAPI 685 GdipSetLinePointsI(GpLineGradient *brush, 686 GDIPCONST GpPoint* point1, 687 GDIPCONST GpPoint* point2); 688 689 GpStatus WINGDIPAPI 690 GdipGetLinePoints(GpLineGradient *brush, GpPointF* points); 691 692 GpStatus WINGDIPAPI 693 GdipGetLinePointsI(GpLineGradient *brush, GpPoint* points); 694 695 GpStatus WINGDIPAPI 696 GdipSetLineColors(GpLineGradient *brush, ARGB color1, ARGB color2); 697 698 GpStatus WINGDIPAPI 699 GdipGetLineColors(GpLineGradient *brush, ARGB* colors); 700 701 GpStatus WINGDIPAPI 702 GdipGetLineRect(GpLineGradient *brush, GpRectF *rect); 703 704 GpStatus WINGDIPAPI 705 GdipGetLineRectI(GpLineGradient *brush, GpRect *rect); 706 707 GpStatus WINGDIPAPI 708 GdipSetLineGammaCorrection(GpLineGradient *brush, BOOL useGammaCorrection); 709 710 GpStatus WINGDIPAPI 711 GdipGetLineGammaCorrection(GpLineGradient *brush, BOOL *useGammaCorrection); 712 713 GpStatus WINGDIPAPI 714 GdipGetLineBlendCount(GpLineGradient *brush, INT *count); 715 716 GpStatus WINGDIPAPI 717 GdipGetLineBlend(GpLineGradient *brush, REAL *blend, REAL* positions, 718 INT count); 719 720 GpStatus WINGDIPAPI 721 GdipSetLineBlend(GpLineGradient *brush, GDIPCONST REAL *blend, 722 GDIPCONST REAL* positions, INT count); 723 724 GpStatus WINGDIPAPI 725 GdipGetLinePresetBlendCount(GpLineGradient *brush, INT *count); 726 727 GpStatus WINGDIPAPI 728 GdipGetLinePresetBlend(GpLineGradient *brush, ARGB *blend, 729 REAL* positions, INT count); 730 731 GpStatus WINGDIPAPI 732 GdipSetLinePresetBlend(GpLineGradient *brush, GDIPCONST ARGB *blend, 733 GDIPCONST REAL* positions, INT count); 734 735 GpStatus WINGDIPAPI 736 GdipSetLineSigmaBlend(GpLineGradient *brush, REAL focus, REAL scale); 737 738 GpStatus WINGDIPAPI 739 GdipSetLineLinearBlend(GpLineGradient *brush, REAL focus, REAL scale); 740 741 GpStatus WINGDIPAPI 742 GdipSetLineWrapMode(GpLineGradient *brush, GpWrapMode wrapmode); 743 744 GpStatus WINGDIPAPI 745 GdipGetLineWrapMode(GpLineGradient *brush, GpWrapMode *wrapmode); 746 747 GpStatus WINGDIPAPI 748 GdipGetLineTransform(GpLineGradient *brush, GpMatrix *matrix); 749 750 GpStatus WINGDIPAPI 751 GdipSetLineTransform(GpLineGradient *brush, GDIPCONST GpMatrix *matrix); 752 753 GpStatus WINGDIPAPI 754 GdipResetLineTransform(GpLineGradient* brush); 755 756 GpStatus WINGDIPAPI 757 GdipMultiplyLineTransform(GpLineGradient* brush, GDIPCONST GpMatrix *matrix, 758 GpMatrixOrder order); 759 760 GpStatus WINGDIPAPI 761 GdipTranslateLineTransform(GpLineGradient* brush, REAL dx, REAL dy, 762 GpMatrixOrder order); 763 764 GpStatus WINGDIPAPI 765 GdipScaleLineTransform(GpLineGradient* brush, REAL sx, REAL sy, 766 GpMatrixOrder order); 767 768 GpStatus WINGDIPAPI 769 GdipRotateLineTransform(GpLineGradient* brush, REAL angle, GpMatrixOrder order); 770 771 //---------------------------------------------------------------------------- 772 // PathGradient Brush 773 //---------------------------------------------------------------------------- 774 775 GpStatus WINGDIPAPI 776 GdipCreatePathGradient(GDIPCONST GpPointF* points, 777 INT count, 778 GpWrapMode wrapMode, 779 GpPathGradient **polyGradient); 780 781 GpStatus WINGDIPAPI 782 GdipCreatePathGradientI(GDIPCONST GpPoint* points, 783 INT count, 784 GpWrapMode wrapMode, 785 GpPathGradient **polyGradient); 786 787 GpStatus WINGDIPAPI 788 GdipCreatePathGradientFromPath(GDIPCONST GpPath* path, 789 GpPathGradient **polyGradient); 790 791 GpStatus WINGDIPAPI 792 GdipGetPathGradientCenterColor( 793 GpPathGradient *brush, ARGB* colors); 794 795 GpStatus WINGDIPAPI 796 GdipSetPathGradientCenterColor( 797 GpPathGradient *brush, ARGB colors); 798 799 GpStatus WINGDIPAPI 800 GdipGetPathGradientSurroundColorsWithCount( 801 GpPathGradient *brush, ARGB* color, INT* count); 802 803 GpStatus WINGDIPAPI 804 GdipSetPathGradientSurroundColorsWithCount( 805 GpPathGradient *brush, 806 GDIPCONST ARGB* color, INT* count); 807 808 GpStatus WINGDIPAPI 809 GdipGetPathGradientPath(GpPathGradient *brush, GpPath *path); 810 811 GpStatus WINGDIPAPI 812 GdipSetPathGradientPath(GpPathGradient *brush, GDIPCONST GpPath *path); 813 814 GpStatus WINGDIPAPI 815 GdipGetPathGradientCenterPoint( 816 GpPathGradient *brush, GpPointF* points); 817 818 GpStatus WINGDIPAPI 819 GdipGetPathGradientCenterPointI( 820 GpPathGradient *brush, GpPoint* points); 821 822 GpStatus WINGDIPAPI 823 GdipSetPathGradientCenterPoint( 824 GpPathGradient *brush, GDIPCONST GpPointF* points); 825 826 GpStatus WINGDIPAPI 827 GdipSetPathGradientCenterPointI( 828 GpPathGradient *brush, GDIPCONST GpPoint* points); 829 830 GpStatus WINGDIPAPI 831 GdipGetPathGradientRect(GpPathGradient *brush, GpRectF *rect); 832 833 GpStatus WINGDIPAPI 834 GdipGetPathGradientRectI(GpPathGradient *brush, GpRect *rect); 835 836 GpStatus WINGDIPAPI 837 GdipGetPathGradientPointCount(GpPathGradient *brush, INT* count); 838 839 GpStatus WINGDIPAPI 840 GdipGetPathGradientSurroundColorCount(GpPathGradient *brush, INT* count); 841 842 GpStatus WINGDIPAPI 843 GdipSetPathGradientGammaCorrection(GpPathGradient *brush, BOOL useGammaCorrection); 844 845 GpStatus WINGDIPAPI 846 GdipGetPathGradientGammaCorrection(GpPathGradient *brush, BOOL *useGammaCorrection); 847 848 GpStatus WINGDIPAPI 849 GdipGetPathGradientBlendCount(GpPathGradient *brush, 850 INT *count); 851 852 GpStatus WINGDIPAPI 853 GdipGetPathGradientBlend(GpPathGradient *brush, 854 REAL *blend, REAL *positions, INT count); 855 856 GpStatus WINGDIPAPI 857 GdipSetPathGradientBlend(GpPathGradient *brush, 858 GDIPCONST REAL *blend, GDIPCONST REAL *positions, INT count); 859 860 GpStatus WINGDIPAPI 861 GdipGetPathGradientPresetBlendCount(GpPathGradient *brush, INT *count); 862 863 GpStatus WINGDIPAPI 864 GdipGetPathGradientPresetBlend(GpPathGradient *brush, ARGB *blend, 865 REAL* positions, INT count); 866 867 GpStatus WINGDIPAPI 868 GdipSetPathGradientPresetBlend(GpPathGradient *brush, GDIPCONST ARGB *blend, 869 GDIPCONST REAL* positions, INT count); 870 871 GpStatus WINGDIPAPI 872 GdipSetPathGradientSigmaBlend(GpPathGradient *brush, REAL focus, REAL scale); 873 874 GpStatus WINGDIPAPI 875 GdipSetPathGradientLinearBlend(GpPathGradient *brush, REAL focus, REAL scale); 876 877 GpStatus WINGDIPAPI 878 GdipGetPathGradientWrapMode(GpPathGradient *brush, 879 GpWrapMode *wrapmode); 880 881 GpStatus WINGDIPAPI 882 GdipSetPathGradientWrapMode(GpPathGradient *brush, 883 GpWrapMode wrapmode); 884 885 GpStatus WINGDIPAPI 886 GdipGetPathGradientTransform(GpPathGradient *brush, 887 GpMatrix *matrix); 888 889 GpStatus WINGDIPAPI 890 GdipSetPathGradientTransform(GpPathGradient *brush, 891 GpMatrix *matrix); 892 893 GpStatus WINGDIPAPI 894 GdipResetPathGradientTransform(GpPathGradient* brush); 895 896 GpStatus WINGDIPAPI 897 GdipMultiplyPathGradientTransform(GpPathGradient* brush, GDIPCONST GpMatrix *matrix, 898 GpMatrixOrder order); 899 900 GpStatus WINGDIPAPI 901 GdipTranslatePathGradientTransform(GpPathGradient* brush, REAL dx, REAL dy, 902 GpMatrixOrder order); 903 904 GpStatus WINGDIPAPI 905 GdipScalePathGradientTransform(GpPathGradient* brush, REAL sx, REAL sy, 906 GpMatrixOrder order); 907 908 GpStatus WINGDIPAPI 909 GdipRotatePathGradientTransform(GpPathGradient* brush, REAL angle, 910 GpMatrixOrder order); 911 912 GpStatus WINGDIPAPI 913 GdipGetPathGradientFocusScales(GpPathGradient *brush, REAL* xScale, REAL* yScale); 914 915 GpStatus WINGDIPAPI 916 GdipSetPathGradientFocusScales(GpPathGradient *brush, REAL xScale, REAL yScale); 917 918 //---------------------------------------------------------------------------- 919 // Pen methods 920 //---------------------------------------------------------------------------- 921 922 GpStatus WINGDIPAPI 923 GdipCreatePen1(ARGB color, REAL width, GpUnit unit, GpPen **pen); 924 925 GpStatus WINGDIPAPI 926 GdipCreatePen2(GpBrush *brush, REAL width, GpUnit unit, 927 GpPen **pen); 928 929 GpStatus WINGDIPAPI 930 GdipClonePen(GpPen *pen, GpPen **clonepen); 931 932 GpStatus WINGDIPAPI 933 GdipDeletePen(GpPen *pen); 934 935 GpStatus WINGDIPAPI 936 GdipSetPenWidth(GpPen *pen, REAL width); 937 938 GpStatus WINGDIPAPI 939 GdipGetPenWidth(GpPen *pen, REAL *width); 940 941 GpStatus WINGDIPAPI 942 GdipSetPenUnit(GpPen *pen, GpUnit unit); 943 944 GpStatus WINGDIPAPI 945 GdipGetPenUnit(GpPen *pen, GpUnit *unit); 946 947 #ifdef DCR_USE_NEW_197819 948 GpStatus WINGDIPAPI 949 GdipSetPenLineCap197819(GpPen *pen, GpLineCap startCap, GpLineCap endCap, 950 GpDashCap dashCap); 951 #else 952 GpStatus WINGDIPAPI 953 GdipSetPenLineCap(GpPen *pen, GpLineCap startCap, GpLineCap endCap, 954 GpLineCap dashCap); 955 #endif // DCR_USE_NEW_197819 956 957 958 GpStatus WINGDIPAPI 959 GdipSetPenStartCap(GpPen *pen, GpLineCap startCap); 960 961 GpStatus WINGDIPAPI 962 GdipSetPenEndCap(GpPen *pen, GpLineCap endCap); 963 964 #ifdef DCR_USE_NEW_197819 965 GpStatus WINGDIPAPI 966 GdipSetPenDashCap197819(GpPen *pen, GpDashCap dashCap); 967 #else 968 GpStatus WINGDIPAPI 969 GdipSetPenDashCap(GpPen *pen, GpLineCap dashCap); 970 #endif // DCR_USE_NEW_197819 971 972 GpStatus WINGDIPAPI 973 GdipGetPenStartCap(GpPen *pen, GpLineCap *startCap); 974 975 GpStatus WINGDIPAPI 976 GdipGetPenEndCap(GpPen *pen, GpLineCap *endCap); 977 978 #ifdef DCR_USE_NEW_197819 979 GpStatus WINGDIPAPI 980 GdipGetPenDashCap197819(GpPen *pen, GpDashCap *dashCap); 981 #else 982 GpStatus WINGDIPAPI 983 GdipGetPenDashCap(GpPen *pen, GpLineCap *dashCap); 984 #endif // DCR_USE_NEW_197819 985 986 GpStatus WINGDIPAPI 987 GdipSetPenLineJoin(GpPen *pen, GpLineJoin lineJoin); 988 989 GpStatus WINGDIPAPI 990 GdipGetPenLineJoin(GpPen *pen, GpLineJoin *lineJoin); 991 992 GpStatus WINGDIPAPI 993 GdipSetPenCustomStartCap(GpPen *pen, GpCustomLineCap* customCap); 994 995 GpStatus WINGDIPAPI 996 GdipGetPenCustomStartCap(GpPen *pen, GpCustomLineCap** customCap); 997 998 GpStatus WINGDIPAPI 999 GdipSetPenCustomEndCap(GpPen *pen, GpCustomLineCap* customCap); 1000 1001 GpStatus WINGDIPAPI 1002 GdipGetPenCustomEndCap(GpPen *pen, GpCustomLineCap** customCap); 1003 1004 GpStatus WINGDIPAPI 1005 GdipSetPenMiterLimit(GpPen *pen, REAL miterLimit); 1006 1007 GpStatus WINGDIPAPI 1008 GdipGetPenMiterLimit(GpPen *pen, REAL *miterLimit); 1009 1010 GpStatus WINGDIPAPI 1011 GdipSetPenMode(GpPen *pen, GpPenAlignment penMode); 1012 1013 GpStatus WINGDIPAPI 1014 GdipGetPenMode(GpPen *pen, GpPenAlignment *penMode); 1015 1016 GpStatus WINGDIPAPI 1017 GdipSetPenTransform(GpPen *pen, GpMatrix *matrix); 1018 1019 GpStatus WINGDIPAPI 1020 GdipGetPenTransform(GpPen *pen, GpMatrix *matrix); 1021 1022 GpStatus WINGDIPAPI 1023 GdipResetPenTransform(GpPen *pen); 1024 1025 GpStatus WINGDIPAPI 1026 GdipMultiplyPenTransform(GpPen *pen, GDIPCONST GpMatrix *matrix, 1027 GpMatrixOrder order); 1028 1029 GpStatus WINGDIPAPI 1030 GdipTranslatePenTransform(GpPen *pen, REAL dx, REAL dy, 1031 GpMatrixOrder order); 1032 1033 GpStatus WINGDIPAPI 1034 GdipScalePenTransform(GpPen *pen, REAL sx, REAL sy, 1035 GpMatrixOrder order); 1036 1037 GpStatus WINGDIPAPI 1038 GdipRotatePenTransform(GpPen *pen, REAL angle, GpMatrixOrder order); 1039 1040 GpStatus WINGDIPAPI 1041 GdipSetPenColor(GpPen *pen, ARGB argb); 1042 1043 GpStatus WINGDIPAPI 1044 GdipGetPenColor(GpPen *pen, ARGB *argb); 1045 1046 GpStatus WINGDIPAPI 1047 GdipSetPenBrushFill(GpPen *pen, GpBrush *brush); 1048 1049 GpStatus WINGDIPAPI 1050 GdipGetPenBrushFill(GpPen *pen, GpBrush **brush); 1051 1052 GpStatus WINGDIPAPI 1053 GdipGetPenFillType(GpPen *pen, GpPenType* type); 1054 1055 GpStatus WINGDIPAPI 1056 GdipGetPenDashStyle(GpPen *pen, GpDashStyle *dashstyle); 1057 1058 GpStatus WINGDIPAPI 1059 GdipSetPenDashStyle(GpPen *pen, GpDashStyle dashstyle); 1060 1061 GpStatus WINGDIPAPI 1062 GdipGetPenDashOffset(GpPen *pen, REAL *offset); 1063 1064 GpStatus WINGDIPAPI 1065 GdipSetPenDashOffset(GpPen *pen, REAL offset); 1066 1067 GpStatus WINGDIPAPI 1068 GdipGetPenDashCount(GpPen *pen, INT *count); 1069 1070 GpStatus WINGDIPAPI 1071 GdipSetPenDashArray(GpPen *pen, GDIPCONST REAL *dash, INT count); 1072 1073 GpStatus WINGDIPAPI 1074 GdipGetPenDashArray(GpPen *pen, REAL *dash, INT count); 1075 1076 GpStatus WINGDIPAPI 1077 GdipGetPenCompoundCount(GpPen *pen, INT *count); 1078 1079 GpStatus WINGDIPAPI 1080 GdipSetPenCompoundArray(GpPen *pen, GDIPCONST REAL *dash, INT count); 1081 1082 GpStatus WINGDIPAPI 1083 GdipGetPenCompoundArray(GpPen *pen, REAL *dash, INT count); 1084 1085 //---------------------------------------------------------------------------- 1086 // CustomLineCap methods 1087 //---------------------------------------------------------------------------- 1088 1089 GpStatus WINGDIPAPI 1090 GdipCreateCustomLineCap(GpPath* fillPath, GpPath* strokePath, 1091 GpLineCap baseCap, REAL baseInset, GpCustomLineCap **customCap); 1092 1093 GpStatus WINGDIPAPI 1094 GdipDeleteCustomLineCap(GpCustomLineCap* customCap); 1095 1096 GpStatus WINGDIPAPI 1097 GdipCloneCustomLineCap(GpCustomLineCap* customCap, 1098 GpCustomLineCap** clonedCap); 1099 1100 GpStatus WINGDIPAPI 1101 GdipGetCustomLineCapType(GpCustomLineCap* customCap, 1102 CustomLineCapType* capType); 1103 1104 GpStatus WINGDIPAPI 1105 GdipSetCustomLineCapStrokeCaps(GpCustomLineCap* customCap, 1106 GpLineCap startCap, GpLineCap endCap); 1107 1108 GpStatus WINGDIPAPI 1109 GdipGetCustomLineCapStrokeCaps(GpCustomLineCap* customCap, 1110 GpLineCap* startCap, GpLineCap* endCap); 1111 1112 GpStatus WINGDIPAPI 1113 GdipSetCustomLineCapStrokeJoin(GpCustomLineCap* customCap, GpLineJoin lineJoin); 1114 1115 GpStatus WINGDIPAPI 1116 GdipGetCustomLineCapStrokeJoin(GpCustomLineCap* customCap, GpLineJoin* lineJoin); 1117 1118 GpStatus WINGDIPAPI 1119 GdipSetCustomLineCapBaseCap(GpCustomLineCap* customCap, GpLineCap baseCap); 1120 1121 GpStatus WINGDIPAPI 1122 GdipGetCustomLineCapBaseCap(GpCustomLineCap* customCap, GpLineCap* baseCap); 1123 1124 GpStatus WINGDIPAPI 1125 GdipSetCustomLineCapBaseInset(GpCustomLineCap* customCap, REAL inset); 1126 1127 GpStatus WINGDIPAPI 1128 GdipGetCustomLineCapBaseInset(GpCustomLineCap* customCap, REAL* inset); 1129 1130 GpStatus WINGDIPAPI 1131 GdipSetCustomLineCapWidthScale(GpCustomLineCap* customCap, REAL widthScale); 1132 1133 GpStatus WINGDIPAPI 1134 GdipGetCustomLineCapWidthScale(GpCustomLineCap* customCap, REAL* widthScale); 1135 1136 //---------------------------------------------------------------------------- 1137 // AdjustableArrowCap methods 1138 //---------------------------------------------------------------------------- 1139 1140 GpStatus WINGDIPAPI 1141 GdipCreateAdjustableArrowCap(REAL height, REAL width, BOOL isFilled, 1142 GpAdjustableArrowCap **cap); 1143 1144 GpStatus WINGDIPAPI 1145 GdipSetAdjustableArrowCapHeight(GpAdjustableArrowCap* cap, REAL height); 1146 1147 GpStatus WINGDIPAPI 1148 GdipGetAdjustableArrowCapHeight(GpAdjustableArrowCap* cap, REAL* height); 1149 1150 GpStatus WINGDIPAPI 1151 GdipSetAdjustableArrowCapWidth(GpAdjustableArrowCap* cap, REAL width); 1152 1153 GpStatus WINGDIPAPI 1154 GdipGetAdjustableArrowCapWidth(GpAdjustableArrowCap* cap, REAL* width); 1155 1156 GpStatus WINGDIPAPI 1157 GdipSetAdjustableArrowCapMiddleInset(GpAdjustableArrowCap* cap, REAL middleInset); 1158 1159 GpStatus WINGDIPAPI 1160 GdipGetAdjustableArrowCapMiddleInset(GpAdjustableArrowCap* cap, REAL* middleInset); 1161 1162 GpStatus WINGDIPAPI 1163 GdipSetAdjustableArrowCapFillState(GpAdjustableArrowCap* cap, BOOL fillState); 1164 1165 GpStatus WINGDIPAPI 1166 GdipGetAdjustableArrowCapFillState(GpAdjustableArrowCap* cap, BOOL* fillState); 1167 1168 //---------------------------------------------------------------------------- 1169 // Image methods 1170 //---------------------------------------------------------------------------- 1171 1172 GpStatus WINGDIPAPI 1173 GdipLoadImageFromStream(IStream* stream, GpImage **image); 1174 1175 GpStatus WINGDIPAPI 1176 GdipLoadImageFromFile(GDIPCONST WCHAR* filename, GpImage **image); 1177 1178 GpStatus WINGDIPAPI 1179 GdipLoadImageFromStreamICM(IStream* stream, GpImage **image); 1180 1181 GpStatus WINGDIPAPI 1182 GdipLoadImageFromFileICM(GDIPCONST WCHAR* filename, GpImage **image); 1183 1184 GpStatus WINGDIPAPI 1185 GdipCloneImage(GpImage *image, GpImage **cloneImage); 1186 1187 GpStatus WINGDIPAPI 1188 GdipDisposeImage(GpImage *image); 1189 1190 GpStatus WINGDIPAPI 1191 GdipSaveImageToFile(GpImage *image, GDIPCONST WCHAR* filename, 1192 GDIPCONST CLSID* clsidEncoder, GDIPCONST EncoderParameters* encoderParams); 1193 1194 GpStatus WINGDIPAPI 1195 GdipSaveImageToStream(GpImage *image, IStream* stream, 1196 GDIPCONST CLSID* clsidEncoder, GDIPCONST EncoderParameters* encoderParams); 1197 1198 GpStatus WINGDIPAPI 1199 GdipSaveAdd(GpImage *image, GDIPCONST EncoderParameters* encoderParams); 1200 1201 GpStatus WINGDIPAPI 1202 GdipSaveAddImage(GpImage *image, GpImage* newImage, 1203 GDIPCONST EncoderParameters* encoderParams); 1204 1205 GpStatus WINGDIPAPI 1206 GdipGetImageGraphicsContext(GpImage *image, GpGraphics **graphics); 1207 1208 GpStatus WINGDIPAPI 1209 GdipGetImageBounds(GpImage *image, GpRectF *srcRect, GpUnit *srcUnit); 1210 1211 GpStatus WINGDIPAPI 1212 GdipGetImageDimension(GpImage *image, REAL *width, REAL *height); 1213 1214 GpStatus WINGDIPAPI 1215 GdipGetImageType(GpImage *image, ImageType *type); 1216 1217 GpStatus WINGDIPAPI 1218 GdipGetImageWidth(GpImage *image, UINT *width); 1219 1220 GpStatus WINGDIPAPI 1221 GdipGetImageHeight(GpImage *image, UINT *height); 1222 1223 GpStatus WINGDIPAPI 1224 GdipGetImageHorizontalResolution(GpImage *image, REAL *resolution); 1225 1226 GpStatus WINGDIPAPI 1227 GdipGetImageVerticalResolution(GpImage *image, REAL *resolution); 1228 1229 GpStatus WINGDIPAPI 1230 GdipGetImageFlags(GpImage *image, UINT *flags); 1231 1232 GpStatus WINGDIPAPI 1233 GdipGetImageRawFormat(GpImage *image, GUID *format); 1234 1235 GpStatus WINGDIPAPI 1236 GdipGetImagePixelFormat(GpImage *image, PixelFormat *format); 1237 1238 GpStatus WINGDIPAPI 1239 GdipGetImageThumbnail(GpImage *image, UINT thumbWidth, UINT thumbHeight, 1240 GpImage **thumbImage, 1241 GetThumbnailImageAbort callback, VOID * callbackData); 1242 1243 GpStatus WINGDIPAPI 1244 GdipGetEncoderParameterListSize(GpImage *image, GDIPCONST CLSID* clsidEncoder, 1245 UINT* size); 1246 1247 GpStatus WINGDIPAPI 1248 GdipGetEncoderParameterList(GpImage *image, GDIPCONST CLSID* clsidEncoder, 1249 UINT size, EncoderParameters* buffer); 1250 1251 GpStatus WINGDIPAPI 1252 GdipImageGetFrameDimensionsCount(GpImage* image, UINT* count); 1253 1254 GpStatus WINGDIPAPI 1255 GdipImageGetFrameDimensionsList(GpImage* image, GUID* dimensionIDs, UINT count); 1256 1257 GpStatus WINGDIPAPI 1258 GdipImageGetFrameCount(GpImage *image, GDIPCONST GUID* dimensionID, UINT* count); 1259 1260 GpStatus WINGDIPAPI 1261 GdipImageSelectActiveFrame(GpImage *image, GDIPCONST GUID* dimensionID, 1262 UINT frameIndex); 1263 1264 GpStatus WINGDIPAPI 1265 GdipImageRotateFlip(GpImage *image, RotateFlipType rfType); 1266 1267 GpStatus WINGDIPAPI 1268 GdipGetImagePalette(GpImage *image, ColorPalette *palette, INT size); 1269 1270 GpStatus WINGDIPAPI 1271 GdipSetImagePalette(GpImage *image, GDIPCONST ColorPalette *palette); 1272 1273 GpStatus WINGDIPAPI 1274 GdipGetImagePaletteSize(GpImage *image, INT *size); 1275 1276 GpStatus WINGDIPAPI 1277 GdipGetPropertyCount(GpImage *image, UINT* numOfProperty); 1278 1279 GpStatus WINGDIPAPI 1280 GdipGetPropertyIdList(GpImage *image, UINT numOfProperty, PROPID* list); 1281 1282 GpStatus WINGDIPAPI 1283 GdipGetPropertyItemSize(GpImage *image, PROPID propId, UINT* size); 1284 1285 GpStatus WINGDIPAPI 1286 GdipGetPropertyItem(GpImage *image, PROPID propId,UINT propSize, 1287 PropertyItem* buffer); 1288 1289 GpStatus WINGDIPAPI 1290 GdipGetPropertySize(GpImage *image, UINT* totalBufferSize, UINT* numProperties); 1291 1292 GpStatus WINGDIPAPI 1293 GdipGetAllPropertyItems(GpImage *image, UINT totalBufferSize, 1294 UINT numProperties, PropertyItem* allItems); 1295 1296 GpStatus WINGDIPAPI 1297 GdipRemovePropertyItem(GpImage *image, PROPID propId); 1298 1299 GpStatus WINGDIPAPI 1300 GdipSetPropertyItem(GpImage *image, GDIPCONST PropertyItem* item); 1301 1302 GpStatus WINGDIPAPI 1303 GdipImageForceValidation(GpImage *image); 1304 1305 GpStatus WINGDIPAPI 1306 GdipGetImageLayout(GpImage *image, ImageLayout* layout); 1307 1308 GpStatus WINGDIPAPI 1309 GdipSetImageLayout(GpImage *image, GDIPCONST ImageLayout layout); 1310 1311 //---------------------------------------------------------------------------- 1312 // Bitmap methods 1313 //---------------------------------------------------------------------------- 1314 1315 GpStatus WINGDIPAPI 1316 GdipCreateBitmapFromStream(IStream* stream, GpBitmap **bitmap); 1317 1318 GpStatus WINGDIPAPI 1319 GdipCreateBitmapFromFile(GDIPCONST WCHAR* filename, GpBitmap **bitmap); 1320 1321 GpStatus WINGDIPAPI 1322 GdipCreateBitmapFromStreamICM(IStream* stream, GpBitmap **bitmap); 1323 1324 GpStatus WINGDIPAPI 1325 GdipCreateBitmapFromFileICM(GDIPCONST WCHAR* filename, GpBitmap **bitmap); 1326 1327 GpStatus WINGDIPAPI 1328 GdipCreateBitmapFromScan0(INT width, 1329 INT height, 1330 INT stride, 1331 PixelFormat format, 1332 BYTE* scan0, 1333 GpBitmap** bitmap); 1334 1335 GpStatus WINGDIPAPI 1336 GdipCreateBitmapFromGraphics(INT width, 1337 INT height, 1338 GpGraphics* target, 1339 GpBitmap** bitmap); 1340 1341 GpStatus WINGDIPAPI 1342 GdipCreateBitmapFromDirectDrawSurface(IDirectDrawSurface7* surface, 1343 GpBitmap** bitmap); 1344 1345 GpStatus WINGDIPAPI 1346 GdipCreateBitmapFromGdiDib(GDIPCONST BITMAPINFO* gdiBitmapInfo, 1347 VOID* gdiBitmapData, 1348 GpBitmap** bitmap); 1349 1350 GpStatus WINGDIPAPI 1351 GdipCreateBitmapFromHBITMAP(HBITMAP hbm, 1352 HPALETTE hpal, 1353 GpBitmap** bitmap); 1354 1355 GpStatus WINGDIPAPI 1356 GdipCreateHBITMAPFromBitmap(GpBitmap* bitmap, 1357 HBITMAP* hbmReturn, 1358 ARGB background); 1359 1360 GpStatus WINGDIPAPI 1361 GdipCreateBitmapFromHICON(HICON hicon, 1362 GpBitmap** bitmap); 1363 1364 GpStatus WINGDIPAPI 1365 GdipCreateHICONFromBitmap(GpBitmap* bitmap, 1366 HICON* hbmReturn); 1367 1368 GpStatus WINGDIPAPI 1369 GdipCreateBitmapFromResource(HINSTANCE hInstance, 1370 GDIPCONST WCHAR* lpBitmapName, 1371 GpBitmap** bitmap); 1372 1373 GpStatus WINGDIPAPI 1374 GdipCloneBitmapArea(REAL x, REAL y, REAL width, REAL height, 1375 PixelFormat format, 1376 GpBitmap *srcBitmap, 1377 GpBitmap **dstBitmap); 1378 1379 GpStatus WINGDIPAPI 1380 GdipCloneBitmapAreaI(INT x, 1381 INT y, 1382 INT width, 1383 INT height, 1384 PixelFormat format, 1385 GpBitmap *srcBitmap, 1386 GpBitmap **dstBitmap); 1387 1388 GpStatus WINGDIPAPI 1389 GdipBitmapLockBits(GpBitmap* bitmap, 1390 GDIPCONST GpRect* rect, 1391 UINT flags, 1392 PixelFormat format, 1393 BitmapData* lockedBitmapData); 1394 1395 GpStatus WINGDIPAPI 1396 GdipBitmapUnlockBits(GpBitmap* bitmap, 1397 BitmapData* lockedBitmapData); 1398 1399 GpStatus WINGDIPAPI 1400 GdipBitmapGetPixel(GpBitmap* bitmap, INT x, INT y, ARGB *color); 1401 1402 GpStatus WINGDIPAPI 1403 GdipBitmapSetPixel(GpBitmap* bitmap, INT x, INT y, ARGB color); 1404 1405 GpStatus WINGDIPAPI 1406 GdipBitmapSetResolution(GpBitmap* bitmap, REAL xdpi, REAL ydpi); 1407 1408 //---------------------------------------------------------------------------- 1409 // ImageAttributes methods 1410 //---------------------------------------------------------------------------- 1411 1412 GpStatus WINGDIPAPI 1413 GdipCreateImageAttributes(GpImageAttributes **imageattr); 1414 1415 GpStatus WINGDIPAPI 1416 GdipCloneImageAttributes(GDIPCONST GpImageAttributes *imageattr, 1417 GpImageAttributes **cloneImageattr); 1418 1419 GpStatus WINGDIPAPI 1420 GdipDisposeImageAttributes(GpImageAttributes *imageattr); 1421 1422 GpStatus WINGDIPAPI 1423 GdipSetImageAttributesToIdentity(GpImageAttributes *imageattr, 1424 ColorAdjustType type); 1425 GpStatus WINGDIPAPI 1426 GdipResetImageAttributes(GpImageAttributes *imageattr, 1427 ColorAdjustType type); 1428 1429 GpStatus WINGDIPAPI 1430 GdipSetImageAttributesColorMatrix(GpImageAttributes *imageattr, 1431 ColorAdjustType type, 1432 BOOL enableFlag, 1433 GDIPCONST ColorMatrix* colorMatrix, 1434 GDIPCONST ColorMatrix* grayMatrix, 1435 ColorMatrixFlags flags); 1436 1437 GpStatus WINGDIPAPI 1438 GdipSetImageAttributesThreshold(GpImageAttributes *imageattr, 1439 ColorAdjustType type, 1440 BOOL enableFlag, 1441 REAL threshold); 1442 1443 GpStatus WINGDIPAPI 1444 GdipSetImageAttributesGamma(GpImageAttributes *imageattr, 1445 ColorAdjustType type, 1446 BOOL enableFlag, 1447 REAL gamma); 1448 1449 GpStatus WINGDIPAPI 1450 GdipSetImageAttributesNoOp(GpImageAttributes *imageattr, 1451 ColorAdjustType type, 1452 BOOL enableFlag); 1453 1454 GpStatus WINGDIPAPI 1455 GdipSetImageAttributesColorKeys(GpImageAttributes *imageattr, 1456 ColorAdjustType type, 1457 BOOL enableFlag, 1458 ARGB colorLow, 1459 ARGB colorHigh); 1460 1461 GpStatus WINGDIPAPI 1462 GdipSetImageAttributesOutputChannel(GpImageAttributes *imageattr, 1463 ColorAdjustType type, 1464 BOOL enableFlag, 1465 ColorChannelFlags channelFlags); 1466 1467 GpStatus WINGDIPAPI 1468 GdipSetImageAttributesOutputChannelColorProfile(GpImageAttributes *imageattr, 1469 ColorAdjustType type, 1470 BOOL enableFlag, 1471 GDIPCONST WCHAR *colorProfileFilename); 1472 1473 GpStatus WINGDIPAPI 1474 GdipSetImageAttributesRemapTable(GpImageAttributes *imageattr, 1475 ColorAdjustType type, 1476 BOOL enableFlag, 1477 UINT mapSize, 1478 GDIPCONST ColorMap *map); 1479 GpStatus WINGDIPAPI 1480 GdipSetImageAttributesWrapMode( 1481 GpImageAttributes *imageAttr, 1482 WrapMode wrap, 1483 ARGB argb, 1484 BOOL clamp 1485 ); 1486 1487 GpStatus WINGDIPAPI 1488 GdipSetImageAttributesICMMode( 1489 GpImageAttributes *imageAttr, 1490 BOOL on 1491 ); 1492 1493 GpStatus WINGDIPAPI 1494 GdipGetImageAttributesAdjustedPalette( 1495 GpImageAttributes *imageAttr, 1496 ColorPalette * colorPalette, 1497 ColorAdjustType colorAdjustType 1498 ); 1499 1500 //---------------------------------------------------------------------------- 1501 // Graphics methods 1502 //---------------------------------------------------------------------------- 1503 1504 GpStatus WINGDIPAPI 1505 GdipFlush(GpGraphics *graphics, GpFlushIntention intention); 1506 1507 GpStatus WINGDIPAPI 1508 GdipCreateFromHDC(HDC hdc, GpGraphics **graphics); 1509 1510 GpStatus WINGDIPAPI 1511 GdipCreateFromHDC2(HDC hdc, HANDLE hDevice, GpGraphics **graphics); 1512 1513 GpStatus WINGDIPAPI 1514 GdipCreateFromHWND(HWND hwnd, GpGraphics **graphics); 1515 1516 GpStatus WINGDIPAPI 1517 GdipCreateFromHWNDICM(HWND hwnd, GpGraphics **graphics); 1518 1519 GpStatus WINGDIPAPI 1520 GdipDeleteGraphics(GpGraphics *graphics); 1521 1522 GpStatus WINGDIPAPI 1523 GdipGetDC(GpGraphics* graphics, HDC * hdc); 1524 1525 GpStatus WINGDIPAPI 1526 GdipReleaseDC(GpGraphics* graphics, HDC hdc); 1527 1528 GpStatus WINGDIPAPI 1529 GdipSetCompositingMode(GpGraphics *graphics, CompositingMode compositingMode); 1530 1531 GpStatus WINGDIPAPI 1532 GdipGetCompositingMode(GpGraphics *graphics, CompositingMode *compositingMode); 1533 1534 GpStatus WINGDIPAPI 1535 GdipSetRenderingOrigin(GpGraphics *graphics, INT x, INT y); 1536 1537 GpStatus WINGDIPAPI 1538 GdipGetRenderingOrigin(GpGraphics *graphics, INT *x, INT *y); 1539 1540 GpStatus WINGDIPAPI 1541 GdipSetCompositingQuality(GpGraphics *graphics, CompositingQuality compositingQuality); 1542 1543 GpStatus WINGDIPAPI 1544 GdipGetCompositingQuality(GpGraphics *graphics, CompositingQuality *compositingQuality); 1545 1546 GpStatus WINGDIPAPI 1547 GdipSetSmoothingMode(GpGraphics *graphics, SmoothingMode smoothingMode); 1548 1549 GpStatus WINGDIPAPI 1550 GdipGetSmoothingMode(GpGraphics *graphics, SmoothingMode *smoothingMode); 1551 1552 GpStatus WINGDIPAPI 1553 GdipSetPixelOffsetMode(GpGraphics* graphics, PixelOffsetMode pixelOffsetMode); 1554 1555 GpStatus WINGDIPAPI 1556 GdipGetPixelOffsetMode(GpGraphics *graphics, PixelOffsetMode *pixelOffsetMode); 1557 1558 GpStatus WINGDIPAPI 1559 GdipSetTextRenderingHint(GpGraphics *graphics, TextRenderingHint mode); 1560 1561 GpStatus WINGDIPAPI 1562 GdipGetTextRenderingHint(GpGraphics *graphics, TextRenderingHint *mode); 1563 1564 #ifdef DCR_USE_NEW_188922 1565 GpStatus WINGDIPAPI 1566 GdipSetTextContrast(GpGraphics *graphics, UINT contrast); 1567 1568 GpStatus WINGDIPAPI 1569 GdipGetTextContrast(GpGraphics *graphics, UINT * contrast); 1570 #else 1571 GpStatus WINGDIPAPI 1572 GdipSetTextGammaValue(GpGraphics *graphics, UINT gammaValue); 1573 1574 GpStatus WINGDIPAPI 1575 GdipGetTextGammaValue(GpGraphics *graphics, UINT * gammaValue); 1576 #endif // DCR_USE_NEW_188922 1577 1578 1579 GpStatus WINGDIPAPI 1580 GdipSetInterpolationMode(GpGraphics *graphics, InterpolationMode interpolationMode); 1581 1582 GpStatus WINGDIPAPI 1583 GdipGetInterpolationMode(GpGraphics *graphics, InterpolationMode *interpolationMode); 1584 1585 GpStatus WINGDIPAPI 1586 GdipSetWorldTransform(GpGraphics *graphics, GpMatrix *matrix); 1587 1588 GpStatus WINGDIPAPI 1589 GdipResetWorldTransform(GpGraphics *graphics); 1590 1591 GpStatus WINGDIPAPI 1592 GdipMultiplyWorldTransform(GpGraphics *graphics, GDIPCONST GpMatrix *matrix, 1593 GpMatrixOrder order); 1594 1595 GpStatus WINGDIPAPI 1596 GdipTranslateWorldTransform(GpGraphics *graphics, REAL dx, REAL dy, 1597 GpMatrixOrder order); 1598 1599 GpStatus WINGDIPAPI 1600 GdipScaleWorldTransform(GpGraphics *graphics, REAL sx, REAL sy, 1601 GpMatrixOrder order); 1602 1603 GpStatus WINGDIPAPI 1604 GdipRotateWorldTransform(GpGraphics *graphics, REAL angle, GpMatrixOrder order); 1605 1606 GpStatus WINGDIPAPI 1607 GdipGetWorldTransform(GpGraphics *graphics, GpMatrix *matrix); 1608 1609 GpStatus WINGDIPAPI 1610 GdipResetPageTransform(GpGraphics *graphics); 1611 1612 GpStatus WINGDIPAPI 1613 GdipGetPageUnit(GpGraphics *graphics, GpUnit *unit); 1614 1615 GpStatus WINGDIPAPI 1616 GdipGetPageScale(GpGraphics *graphics, REAL *scale); 1617 1618 GpStatus WINGDIPAPI 1619 GdipSetPageUnit(GpGraphics *graphics, GpUnit unit); 1620 1621 GpStatus WINGDIPAPI 1622 GdipSetPageScale(GpGraphics *graphics, REAL scale); 1623 1624 GpStatus WINGDIPAPI 1625 GdipGetDpiX(GpGraphics *graphics, REAL* dpi); 1626 1627 GpStatus WINGDIPAPI 1628 GdipGetDpiY(GpGraphics *graphics, REAL* dpi); 1629 1630 GpStatus WINGDIPAPI 1631 GdipTransformPoints(GpGraphics *graphics, GpCoordinateSpace destSpace, 1632 GpCoordinateSpace srcSpace, GpPointF *points, 1633 INT count); 1634 1635 GpStatus WINGDIPAPI 1636 GdipTransformPointsI(GpGraphics *graphics, GpCoordinateSpace destSpace, 1637 GpCoordinateSpace srcSpace, GpPoint *points, 1638 INT count); 1639 1640 GpStatus WINGDIPAPI 1641 GdipGetNearestColor(GpGraphics *graphics, ARGB* argb); 1642 1643 // Create the Win9x Halftone Palette (even on NT) with correct Desktop colors 1644 HPALETTE WINGDIPAPI 1645 GdipCreateHalftonePalette(); 1646 1647 GpStatus WINGDIPAPI 1648 GdipDrawLine(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1, 1649 REAL x2, REAL y2); 1650 1651 GpStatus WINGDIPAPI 1652 GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, 1653 INT x2, INT y2); 1654 1655 GpStatus WINGDIPAPI 1656 GdipDrawLines(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, 1657 INT count); 1658 1659 GpStatus WINGDIPAPI 1660 GdipDrawLinesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, 1661 INT count); 1662 1663 GpStatus WINGDIPAPI 1664 GdipDrawArc(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, 1665 REAL width, REAL height, REAL startAngle, REAL sweepAngle); 1666 1667 GpStatus WINGDIPAPI 1668 GdipDrawArcI(GpGraphics *graphics, GpPen *pen, INT x, INT y, 1669 INT width, INT height, REAL startAngle, REAL sweepAngle); 1670 1671 GpStatus WINGDIPAPI 1672 GdipDrawBezier(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1, 1673 REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4); 1674 1675 GpStatus WINGDIPAPI 1676 GdipDrawBezierI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, 1677 INT x2, INT y2, INT x3, INT y3, INT x4, INT y4); 1678 1679 GpStatus WINGDIPAPI 1680 GdipDrawBeziers(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, 1681 INT count); 1682 1683 GpStatus WINGDIPAPI 1684 GdipDrawBeziersI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, 1685 INT count); 1686 1687 GpStatus WINGDIPAPI 1688 GdipDrawRectangle(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, 1689 REAL width, REAL height); 1690 1691 GpStatus WINGDIPAPI 1692 GdipDrawRectangleI(GpGraphics *graphics, GpPen *pen, INT x, INT y, 1693 INT width, INT height); 1694 1695 GpStatus WINGDIPAPI 1696 GdipDrawRectangles(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRectF *rects, 1697 INT count); 1698 1699 GpStatus WINGDIPAPI 1700 GdipDrawRectanglesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRect *rects, 1701 INT count); 1702 1703 GpStatus WINGDIPAPI 1704 GdipDrawEllipse(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, 1705 REAL width, REAL height); 1706 1707 GpStatus WINGDIPAPI 1708 GdipDrawEllipseI(GpGraphics *graphics, GpPen *pen, INT x, INT y, 1709 INT width, INT height); 1710 1711 GpStatus WINGDIPAPI 1712 GdipDrawPie(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, 1713 REAL width, REAL height, REAL startAngle, REAL sweepAngle); 1714 1715 GpStatus WINGDIPAPI 1716 GdipDrawPieI(GpGraphics *graphics, GpPen *pen, INT x, INT y, 1717 INT width, INT height, REAL startAngle, REAL sweepAngle); 1718 1719 GpStatus WINGDIPAPI 1720 GdipDrawPolygon(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, 1721 INT count); 1722 1723 GpStatus WINGDIPAPI 1724 GdipDrawPolygonI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, 1725 INT count); 1726 1727 GpStatus WINGDIPAPI 1728 GdipDrawPath(GpGraphics *graphics, GpPen *pen, GpPath *path); 1729 1730 GpStatus WINGDIPAPI 1731 GdipDrawCurve(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, 1732 INT count); 1733 1734 GpStatus WINGDIPAPI 1735 GdipDrawCurveI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, 1736 INT count); 1737 1738 GpStatus WINGDIPAPI 1739 GdipDrawCurve2(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, 1740 INT count, REAL tension); 1741 1742 GpStatus WINGDIPAPI 1743 GdipDrawCurve2I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, 1744 INT count, REAL tension); 1745 1746 GpStatus WINGDIPAPI 1747 GdipDrawCurve3(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, 1748 INT count, INT offset, INT numberOfSegments, REAL tension); 1749 1750 GpStatus WINGDIPAPI 1751 GdipDrawCurve3I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, 1752 INT count, INT offset, INT numberOfSegments, REAL tension); 1753 1754 GpStatus WINGDIPAPI 1755 GdipDrawClosedCurve(GpGraphics *graphics, GpPen *pen, 1756 GDIPCONST GpPointF *points, INT count); 1757 1758 GpStatus WINGDIPAPI 1759 GdipDrawClosedCurveI(GpGraphics *graphics, GpPen *pen, 1760 GDIPCONST GpPoint *points, INT count); 1761 1762 GpStatus WINGDIPAPI 1763 GdipDrawClosedCurve2(GpGraphics *graphics, GpPen *pen, 1764 GDIPCONST GpPointF *points, INT count, REAL tension); 1765 1766 GpStatus WINGDIPAPI 1767 GdipDrawClosedCurve2I(GpGraphics *graphics, GpPen *pen, 1768 GDIPCONST GpPoint *points, INT count, REAL tension); 1769 1770 GpStatus WINGDIPAPI 1771 GdipGraphicsClear(GpGraphics *graphics, ARGB color); 1772 1773 GpStatus WINGDIPAPI 1774 GdipFillRectangle(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, 1775 REAL width, REAL height); 1776 1777 GpStatus WINGDIPAPI 1778 GdipFillRectangleI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, 1779 INT width, INT height); 1780 1781 GpStatus WINGDIPAPI 1782 GdipFillRectangles(GpGraphics *graphics, GpBrush *brush, 1783 GDIPCONST GpRectF *rects, INT count); 1784 1785 GpStatus WINGDIPAPI 1786 GdipFillRectanglesI(GpGraphics *graphics, GpBrush *brush, 1787 GDIPCONST GpRect *rects, INT count); 1788 1789 GpStatus WINGDIPAPI 1790 GdipFillPolygon(GpGraphics *graphics, GpBrush *brush, 1791 GDIPCONST GpPointF *points, INT count, GpFillMode fillMode); 1792 1793 GpStatus WINGDIPAPI 1794 GdipFillPolygonI(GpGraphics *graphics, GpBrush *brush, 1795 GDIPCONST GpPoint *points, INT count, GpFillMode fillMode); 1796 1797 GpStatus WINGDIPAPI 1798 GdipFillPolygon2(GpGraphics *graphics, GpBrush *brush, 1799 GDIPCONST GpPointF *points, INT count); 1800 1801 GpStatus WINGDIPAPI 1802 GdipFillPolygon2I(GpGraphics *graphics, GpBrush *brush, 1803 GDIPCONST GpPoint *points, INT count); 1804 1805 GpStatus WINGDIPAPI 1806 GdipFillEllipse(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, 1807 REAL width, REAL height); 1808 1809 GpStatus WINGDIPAPI 1810 GdipFillEllipseI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, 1811 INT width, INT height); 1812 1813 GpStatus WINGDIPAPI 1814 GdipFillPie(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, 1815 REAL width, REAL height, REAL startAngle, REAL sweepAngle); 1816 1817 GpStatus WINGDIPAPI 1818 GdipFillPieI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, 1819 INT width, INT height, REAL startAngle, REAL sweepAngle); 1820 1821 GpStatus WINGDIPAPI 1822 GdipFillPath(GpGraphics *graphics, GpBrush *brush, GpPath *path); 1823 1824 GpStatus WINGDIPAPI 1825 GdipFillClosedCurve(GpGraphics *graphics, GpBrush *brush, 1826 GDIPCONST GpPointF *points, INT count); 1827 1828 GpStatus WINGDIPAPI 1829 GdipFillClosedCurveI(GpGraphics *graphics, GpBrush *brush, 1830 GDIPCONST GpPoint *points, INT count); 1831 1832 GpStatus WINGDIPAPI 1833 GdipFillClosedCurve2(GpGraphics *graphics, GpBrush *brush, 1834 GDIPCONST GpPointF *points, INT count, 1835 REAL tension, GpFillMode fillMode); 1836 1837 GpStatus WINGDIPAPI 1838 GdipFillClosedCurve2I(GpGraphics *graphics, GpBrush *brush, 1839 GDIPCONST GpPoint *points, INT count, 1840 REAL tension, GpFillMode fillMode); 1841 1842 GpStatus WINGDIPAPI 1843 GdipFillRegion(GpGraphics *graphics, GpBrush *brush, 1844 GpRegion *region); 1845 1846 GpStatus WINGDIPAPI 1847 GdipDrawImage(GpGraphics *graphics, GpImage *image, REAL x, REAL y); 1848 1849 GpStatus WINGDIPAPI 1850 GdipDrawImageI(GpGraphics *graphics, GpImage *image, INT x, INT y); 1851 1852 GpStatus WINGDIPAPI 1853 GdipDrawImageRect(GpGraphics *graphics, GpImage *image, REAL x, REAL y, 1854 REAL width, REAL height); 1855 1856 GpStatus WINGDIPAPI 1857 GdipDrawImageRectI(GpGraphics *graphics, GpImage *image, INT x, INT y, 1858 INT width, INT height); 1859 1860 GpStatus WINGDIPAPI 1861 GdipDrawImagePoints(GpGraphics *graphics, GpImage *image, 1862 GDIPCONST GpPointF *dstpoints, INT count); 1863 1864 GpStatus WINGDIPAPI 1865 GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image, 1866 GDIPCONST GpPoint *dstpoints, INT count); 1867 1868 GpStatus WINGDIPAPI 1869 GdipDrawImagePointRect(GpGraphics *graphics, GpImage *image, REAL x, 1870 REAL y, REAL srcx, REAL srcy, REAL srcwidth, 1871 REAL srcheight, GpUnit srcUnit); 1872 1873 GpStatus WINGDIPAPI 1874 GdipDrawImagePointRectI(GpGraphics *graphics, GpImage *image, INT x, 1875 INT y, INT srcx, INT srcy, INT srcwidth, 1876 INT srcheight, GpUnit srcUnit); 1877 1878 GpStatus WINGDIPAPI 1879 GdipDrawImageRectRect(GpGraphics *graphics, GpImage *image, REAL dstx, 1880 REAL dsty, REAL dstwidth, REAL dstheight, 1881 REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, 1882 GpUnit srcUnit, 1883 GDIPCONST GpImageAttributes* imageAttributes, 1884 DrawImageAbort callback, VOID * callbackData); 1885 1886 GpStatus WINGDIPAPI 1887 GdipDrawImageRectRectI(GpGraphics *graphics, GpImage *image, INT dstx, 1888 INT dsty, INT dstwidth, INT dstheight, 1889 INT srcx, INT srcy, INT srcwidth, INT srcheight, 1890 GpUnit srcUnit, 1891 GDIPCONST GpImageAttributes* imageAttributes, 1892 DrawImageAbort callback, VOID * callbackData); 1893 1894 GpStatus WINGDIPAPI 1895 GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image, 1896 GDIPCONST GpPointF *points, INT count, REAL srcx, 1897 REAL srcy, REAL srcwidth, REAL srcheight, 1898 GpUnit srcUnit, 1899 GDIPCONST GpImageAttributes* imageAttributes, 1900 DrawImageAbort callback, VOID * callbackData); 1901 1902 GpStatus WINGDIPAPI 1903 GdipDrawImagePointsRectI(GpGraphics *graphics, GpImage *image, 1904 GDIPCONST GpPoint *points, INT count, INT srcx, 1905 INT srcy, INT srcwidth, INT srcheight, 1906 GpUnit srcUnit, 1907 GDIPCONST GpImageAttributes* imageAttributes, 1908 DrawImageAbort callback, VOID * callbackData); 1909 1910 GpStatus WINGDIPAPI 1911 GdipEnumerateMetafileDestPoint( 1912 GpGraphics * graphics, 1913 GDIPCONST GpMetafile * metafile, 1914 GDIPCONST PointF & destPoint, 1915 EnumerateMetafileProc callback, 1916 VOID * callbackData, 1917 GDIPCONST GpImageAttributes * imageAttributes 1918 ); 1919 1920 GpStatus WINGDIPAPI 1921 GdipEnumerateMetafileDestPointI( 1922 GpGraphics * graphics, 1923 GDIPCONST GpMetafile * metafile, 1924 GDIPCONST Point & destPoint, 1925 EnumerateMetafileProc callback, 1926 VOID * callbackData, 1927 GDIPCONST GpImageAttributes * imageAttributes 1928 ); 1929 1930 GpStatus WINGDIPAPI 1931 GdipEnumerateMetafileDestRect( 1932 GpGraphics * graphics, 1933 GDIPCONST GpMetafile * metafile, 1934 GDIPCONST RectF & destRect, 1935 EnumerateMetafileProc callback, 1936 VOID * callbackData, 1937 GDIPCONST GpImageAttributes * imageAttributes 1938 ); 1939 1940 GpStatus WINGDIPAPI 1941 GdipEnumerateMetafileDestRectI( 1942 GpGraphics * graphics, 1943 GDIPCONST GpMetafile * metafile, 1944 GDIPCONST Rect & destRect, 1945 EnumerateMetafileProc callback, 1946 VOID * callbackData, 1947 GDIPCONST GpImageAttributes * imageAttributes 1948 ); 1949 1950 GpStatus WINGDIPAPI 1951 GdipEnumerateMetafileDestPoints( 1952 GpGraphics * graphics, 1953 GDIPCONST GpMetafile * metafile, 1954 GDIPCONST PointF * destPoints, 1955 INT count, 1956 EnumerateMetafileProc callback, 1957 VOID * callbackData, 1958 GDIPCONST GpImageAttributes * imageAttributes 1959 ); 1960 1961 GpStatus WINGDIPAPI 1962 GdipEnumerateMetafileDestPointsI( 1963 GpGraphics * graphics, 1964 GDIPCONST GpMetafile * metafile, 1965 GDIPCONST Point * destPoints, 1966 INT count, 1967 EnumerateMetafileProc callback, 1968 VOID * callbackData, 1969 GDIPCONST GpImageAttributes * imageAttributes 1970 ); 1971 1972 GpStatus WINGDIPAPI 1973 GdipEnumerateMetafileSrcRectDestPoint( 1974 GpGraphics * graphics, 1975 GDIPCONST GpMetafile * metafile, 1976 GDIPCONST PointF & destPoint, 1977 GDIPCONST RectF & srcRect, 1978 Unit srcUnit, 1979 EnumerateMetafileProc callback, 1980 VOID * callbackData, 1981 GDIPCONST GpImageAttributes * imageAttributes 1982 ); 1983 1984 GpStatus WINGDIPAPI 1985 GdipEnumerateMetafileSrcRectDestPointI( 1986 GpGraphics * graphics, 1987 GDIPCONST GpMetafile * metafile, 1988 GDIPCONST Point & destPoint, 1989 GDIPCONST Rect & srcRect, 1990 Unit srcUnit, 1991 EnumerateMetafileProc callback, 1992 VOID * callbackData, 1993 GDIPCONST GpImageAttributes * imageAttributes 1994 ); 1995 1996 GpStatus WINGDIPAPI 1997 GdipEnumerateMetafileSrcRectDestRect( 1998 GpGraphics * graphics, 1999 GDIPCONST GpMetafile * metafile, 2000 GDIPCONST RectF & destRect, 2001 GDIPCONST RectF & srcRect, 2002 Unit srcUnit, 2003 EnumerateMetafileProc callback, 2004 VOID * callbackData, 2005 GDIPCONST GpImageAttributes * imageAttributes 2006 ); 2007 2008 GpStatus WINGDIPAPI 2009 GdipEnumerateMetafileSrcRectDestRectI( 2010 GpGraphics * graphics, 2011 GDIPCONST GpMetafile * metafile, 2012 GDIPCONST Rect & destRect, 2013 GDIPCONST Rect & srcRect, 2014 Unit srcUnit, 2015 EnumerateMetafileProc callback, 2016 VOID * callbackData, 2017 GDIPCONST GpImageAttributes * imageAttributes 2018 ); 2019 2020 GpStatus WINGDIPAPI 2021 GdipEnumerateMetafileSrcRectDestPoints( 2022 GpGraphics * graphics, 2023 GDIPCONST GpMetafile * metafile, 2024 GDIPCONST PointF * destPoints, 2025 INT count, 2026 GDIPCONST RectF & srcRect, 2027 Unit srcUnit, 2028 EnumerateMetafileProc callback, 2029 VOID * callbackData, 2030 GDIPCONST GpImageAttributes * imageAttributes 2031 ); 2032 2033 GpStatus WINGDIPAPI 2034 GdipEnumerateMetafileSrcRectDestPointsI( 2035 GpGraphics * graphics, 2036 GDIPCONST GpMetafile * metafile, 2037 GDIPCONST Point * destPoints, 2038 INT count, 2039 GDIPCONST Rect & srcRect, 2040 Unit srcUnit, 2041 EnumerateMetafileProc callback, 2042 VOID * callbackData, 2043 GDIPCONST GpImageAttributes * imageAttributes 2044 ); 2045 2046 GpStatus WINGDIPAPI 2047 GdipPlayMetafileRecord( 2048 GDIPCONST GpMetafile * metafile, 2049 EmfPlusRecordType recordType, 2050 UINT flags, 2051 UINT dataSize, 2052 GDIPCONST BYTE * data 2053 ); 2054 2055 GpStatus WINGDIPAPI 2056 GdipSetClipGraphics(GpGraphics *graphics, GpGraphics *srcgraphics, 2057 CombineMode combineMode); 2058 2059 GpStatus WINGDIPAPI 2060 GdipSetClipRect(GpGraphics *graphics, REAL x, REAL y, 2061 REAL width, REAL height, CombineMode combineMode); 2062 2063 GpStatus WINGDIPAPI 2064 GdipSetClipRectI(GpGraphics *graphics, INT x, INT y, 2065 INT width, INT height, CombineMode combineMode); 2066 2067 GpStatus WINGDIPAPI 2068 GdipSetClipPath(GpGraphics *graphics, GpPath *path, CombineMode combineMode); 2069 2070 GpStatus WINGDIPAPI 2071 GdipSetClipRegion(GpGraphics *graphics, GpRegion *region, 2072 CombineMode combineMode); 2073 2074 GpStatus WINGDIPAPI 2075 GdipSetClipHrgn(GpGraphics *graphics, HRGN hRgn, CombineMode combineMode); 2076 2077 GpStatus WINGDIPAPI 2078 GdipResetClip(GpGraphics *graphics); 2079 2080 GpStatus WINGDIPAPI 2081 GdipTranslateClip(GpGraphics *graphics, REAL dx, REAL dy); 2082 2083 GpStatus WINGDIPAPI 2084 GdipTranslateClipI(GpGraphics *graphics, INT dx, INT dy); 2085 2086 GpStatus WINGDIPAPI 2087 GdipGetClip(GpGraphics *graphics, GpRegion *region); 2088 2089 GpStatus WINGDIPAPI 2090 GdipGetClipBounds(GpGraphics *graphics, GpRectF *rect); 2091 2092 GpStatus WINGDIPAPI 2093 GdipGetClipBoundsI(GpGraphics *graphics, GpRect *rect); 2094 2095 GpStatus WINGDIPAPI 2096 GdipIsClipEmpty(GpGraphics *graphics, BOOL *result); 2097 2098 GpStatus WINGDIPAPI 2099 GdipGetVisibleClipBounds(GpGraphics *graphics, GpRectF *rect); 2100 2101 GpStatus WINGDIPAPI 2102 GdipGetVisibleClipBoundsI(GpGraphics *graphics, GpRect *rect); 2103 2104 GpStatus WINGDIPAPI 2105 GdipIsVisibleClipEmpty(GpGraphics *graphics, BOOL *result); 2106 2107 GpStatus WINGDIPAPI 2108 GdipIsVisiblePoint(GpGraphics *graphics, REAL x, REAL y, 2109 BOOL *result); 2110 2111 GpStatus WINGDIPAPI 2112 GdipIsVisiblePointI(GpGraphics *graphics, INT x, INT y, 2113 BOOL *result); 2114 2115 GpStatus WINGDIPAPI 2116 GdipIsVisibleRect(GpGraphics *graphics, REAL x, REAL y, 2117 REAL width, REAL height, BOOL *result); 2118 2119 GpStatus WINGDIPAPI 2120 GdipIsVisibleRectI(GpGraphics *graphics, INT x, INT y, 2121 INT width, INT height, BOOL *result); 2122 2123 GpStatus WINGDIPAPI 2124 GdipSaveGraphics(GpGraphics *graphics, GraphicsState *state); 2125 2126 GpStatus WINGDIPAPI 2127 GdipRestoreGraphics(GpGraphics *graphics, GraphicsState state); 2128 2129 GpStatus WINGDIPAPI 2130 GdipBeginContainer(GpGraphics *graphics, GDIPCONST GpRectF* dstrect, 2131 GDIPCONST GpRectF *srcrect, GpUnit unit, GraphicsContainer *state); 2132 2133 GpStatus WINGDIPAPI 2134 GdipBeginContainerI(GpGraphics *graphics, GDIPCONST GpRect* dstrect, 2135 GDIPCONST GpRect *srcrect, GpUnit unit, GraphicsContainer *state); 2136 2137 GpStatus WINGDIPAPI 2138 GdipBeginContainer2(GpGraphics *graphics, GraphicsContainer* state); 2139 2140 GpStatus WINGDIPAPI 2141 GdipEndContainer(GpGraphics *graphics, GraphicsContainer state); 2142 2143 GpStatus 2144 GdipGetMetafileHeaderFromWmf( 2145 HMETAFILE hWmf, 2146 GDIPCONST APMFileHeader * apmFileHeader, 2147 MetafileHeader * header 2148 ); 2149 2150 GpStatus 2151 WINGDIPAPI 2152 GdipGetMetafileHeaderFromEmf( 2153 HENHMETAFILE hEmf, 2154 MetafileHeader * header 2155 ); 2156 2157 GpStatus 2158 WINGDIPAPI 2159 GdipGetMetafileHeaderFromFile( 2160 GDIPCONST WCHAR* filename, 2161 MetafileHeader * header 2162 ); 2163 2164 GpStatus 2165 WINGDIPAPI 2166 GdipGetMetafileHeaderFromStream( 2167 IStream * stream, 2168 MetafileHeader * header 2169 ); 2170 2171 GpStatus 2172 WINGDIPAPI 2173 GdipGetMetafileHeaderFromMetafile( 2174 GpMetafile * metafile, 2175 MetafileHeader * header 2176 ); 2177 2178 GpStatus 2179 WINGDIPAPI 2180 GdipGetHemfFromMetafile( 2181 GpMetafile * metafile, 2182 HENHMETAFILE * hEmf 2183 ); 2184 2185 GpStatus WINGDIPAPI 2186 GdipCreateStreamOnFile(GDIPCONST WCHAR * filename, UINT access, IStream **stream); 2187 2188 GpStatus WINGDIPAPI 2189 GdipCreateMetafileFromWmf(HMETAFILE hWmf, BOOL deleteWmf, 2190 GDIPCONST APMFileHeader * apmFileHeader, GpMetafile **metafile); 2191 2192 GpStatus WINGDIPAPI 2193 GdipCreateMetafileFromEmf(HENHMETAFILE hEmf, BOOL deleteEmf, 2194 GpMetafile **metafile); 2195 2196 GpStatus WINGDIPAPI 2197 GdipCreateMetafileFromFile(GDIPCONST WCHAR* file, GpMetafile **metafile); 2198 2199 GpStatus WINGDIPAPI 2200 GdipCreateMetafileFromWmfFile(GDIPCONST WCHAR* file, GDIPCONST APMFileHeader * apmFileHeader, GpMetafile **metafile); 2201 2202 GpStatus WINGDIPAPI 2203 GdipCreateMetafileFromStream(IStream * stream, GpMetafile **metafile); 2204 2205 GpStatus WINGDIPAPI 2206 GdipRecordMetafile( 2207 HDC referenceHdc, 2208 EmfType type, 2209 GDIPCONST GpRectF * frameRect, 2210 MetafileFrameUnit frameUnit, 2211 GDIPCONST WCHAR * description, 2212 GpMetafile ** metafile 2213 ); 2214 2215 GpStatus WINGDIPAPI 2216 GdipRecordMetafileI( 2217 HDC referenceHdc, 2218 EmfType type, 2219 GDIPCONST GpRect * frameRect, 2220 MetafileFrameUnit frameUnit, 2221 GDIPCONST WCHAR * description, 2222 GpMetafile ** metafile 2223 ); 2224 2225 GpStatus WINGDIPAPI 2226 GdipRecordMetafileFileName( 2227 GDIPCONST WCHAR* fileName, 2228 HDC referenceHdc, 2229 EmfType type, 2230 GDIPCONST GpRectF * frameRect, 2231 MetafileFrameUnit frameUnit, 2232 GDIPCONST WCHAR * description, 2233 GpMetafile ** metafile 2234 ); 2235 2236 GpStatus WINGDIPAPI 2237 GdipRecordMetafileFileNameI( 2238 GDIPCONST WCHAR* fileName, 2239 HDC referenceHdc, 2240 EmfType type, 2241 GDIPCONST GpRect * frameRect, 2242 MetafileFrameUnit frameUnit, 2243 GDIPCONST WCHAR * description, 2244 GpMetafile ** metafile 2245 ); 2246 2247 GpStatus WINGDIPAPI 2248 GdipRecordMetafileStream( 2249 IStream * stream, 2250 HDC referenceHdc, 2251 EmfType type, 2252 GDIPCONST GpRectF * frameRect, 2253 MetafileFrameUnit frameUnit, 2254 GDIPCONST WCHAR * description, 2255 GpMetafile ** metafile 2256 ); 2257 2258 GpStatus WINGDIPAPI 2259 GdipRecordMetafileStreamI( 2260 IStream * stream, 2261 HDC referenceHdc, 2262 EmfType type, 2263 GDIPCONST GpRect * frameRect, 2264 MetafileFrameUnit frameUnit, 2265 GDIPCONST WCHAR * description, 2266 GpMetafile ** metafile 2267 ); 2268 2269 GpStatus WINGDIPAPI 2270 GdipSetMetafileDownLevelRasterizationLimit( 2271 GpMetafile * metafile, 2272 UINT metafileRasterizationLimitDpi 2273 ); 2274 2275 GpStatus WINGDIPAPI 2276 GdipGetMetafileDownLevelRasterizationLimit( 2277 GDIPCONST GpMetafile * metafile, 2278 UINT * metafileRasterizationLimitDpi 2279 ); 2280 2281 GpStatus WINGDIPAPI 2282 GdipGetImageDecodersSize(UINT *numDecoders, UINT *size); 2283 2284 GpStatus WINGDIPAPI 2285 GdipGetImageDecoders(UINT numDecoders, 2286 UINT size, 2287 ImageCodecInfo *decoders); 2288 2289 GpStatus WINGDIPAPI 2290 GdipGetImageEncodersSize(UINT *numEncoders, UINT *size); 2291 2292 GpStatus WINGDIPAPI 2293 GdipGetImageEncoders(UINT numEncoders, 2294 UINT size, 2295 ImageCodecInfo *encoders); 2296 2297 GpStatus WINGDIPAPI 2298 GdipAddImageCodec(GDIPCONST ImageCodecInfo *codec); 2299 2300 GpStatus WINGDIPAPI 2301 GdipRemoveImageCodec(GDIPCONST ImageCodecInfo *codec); 2302 2303 #ifndef DCR_USE_NEW_186091 2304 GpStatus WINGDIPAPI 2305 GdipGetGraphicsPixel(GpGraphics* graphics, REAL x, REAL y, ARGB* argb); 2306 #endif 2307 2308 GpStatus WINGDIPAPI 2309 GdipComment(GpGraphics* graphics, UINT sizeData, GDIPCONST BYTE * data); 2310 2311 GpStatus WINGDIPAPI 2312 GdipGetGraphicsLayout(GpGraphics* graphics, GraphicsLayout* layout); 2313 2314 GpStatus WINGDIPAPI 2315 GdipSetGraphicsLayout(GpGraphics* graphics, GDIPCONST GraphicsLayout layout); 2316 2317 //---------------------------------------------------------------------------- 2318 // FontFamily 2319 //---------------------------------------------------------------------------- 2320 2321 GpStatus WINGDIPAPI 2322 GdipCreateFontFamilyFromName(GDIPCONST WCHAR *name, 2323 GpFontCollection *fontCollection, 2324 GpFontFamily **FontFamily); 2325 2326 GpStatus WINGDIPAPI 2327 GdipDeleteFontFamily(GpFontFamily *FontFamily); 2328 2329 GpStatus WINGDIPAPI 2330 GdipCloneFontFamily(GpFontFamily *FontFamily, GpFontFamily **clonedFontFamily); 2331 2332 GpStatus WINGDIPAPI 2333 GdipGetGenericFontFamilySansSerif(GpFontFamily **nativeFamily); 2334 2335 GpStatus WINGDIPAPI 2336 GdipGetGenericFontFamilySerif(GpFontFamily **nativeFamily); 2337 2338 GpStatus WINGDIPAPI 2339 GdipGetGenericFontFamilyMonospace(GpFontFamily **nativeFamily); 2340 2341 2342 GpStatus WINGDIPAPI 2343 GdipGetFamilyName( 2344 GDIPCONST GpFontFamily *family, 2345 WCHAR name[LF_FACESIZE], 2346 LANGID language 2347 ); 2348 2349 GpStatus WINGDIPAPI 2350 GdipIsStyleAvailable(GDIPCONST GpFontFamily *family, INT style, BOOL * IsStyleAvailable); 2351 2352 GpStatus WINGDIPAPI 2353 GdipFontCollectionEnumerable( 2354 GpFontCollection* fontCollection, 2355 GpGraphics* graphics, 2356 INT * numFound 2357 ); 2358 2359 GpStatus WINGDIPAPI GdipFontCollectionEnumerate( 2360 GpFontCollection* fontCollection, 2361 INT numSought, 2362 GpFontFamily* gpfamilies[], 2363 INT* numFound, 2364 GpGraphics* graphics 2365 ); 2366 2367 //----------------------------------- 2368 // New API 2369 //----------------------------------- 2370 2371 GpStatus WINGDIPAPI 2372 GdipGetEmHeight(GDIPCONST GpFontFamily *family, INT style, UINT16 * EmHeight); 2373 2374 GpStatus WINGDIPAPI 2375 GdipGetCellAscent(GDIPCONST GpFontFamily *family, INT style, UINT16 * CellAscent); 2376 2377 GpStatus WINGDIPAPI 2378 GdipGetCellDescent(GDIPCONST GpFontFamily *family, INT style, UINT16 * CellDescent); 2379 2380 GpStatus WINGDIPAPI 2381 GdipGetLineSpacing(GDIPCONST GpFontFamily *family, INT style, UINT16 * LineSpacing); 2382 2383 2384 //---------------------------------------------------------------------------- 2385 // Font 2386 //---------------------------------------------------------------------------- 2387 2388 GpStatus WINGDIPAPI 2389 GdipCreateFontFromDC( 2390 HDC hdc, 2391 GpFont **font 2392 ); 2393 2394 GpStatus WINGDIPAPI 2395 GdipCreateFontFromLogfontA( 2396 HDC hdc, 2397 GDIPCONST LOGFONTA *logfont, 2398 GpFont **font 2399 ); 2400 2401 GpStatus WINGDIPAPI 2402 GdipCreateFontFromLogfontW( 2403 HDC hdc, 2404 GDIPCONST LOGFONTW *logfont, 2405 GpFont **font 2406 ); 2407 2408 GpStatus WINGDIPAPI 2409 GdipCreateFont( 2410 GDIPCONST GpFontFamily *fontFamily, 2411 REAL emSize, 2412 INT style, 2413 Unit unit, 2414 GpFont **font 2415 ); 2416 2417 GpStatus WINGDIPAPI 2418 GdipCloneFont(GpFont* font, GpFont** cloneFont); 2419 2420 GpStatus WINGDIPAPI 2421 GdipDeleteFont(GpFont* font); 2422 2423 GpStatus WINGDIPAPI 2424 GdipGetFamily(GpFont *font, GpFontFamily **family); 2425 2426 GpStatus WINGDIPAPI 2427 GdipGetFontStyle(GpFont *font, INT *style); 2428 2429 GpStatus WINGDIPAPI 2430 GdipGetFontSize(GpFont *font, REAL *size); 2431 2432 GpStatus WINGDIPAPI 2433 GdipGetFontUnit(GpFont *font, Unit *unit); 2434 2435 GpStatus WINGDIPAPI 2436 GdipGetFontHeight(GDIPCONST GpFont *font, GDIPCONST GpGraphics *graphics, REAL *height); 2437 2438 #ifdef DCR_USE_NEW_125467 2439 GpStatus WINGDIPAPI 2440 GdipGetFontHeightGivenDPI(GDIPCONST GpFont *font, REAL dpi, REAL *height); 2441 #endif 2442 2443 GpStatus WINGDIPAPI 2444 GdipGetLogFontA(GpFont * font, GpGraphics *graphics, LOGFONTA * logfontA); 2445 2446 GpStatus WINGDIPAPI 2447 GdipGetLogFontW(GpFont * font, GpGraphics *graphics, LOGFONTW * logfontW); 2448 2449 // FontCollection 2450 2451 GpStatus WINGDIPAPI 2452 GdipNewInstalledFontCollection(GpFontCollection** fontCollection); 2453 2454 GpStatus WINGDIPAPI 2455 GdipNewPrivateFontCollection(GpFontCollection** fontCollection); 2456 2457 GpStatus WINGDIPAPI 2458 GdipDeletePrivateFontCollection(GpFontCollection** fontCollection); 2459 2460 GpStatus WINGDIPAPI 2461 GdipGetFontCollectionFamilyCount( 2462 GpFontCollection* fontCollection, 2463 INT * numFound 2464 ); 2465 2466 GpStatus WINGDIPAPI 2467 GdipGetFontCollectionFamilyList( 2468 GpFontCollection* fontCollection, 2469 INT numSought, 2470 GpFontFamily* gpfamilies[], 2471 INT* numFound 2472 ); 2473 2474 #ifndef DCR_USE_NEW_235072 2475 GpStatus WINGDIPAPI 2476 GdipInstallFontFile( 2477 GpFontCollection* fontCollection, 2478 GDIPCONST WCHAR* filename 2479 ); 2480 2481 GpStatus WINGDIPAPI 2482 GdipUninstallFontFile( 2483 GpFontCollection* fontCollection, 2484 GDIPCONST WCHAR* filename 2485 ); 2486 #endif 2487 2488 GpStatus WINGDIPAPI 2489 GdipPrivateAddFontFile( 2490 GpFontCollection* fontCollection, 2491 GDIPCONST WCHAR* filename 2492 ); 2493 2494 GpStatus WINGDIPAPI 2495 GdipPrivateAddMemoryFont( 2496 GpFontCollection* fontCollection, 2497 GDIPCONST void* memory, 2498 INT length 2499 ); 2500 2501 //---------------------------------------------------------------------------- 2502 // Text 2503 //---------------------------------------------------------------------------- 2504 2505 GpStatus WINGDIPAPI 2506 GdipDrawString( 2507 GpGraphics *graphics, 2508 GDIPCONST WCHAR *string, 2509 INT length, 2510 GDIPCONST GpFont *font, 2511 GDIPCONST RectF *layoutRect, 2512 GDIPCONST GpStringFormat *stringFormat, 2513 GDIPCONST GpBrush *brush 2514 ); 2515 2516 GpStatus WINGDIPAPI 2517 GdipMeasureString( 2518 GpGraphics *graphics, 2519 GDIPCONST WCHAR *string, 2520 INT length, 2521 GDIPCONST GpFont *font, 2522 GDIPCONST RectF *layoutRect, 2523 GDIPCONST GpStringFormat *stringFormat, 2524 RectF *boundingBox, 2525 INT *codepointsFitted, 2526 INT *linesFilled 2527 ); 2528 2529 #ifndef DCR_USE_NEW_174340 2530 GpStatus WINGDIPAPI 2531 GdipMeasureStringRegion( 2532 GpGraphics *graphics, 2533 GDIPCONST WCHAR *string, 2534 INT length, 2535 GDIPCONST GpFont *font, 2536 GDIPCONST RectF &layoutRect, 2537 GDIPCONST GpStringFormat *stringFormat, 2538 INT firstCharacterIndex, 2539 INT characterCount, 2540 GpRegion *region 2541 ); 2542 #endif 2543 2544 #ifdef DCR_USE_NEW_174340 2545 GpStatus 2546 WINGDIPAPI 2547 GdipMeasureCharacterRanges( 2548 GpGraphics *graphics, 2549 GDIPCONST WCHAR *string, 2550 INT length, 2551 GDIPCONST GpFont *font, 2552 GDIPCONST RectF &layoutRect, 2553 GDIPCONST GpStringFormat *stringFormat, 2554 INT regionCount, 2555 GpRegion **regions 2556 ); 2557 #endif 2558 2559 GpStatus WINGDIPAPI 2560 GdipDrawDriverString( 2561 GpGraphics *graphics, 2562 GDIPCONST UINT16 *text, 2563 INT length, 2564 GDIPCONST GpFont *font, 2565 GDIPCONST GpBrush *brush, 2566 GDIPCONST PointF *positions, 2567 INT flags, 2568 GDIPCONST GpMatrix *matrix 2569 ); 2570 2571 GpStatus WINGDIPAPI 2572 GdipMeasureDriverString( 2573 GpGraphics *graphics, 2574 GDIPCONST UINT16 *text, 2575 INT length, 2576 GDIPCONST GpFont *font, 2577 GDIPCONST PointF *positions, 2578 INT flags, 2579 GDIPCONST GpMatrix *matrix, 2580 RectF *boundingBox 2581 ); 2582 2583 #ifndef DCR_USE_NEW_168772 2584 GpStatus WINGDIPAPI 2585 GdipDriverStringPointToCodepoint( 2586 GpGraphics *graphics, 2587 GDIPCONST UINT16 *text, 2588 INT length, 2589 GDIPCONST GpFont *font, 2590 GDIPCONST PointF *positions, 2591 INT flags, 2592 GpMatrix *matrix, 2593 GDIPCONST PointF *hit, 2594 INT *index, 2595 BOOL *rightEdge, 2596 REAL *distance 2597 ); 2598 #endif 2599 2600 //---------------------------------------------------------------------------- 2601 // String format APIs 2602 //---------------------------------------------------------------------------- 2603 2604 GpStatus WINGDIPAPI 2605 GdipCreateStringFormat( 2606 INT formatAttributes, 2607 LANGID language, 2608 GpStringFormat **format 2609 ); 2610 2611 GpStatus WINGDIPAPI 2612 GdipStringFormatGetGenericDefault(GpStringFormat **format); 2613 2614 GpStatus WINGDIPAPI 2615 GdipStringFormatGetGenericTypographic(GpStringFormat **format); 2616 2617 GpStatus WINGDIPAPI 2618 GdipDeleteStringFormat(GpStringFormat *format); 2619 2620 GpStatus WINGDIPAPI 2621 GdipCloneStringFormat(GDIPCONST GpStringFormat *format, GpStringFormat **newFormat); 2622 2623 GpStatus WINGDIPAPI 2624 GdipSetStringFormatFlags(GpStringFormat *format, INT flags); 2625 2626 GpStatus WINGDIPAPI GdipGetStringFormatFlags(GDIPCONST GpStringFormat *format, INT *flags); 2627 2628 #ifndef DCR_USE_NEW_152154 2629 GpStatus WINGDIPAPI 2630 GdipSetStringFormatLineSpacing(GpStringFormat *format, REAL amount, 2631 LineSpacing method); 2632 2633 GpStatus WINGDIPAPI 2634 GdipGetStringFormatLineSpacingAmount(GDIPCONST GpStringFormat *format, REAL *amount); 2635 GpStatus WINGDIPAPI 2636 GdipGetStringFormatLineSpacingMethod(GDIPCONST GpStringFormat *format, LineSpacing *method); 2637 #endif 2638 2639 GpStatus WINGDIPAPI 2640 GdipSetStringFormatAlign(GpStringFormat *format, StringAlignment align); 2641 2642 GpStatus WINGDIPAPI 2643 GdipGetStringFormatAlign(GDIPCONST GpStringFormat *format, StringAlignment *align); 2644 2645 GpStatus WINGDIPAPI 2646 GdipSetStringFormatLineAlign(GpStringFormat *format, 2647 StringAlignment align); 2648 2649 GpStatus WINGDIPAPI 2650 GdipGetStringFormatLineAlign(GDIPCONST GpStringFormat *format, 2651 StringAlignment *align); 2652 2653 GpStatus WINGDIPAPI 2654 GdipSetStringFormatTrimming( 2655 GpStringFormat *format, 2656 StringTrimming trimming 2657 ); 2658 2659 GpStatus WINGDIPAPI 2660 GdipGetStringFormatTrimming( 2661 GDIPCONST GpStringFormat *format, 2662 StringTrimming *trimming 2663 ); 2664 2665 GpStatus WINGDIPAPI 2666 GdipSetStringFormatHotkeyPrefix(GpStringFormat *format, INT hotkeyPrefix); 2667 2668 GpStatus WINGDIPAPI 2669 GdipGetStringFormatHotkeyPrefix(GDIPCONST GpStringFormat *format, INT *hotkeyPrefix); 2670 2671 GpStatus WINGDIPAPI 2672 GdipSetStringFormatTabStops(GpStringFormat *format, REAL firstTabOffset, INT count, GDIPCONST REAL *tabStops); 2673 2674 GpStatus WINGDIPAPI 2675 GdipGetStringFormatTabStops(GDIPCONST GpStringFormat *format, INT count, REAL *firstTabOffset, REAL *tabStops); 2676 2677 GpStatus WINGDIPAPI 2678 GdipGetStringFormatTabStopCount(GDIPCONST GpStringFormat *format, INT * count); 2679 2680 #ifdef DCR_USE_NEW_146933 2681 GpStatus WINGDIPAPI 2682 GdipSetStringFormatDigitSubstitution(GpStringFormat *format, LANGID language, 2683 StringDigitSubstitute substitute); 2684 2685 GpStatus WINGDIPAPI 2686 GdipGetStringFormatDigitSubstitution(GDIPCONST GpStringFormat *format, LANGID *language, 2687 StringDigitSubstitute *substitute); 2688 #endif // DCR_USE_NEW_146933 2689 2690 #ifdef DCR_USE_NEW_174340 2691 GpStatus WINGDIPAPI 2692 GdipGetStringFormatMeasurableCharacterRangeCount( 2693 GDIPCONST GpStringFormat *format, 2694 INT *count 2695 ); 2696 2697 GpStatus WINGDIPAPI 2698 GdipSetStringFormatMeasurableCharacterRanges( 2699 GpStringFormat *format, 2700 INT rangeCount, 2701 GDIPCONST CharacterRange *ranges 2702 ); 2703 #endif 2704 2705 //---------------------------------------------------------------------------- 2706 // Cached Bitmap APIs 2707 //---------------------------------------------------------------------------- 2708 2709 GpStatus WINGDIPAPI 2710 GdipCreateCachedBitmap( 2711 GpBitmap *bitmap, 2712 GpGraphics *graphics, 2713 GpCachedBitmap **cachedBitmap 2714 ); 2715 2716 GpStatus WINGDIPAPI 2717 GdipDeleteCachedBitmap(GpCachedBitmap *cachedBitmap); 2718 2719 GpStatus WINGDIPAPI 2720 GdipDrawCachedBitmap( 2721 GpGraphics *graphics, 2722 GpCachedBitmap *cachedBitmap, 2723 INT x, 2724 INT y 2725 ); 2726 2727 UINT WINGDIPAPI 2728 GdipEmfToWmfBits( 2729 HENHMETAFILE hemf, 2730 UINT cbData16, 2731 LPBYTE pData16, 2732 INT iMapMode, 2733 INT eFlags 2734 ); 2735 2736 #ifdef __cplusplus 2737 } 2738 #endif 2739 2740 #endif // !_FLATAPI_H 2741