GdiPlusFlat.h 81 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651
  1. //Download by http://www.NewXing.com
  2. /**************************************************************************\
  3. *
  4. * Copyright (c) 1998-2001, Microsoft Corp. All Rights Reserved.
  5. *
  6. * Module Name:
  7. *
  8. * GdiplusFlat.h
  9. *
  10. * Abstract:
  11. *
  12. * Private GDI+ header file.
  13. *
  14. \**************************************************************************/
  15. #ifndef _FLATAPI_H
  16. #define _FLATAPI_H
  17. #define WINGDIPAPI __stdcall
  18. #define GDIPCONST const
  19. #ifdef __cplusplus
  20. extern "C" {
  21. #endif
  22. //----------------------------------------------------------------------------
  23. // GraphicsPath APIs
  24. //----------------------------------------------------------------------------
  25. GpStatus WINGDIPAPI
  26. GdipCreatePath(GpFillMode brushMode, GpPath **path);
  27. GpStatus WINGDIPAPI
  28. GdipCreatePath2(GDIPCONST GpPointF*, GDIPCONST BYTE*, INT, GpFillMode,
  29. GpPath **path);
  30. GpStatus WINGDIPAPI
  31. GdipCreatePath2I(GDIPCONST GpPoint*, GDIPCONST BYTE*, INT, GpFillMode,
  32. GpPath **path);
  33. GpStatus WINGDIPAPI
  34. GdipClonePath(GpPath* path, GpPath **clonePath);
  35. GpStatus WINGDIPAPI
  36. GdipDeletePath(GpPath* path);
  37. GpStatus WINGDIPAPI
  38. GdipResetPath(GpPath* path);
  39. GpStatus WINGDIPAPI
  40. GdipGetPointCount(GpPath* path, INT* count);
  41. GpStatus WINGDIPAPI
  42. GdipGetPathTypes(GpPath* path, BYTE* types, INT count);
  43. GpStatus WINGDIPAPI
  44. GdipGetPathPoints(GpPath*, GpPointF* points, INT count);
  45. GpStatus WINGDIPAPI
  46. GdipGetPathPointsI(GpPath*, GpPoint* points, INT count);
  47. GpStatus WINGDIPAPI
  48. GdipGetPathFillMode(GpPath *path, GpFillMode *fillmode);
  49. GpStatus WINGDIPAPI
  50. GdipSetPathFillMode(GpPath *path, GpFillMode fillmode);
  51. GpStatus WINGDIPAPI
  52. GdipGetPathData(GpPath *path, GpPathData* pathData);
  53. GpStatus WINGDIPAPI
  54. GdipStartPathFigure(GpPath *path);
  55. GpStatus WINGDIPAPI
  56. GdipClosePathFigure(GpPath *path);
  57. GpStatus WINGDIPAPI
  58. GdipClosePathFigures(GpPath *path);
  59. GpStatus WINGDIPAPI
  60. GdipSetPathMarker(GpPath* path);
  61. GpStatus WINGDIPAPI
  62. GdipClearPathMarkers(GpPath* path);
  63. GpStatus WINGDIPAPI
  64. GdipReversePath(GpPath* path);
  65. GpStatus WINGDIPAPI
  66. GdipGetPathLastPoint(GpPath* path, GpPointF* lastPoint);
  67. GpStatus WINGDIPAPI
  68. GdipAddPathLine(GpPath *path, REAL x1, REAL y1, REAL x2, REAL y2);
  69. GpStatus WINGDIPAPI
  70. GdipAddPathLine2(GpPath *path, GDIPCONST GpPointF *points, INT count);
  71. GpStatus WINGDIPAPI
  72. GdipAddPathArc(GpPath *path, REAL x, REAL y, REAL width, REAL height,
  73. REAL startAngle, REAL sweepAngle);
  74. GpStatus WINGDIPAPI
  75. GdipAddPathBezier(GpPath *path, REAL x1, REAL y1, REAL x2, REAL y2,
  76. REAL x3, REAL y3, REAL x4, REAL y4);
  77. GpStatus WINGDIPAPI
  78. GdipAddPathBeziers(GpPath *path, GDIPCONST GpPointF *points, INT count);
  79. GpStatus WINGDIPAPI
  80. GdipAddPathCurve(GpPath *path, GDIPCONST GpPointF *points, INT count);
  81. GpStatus WINGDIPAPI
  82. GdipAddPathCurve2(GpPath *path, GDIPCONST GpPointF *points, INT count,
  83. REAL tension);
  84. GpStatus WINGDIPAPI
  85. GdipAddPathCurve3(GpPath *path, GDIPCONST GpPointF *points, INT count,
  86. INT offset, INT numberOfSegments, REAL tension);
  87. GpStatus WINGDIPAPI
  88. GdipAddPathClosedCurve(GpPath *path, GDIPCONST GpPointF *points, INT count);
  89. GpStatus WINGDIPAPI
  90. GdipAddPathClosedCurve2(GpPath *path, GDIPCONST GpPointF *points, INT count,
  91. REAL tension);
  92. GpStatus WINGDIPAPI
  93. GdipAddPathRectangle(GpPath *path, REAL x, REAL y, REAL width, REAL height);
  94. GpStatus WINGDIPAPI
  95. GdipAddPathRectangles(GpPath *path, GDIPCONST GpRectF *rects, INT count);
  96. GpStatus WINGDIPAPI
  97. GdipAddPathEllipse(GpPath *path, REAL x, REAL y, REAL width,
  98. REAL height);
  99. GpStatus WINGDIPAPI
  100. GdipAddPathPie(GpPath *path, REAL x, REAL y, REAL width, REAL height,
  101. REAL startAngle, REAL sweepAngle);
  102. GpStatus WINGDIPAPI
  103. GdipAddPathPolygon(GpPath *path, GDIPCONST GpPointF *points, INT count);
  104. GpStatus WINGDIPAPI
  105. GdipAddPathPath(GpPath *path, GDIPCONST GpPath* addingPath, BOOL connect);
  106. GpStatus WINGDIPAPI
  107. GdipAddPathString(GpPath *path, GDIPCONST WCHAR *string,
  108. INT length, GDIPCONST GpFontFamily *family, INT style,
  109. REAL emSize, GDIPCONST RectF *layoutRect,
  110. GDIPCONST GpStringFormat *format);
  111. GpStatus WINGDIPAPI
  112. GdipAddPathStringI(GpPath *path, GDIPCONST WCHAR *string,
  113. INT length, GDIPCONST GpFontFamily *family, INT style,
  114. REAL emSize, GDIPCONST Rect *layoutRect,
  115. GDIPCONST GpStringFormat *format);
  116. GpStatus WINGDIPAPI
  117. GdipAddPathLineI(GpPath *path, INT x1, INT y1, INT x2, INT y2);
  118. GpStatus WINGDIPAPI
  119. GdipAddPathLine2I(GpPath *path, GDIPCONST GpPoint *points, INT count);
  120. GpStatus WINGDIPAPI
  121. GdipAddPathArcI(GpPath *path, INT x, INT y, INT width, INT height,
  122. REAL startAngle, REAL sweepAngle);
  123. GpStatus WINGDIPAPI
  124. GdipAddPathBezierI(GpPath *path, INT x1, INT y1, INT x2, INT y2,
  125. INT x3, INT y3, INT x4, INT y4);
  126. GpStatus WINGDIPAPI
  127. GdipAddPathBeziersI(GpPath *path, GDIPCONST GpPoint *points, INT count);
  128. GpStatus WINGDIPAPI
  129. GdipAddPathCurveI(GpPath *path, GDIPCONST GpPoint *points, INT count);
  130. GpStatus WINGDIPAPI
  131. GdipAddPathCurve2I(GpPath *path, GDIPCONST GpPoint *points, INT count,
  132. REAL tension);
  133. GpStatus WINGDIPAPI
  134. GdipAddPathCurve3I(GpPath *path, GDIPCONST GpPoint *points, INT count,
  135. INT offset, INT numberOfSegments, REAL tension);
  136. GpStatus WINGDIPAPI
  137. GdipAddPathClosedCurveI(GpPath *path, GDIPCONST GpPoint *points, INT count);
  138. GpStatus WINGDIPAPI
  139. GdipAddPathClosedCurve2I(GpPath *path, GDIPCONST GpPoint *points, INT count,
  140. REAL tension);
  141. GpStatus WINGDIPAPI
  142. GdipAddPathRectangleI(GpPath *path, INT x, INT y, INT width, INT height);
  143. GpStatus WINGDIPAPI
  144. GdipAddPathRectanglesI(GpPath *path, GDIPCONST GpRect *rects, INT count);
  145. GpStatus WINGDIPAPI
  146. GdipAddPathEllipseI(GpPath *path, INT x, INT y, INT width, INT height);
  147. GpStatus WINGDIPAPI
  148. GdipAddPathPieI(GpPath *path, INT x, INT y, INT width, INT height,
  149. REAL startAngle, REAL sweepAngle);
  150. GpStatus WINGDIPAPI
  151. GdipAddPathPolygonI(GpPath *path, GDIPCONST GpPoint *points, INT count);
  152. GpStatus WINGDIPAPI
  153. GdipFlattenPath(GpPath *path, GpMatrix* matrix, REAL flatness);
  154. GpStatus WINGDIPAPI
  155. GdipWindingModeOutline(
  156. GpPath *path,
  157. GpMatrix *matrix,
  158. REAL flatness
  159. );
  160. GpStatus WINGDIPAPI
  161. GdipWidenPath(
  162. GpPath *nativePath,
  163. GpPen *pen,
  164. GpMatrix *matrix,
  165. REAL flatness
  166. );
  167. GpStatus WINGDIPAPI
  168. GdipWarpPath(GpPath *path, GpMatrix* matrix,
  169. GDIPCONST GpPointF *points, INT count,
  170. REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight,
  171. WarpMode warpMode, REAL flatness);
  172. GpStatus WINGDIPAPI
  173. GdipTransformPath(GpPath* path, GpMatrix* matrix);
  174. GpStatus WINGDIPAPI
  175. GdipGetPathWorldBounds(GpPath* path, GpRectF* bounds,
  176. GDIPCONST GpMatrix *matrix, GDIPCONST GpPen *pen);
  177. GpStatus WINGDIPAPI
  178. GdipGetPathWorldBoundsI(GpPath* path, GpRect* bounds,
  179. GDIPCONST GpMatrix *matrix, GDIPCONST GpPen *pen);
  180. GpStatus WINGDIPAPI
  181. GdipIsVisiblePathPoint(GpPath* path, REAL x, REAL y,
  182. GpGraphics *graphics, BOOL *result);
  183. GpStatus WINGDIPAPI
  184. GdipIsVisiblePathPointI(GpPath* path, INT x, INT y,
  185. GpGraphics *graphics, BOOL *result);
  186. GpStatus WINGDIPAPI
  187. GdipIsOutlineVisiblePathPoint(GpPath* path, REAL x, REAL y, GpPen *pen,
  188. GpGraphics *graphics, BOOL *result);
  189. GpStatus WINGDIPAPI
  190. GdipIsOutlineVisiblePathPointI(GpPath* path, INT x, INT y, GpPen *pen,
  191. GpGraphics *graphics, BOOL *result);
  192. //----------------------------------------------------------------------------
  193. // PathIterator APIs
  194. //----------------------------------------------------------------------------
  195. GpStatus WINGDIPAPI
  196. GdipCreatePathIter(GpPathIterator **iterator, GpPath* path);
  197. GpStatus WINGDIPAPI
  198. GdipDeletePathIter(GpPathIterator *iterator);
  199. GpStatus WINGDIPAPI
  200. GdipPathIterNextSubpath(GpPathIterator* iterator, INT *resultCount,
  201. INT* startIndex, INT* endIndex, BOOL* isClosed);
  202. GpStatus WINGDIPAPI
  203. GdipPathIterNextSubpathPath(GpPathIterator* iterator, INT* resultCount,
  204. GpPath* path, BOOL* isClosed);
  205. GpStatus WINGDIPAPI
  206. GdipPathIterNextPathType(GpPathIterator* iterator, INT* resultCount,
  207. BYTE* pathType, INT* startIndex, INT* endIndex);
  208. GpStatus WINGDIPAPI
  209. GdipPathIterNextMarker(GpPathIterator* iterator, INT *resultCount,
  210. INT* startIndex, INT* endIndex);
  211. GpStatus WINGDIPAPI
  212. GdipPathIterNextMarkerPath(GpPathIterator* iterator, INT* resultCount,
  213. GpPath* path);
  214. GpStatus WINGDIPAPI
  215. GdipPathIterGetCount(GpPathIterator* iterator, INT* count);
  216. GpStatus WINGDIPAPI
  217. GdipPathIterGetSubpathCount(GpPathIterator* iterator, INT* count);
  218. GpStatus WINGDIPAPI
  219. GdipPathIterIsValid(GpPathIterator* iterator, BOOL* valid);
  220. GpStatus WINGDIPAPI
  221. GdipPathIterHasCurve(GpPathIterator* iterator, BOOL* hasCurve);
  222. GpStatus WINGDIPAPI
  223. GdipPathIterRewind(GpPathIterator* iterator);
  224. GpStatus WINGDIPAPI
  225. GdipPathIterEnumerate(GpPathIterator* iterator, INT* resultCount,
  226. GpPointF *points, BYTE *types, INT count);
  227. GpStatus WINGDIPAPI
  228. GdipPathIterCopyData(GpPathIterator* iterator, INT* resultCount,
  229. GpPointF* points, BYTE* types, INT startIndex, INT endIndex);
  230. //----------------------------------------------------------------------------
  231. // Matrix APIs
  232. //----------------------------------------------------------------------------
  233. GpStatus WINGDIPAPI
  234. GdipCreateMatrix(GpMatrix **matrix);
  235. GpStatus WINGDIPAPI
  236. GdipCreateMatrix2(REAL m11, REAL m12, REAL m21, REAL m22, REAL dx,
  237. REAL dy, GpMatrix **matrix);
  238. GpStatus WINGDIPAPI
  239. GdipCreateMatrix3(GDIPCONST GpRectF *rect, GDIPCONST GpPointF *dstplg,
  240. GpMatrix **matrix);
  241. GpStatus WINGDIPAPI
  242. GdipCreateMatrix3I(GDIPCONST GpRect *rect, GDIPCONST GpPoint *dstplg,
  243. GpMatrix **matrix);
  244. GpStatus WINGDIPAPI
  245. GdipCloneMatrix(GpMatrix *matrix, GpMatrix **cloneMatrix);
  246. GpStatus WINGDIPAPI
  247. GdipDeleteMatrix(GpMatrix *matrix);
  248. GpStatus WINGDIPAPI
  249. GdipSetMatrixElements(GpMatrix *matrix, REAL m11, REAL m12, REAL m21, REAL m22,
  250. REAL dx, REAL dy);
  251. GpStatus WINGDIPAPI
  252. GdipMultiplyMatrix(GpMatrix *matrix, GpMatrix* matrix2,
  253. GpMatrixOrder order);
  254. GpStatus WINGDIPAPI
  255. GdipTranslateMatrix(GpMatrix *matrix, REAL offsetX, REAL offsetY,
  256. GpMatrixOrder order);
  257. GpStatus WINGDIPAPI
  258. GdipScaleMatrix(GpMatrix *matrix, REAL scaleX, REAL scaleY,
  259. GpMatrixOrder order);
  260. GpStatus WINGDIPAPI
  261. GdipRotateMatrix(GpMatrix *matrix, REAL angle, GpMatrixOrder order);
  262. GpStatus WINGDIPAPI
  263. GdipShearMatrix(GpMatrix *matrix, REAL shearX, REAL shearY,
  264. GpMatrixOrder order);
  265. GpStatus WINGDIPAPI
  266. GdipInvertMatrix(GpMatrix *matrix);
  267. GpStatus WINGDIPAPI
  268. GdipTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, INT count);
  269. GpStatus WINGDIPAPI
  270. GdipTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, INT count);
  271. GpStatus WINGDIPAPI
  272. GdipVectorTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts,
  273. INT count);
  274. GpStatus WINGDIPAPI
  275. GdipVectorTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts,
  276. INT count);
  277. GpStatus WINGDIPAPI
  278. GdipGetMatrixElements(GDIPCONST GpMatrix *matrix, REAL *matrixOut);
  279. GpStatus WINGDIPAPI
  280. GdipIsMatrixInvertible(GDIPCONST GpMatrix *matrix, BOOL *result);
  281. GpStatus WINGDIPAPI
  282. GdipIsMatrixIdentity(GDIPCONST GpMatrix *matrix, BOOL *result);
  283. GpStatus WINGDIPAPI
  284. GdipIsMatrixEqual(GDIPCONST GpMatrix *matrix, GDIPCONST GpMatrix *matrix2,
  285. BOOL *result);
  286. //----------------------------------------------------------------------------
  287. // Region APIs
  288. //----------------------------------------------------------------------------
  289. GpStatus WINGDIPAPI
  290. GdipCreateRegion(GpRegion **region);
  291. GpStatus WINGDIPAPI
  292. GdipCreateRegionRect(GDIPCONST GpRectF *rect, GpRegion **region);
  293. GpStatus WINGDIPAPI
  294. GdipCreateRegionRectI(GDIPCONST GpRect *rect, GpRegion **region);
  295. GpStatus WINGDIPAPI
  296. GdipCreateRegionPath(GpPath *path, GpRegion **region);
  297. GpStatus WINGDIPAPI
  298. GdipCreateRegionRgnData(GDIPCONST BYTE *regionData, INT size,
  299. GpRegion **region);
  300. GpStatus WINGDIPAPI
  301. GdipCreateRegionHrgn(HRGN hRgn, GpRegion **region);
  302. GpStatus WINGDIPAPI
  303. GdipCloneRegion(GpRegion *region, GpRegion **cloneRegion);
  304. GpStatus WINGDIPAPI
  305. GdipDeleteRegion(GpRegion *region);
  306. GpStatus WINGDIPAPI
  307. GdipSetInfinite(GpRegion *region);
  308. GpStatus WINGDIPAPI
  309. GdipSetEmpty(GpRegion *region);
  310. GpStatus WINGDIPAPI
  311. GdipCombineRegionRect(GpRegion *region, GDIPCONST GpRectF *rect,
  312. CombineMode combineMode);
  313. GpStatus WINGDIPAPI
  314. GdipCombineRegionRectI(GpRegion *region, GDIPCONST GpRect *rect,
  315. CombineMode combineMode);
  316. GpStatus WINGDIPAPI
  317. GdipCombineRegionPath(GpRegion *region, GpPath *path, CombineMode combineMode);
  318. GpStatus WINGDIPAPI
  319. GdipCombineRegionRegion(GpRegion *region, GpRegion *region2,
  320. CombineMode combineMode);
  321. GpStatus WINGDIPAPI
  322. GdipTranslateRegion(GpRegion *region, REAL dx, REAL dy);
  323. GpStatus WINGDIPAPI
  324. GdipTranslateRegionI(GpRegion *region, INT dx, INT dy);
  325. GpStatus WINGDIPAPI
  326. GdipTransformRegion(GpRegion *region, GpMatrix *matrix);
  327. GpStatus WINGDIPAPI
  328. GdipGetRegionBounds(GpRegion *region, GpGraphics *graphics,
  329. GpRectF *rect);
  330. GpStatus WINGDIPAPI
  331. GdipGetRegionBoundsI(GpRegion *region, GpGraphics *graphics,
  332. GpRect *rect);
  333. GpStatus WINGDIPAPI
  334. GdipGetRegionHRgn(GpRegion *region, GpGraphics *graphics, HRGN *hRgn);
  335. GpStatus WINGDIPAPI
  336. GdipIsEmptyRegion(GpRegion *region, GpGraphics *graphics,
  337. BOOL *result);
  338. GpStatus WINGDIPAPI
  339. GdipIsInfiniteRegion(GpRegion *region, GpGraphics *graphics,
  340. BOOL *result);
  341. GpStatus WINGDIPAPI
  342. GdipIsEqualRegion(GpRegion *region, GpRegion *region2,
  343. GpGraphics *graphics, BOOL *result);
  344. GpStatus WINGDIPAPI
  345. GdipGetRegionDataSize(GpRegion *region, UINT * bufferSize);
  346. GpStatus WINGDIPAPI
  347. GdipGetRegionData(GpRegion *region, BYTE * buffer, UINT bufferSize,
  348. UINT * sizeFilled);
  349. GpStatus WINGDIPAPI
  350. GdipIsVisibleRegionPoint(GpRegion *region, REAL x, REAL y,
  351. GpGraphics *graphics, BOOL *result);
  352. GpStatus WINGDIPAPI
  353. GdipIsVisibleRegionPointI(GpRegion *region, INT x, INT y,
  354. GpGraphics *graphics, BOOL *result);
  355. GpStatus WINGDIPAPI
  356. GdipIsVisibleRegionRect(GpRegion *region, REAL x, REAL y, REAL width,
  357. REAL height, GpGraphics *graphics, BOOL *result);
  358. GpStatus WINGDIPAPI
  359. GdipIsVisibleRegionRectI(GpRegion *region, INT x, INT y, INT width,
  360. INT height, GpGraphics *graphics, BOOL *result);
  361. GpStatus WINGDIPAPI
  362. GdipGetRegionScansCount(GpRegion *region, UINT* count, GpMatrix* matrix);
  363. GpStatus WINGDIPAPI
  364. GdipGetRegionScans(GpRegion *region, GpRectF* rects, INT* count,
  365. GpMatrix* matrix);
  366. GpStatus WINGDIPAPI
  367. GdipGetRegionScansI(GpRegion *region, GpRect* rects, INT* count,
  368. GpMatrix* matrix);
  369. //----------------------------------------------------------------------------
  370. // Brush APIs
  371. //----------------------------------------------------------------------------
  372. GpStatus WINGDIPAPI
  373. GdipCloneBrush(GpBrush *brush, GpBrush **cloneBrush);
  374. GpStatus WINGDIPAPI
  375. GdipDeleteBrush(GpBrush *brush);
  376. GpStatus WINGDIPAPI
  377. GdipGetBrushType(GpBrush *brush, GpBrushType *type);
  378. //----------------------------------------------------------------------------
  379. // HatchBrush APIs
  380. //----------------------------------------------------------------------------
  381. GpStatus WINGDIPAPI
  382. GdipCreateHatchBrush(GpHatchStyle hatchstyle, ARGB forecol,
  383. ARGB backcol, GpHatch **brush);
  384. GpStatus WINGDIPAPI
  385. GdipGetHatchStyle(GpHatch *brush, GpHatchStyle *hatchstyle);
  386. GpStatus WINGDIPAPI
  387. GdipGetHatchForegroundColor(GpHatch *brush, ARGB* forecol);
  388. GpStatus WINGDIPAPI
  389. GdipGetHatchBackgroundColor(GpHatch *brush, ARGB* backcol);
  390. //----------------------------------------------------------------------------
  391. // TextureBrush APIs
  392. //----------------------------------------------------------------------------
  393. GpStatus WINGDIPAPI
  394. GdipCreateTexture(GpImage *image, GpWrapMode wrapmode,
  395. GpTexture **texture);
  396. GpStatus WINGDIPAPI
  397. GdipCreateTexture2(GpImage *image, GpWrapMode wrapmode, REAL x,
  398. REAL y, REAL width, REAL height, GpTexture **texture);
  399. GpStatus WINGDIPAPI
  400. GdipCreateTextureIA(GpImage *image,
  401. GDIPCONST GpImageAttributes *imageAttributes,
  402. REAL x, REAL y, REAL width, REAL height,
  403. GpTexture **texture);
  404. GpStatus WINGDIPAPI
  405. GdipCreateTexture2I(GpImage *image, GpWrapMode wrapmode, INT x,
  406. INT y, INT width, INT height, GpTexture **texture);
  407. GpStatus WINGDIPAPI
  408. GdipCreateTextureIAI(GpImage *image,
  409. GDIPCONST GpImageAttributes *imageAttributes,
  410. INT x, INT y, INT width, INT height,
  411. GpTexture **texture);
  412. GpStatus WINGDIPAPI
  413. GdipGetTextureTransform(GpTexture *brush, GpMatrix *matrix);
  414. GpStatus WINGDIPAPI
  415. GdipSetTextureTransform(GpTexture *brush, GDIPCONST GpMatrix *matrix);
  416. GpStatus WINGDIPAPI
  417. GdipResetTextureTransform(GpTexture* brush);
  418. GpStatus WINGDIPAPI
  419. GdipMultiplyTextureTransform(GpTexture* brush, GDIPCONST GpMatrix *matrix,
  420. GpMatrixOrder order);
  421. GpStatus WINGDIPAPI
  422. GdipTranslateTextureTransform(GpTexture* brush, REAL dx, REAL dy,
  423. GpMatrixOrder order);
  424. GpStatus WINGDIPAPI
  425. GdipScaleTextureTransform(GpTexture* brush, REAL sx, REAL sy,
  426. GpMatrixOrder order);
  427. GpStatus WINGDIPAPI
  428. GdipRotateTextureTransform(GpTexture* brush, REAL angle, GpMatrixOrder order);
  429. GpStatus WINGDIPAPI
  430. GdipSetTextureWrapMode(GpTexture *brush, GpWrapMode wrapmode);
  431. GpStatus WINGDIPAPI
  432. GdipGetTextureWrapMode(GpTexture *brush, GpWrapMode *wrapmode);
  433. GpStatus WINGDIPAPI
  434. GdipGetTextureImage(GpTexture *brush, GpImage **image);
  435. //----------------------------------------------------------------------------
  436. // SolidBrush APIs
  437. //----------------------------------------------------------------------------
  438. GpStatus WINGDIPAPI
  439. GdipCreateSolidFill(ARGB color, GpSolidFill **brush);
  440. GpStatus WINGDIPAPI
  441. GdipSetSolidFillColor(GpSolidFill *brush, ARGB color);
  442. GpStatus WINGDIPAPI
  443. GdipGetSolidFillColor(GpSolidFill *brush, ARGB *color);
  444. //----------------------------------------------------------------------------
  445. // LineBrush APIs
  446. //----------------------------------------------------------------------------
  447. GpStatus WINGDIPAPI
  448. GdipCreateLineBrush(GDIPCONST GpPointF* point1,
  449. GDIPCONST GpPointF* point2,
  450. ARGB color1, ARGB color2,
  451. GpWrapMode wrapMode,
  452. GpLineGradient **lineGradient);
  453. GpStatus WINGDIPAPI
  454. GdipCreateLineBrushI(GDIPCONST GpPoint* point1,
  455. GDIPCONST GpPoint* point2,
  456. ARGB color1, ARGB color2,
  457. GpWrapMode wrapMode,
  458. GpLineGradient **lineGradient);
  459. GpStatus WINGDIPAPI
  460. GdipCreateLineBrushFromRect(GDIPCONST GpRectF* rect,
  461. ARGB color1, ARGB color2,
  462. LinearGradientMode mode,
  463. GpWrapMode wrapMode,
  464. GpLineGradient **lineGradient);
  465. GpStatus WINGDIPAPI
  466. GdipCreateLineBrushFromRectI(GDIPCONST GpRect* rect,
  467. ARGB color1, ARGB color2,
  468. LinearGradientMode mode,
  469. GpWrapMode wrapMode,
  470. GpLineGradient **lineGradient);
  471. GpStatus WINGDIPAPI
  472. GdipCreateLineBrushFromRectWithAngle(GDIPCONST GpRectF* rect,
  473. ARGB color1, ARGB color2,
  474. REAL angle,
  475. BOOL isAngleScalable,
  476. GpWrapMode wrapMode,
  477. GpLineGradient **lineGradient);
  478. GpStatus WINGDIPAPI
  479. GdipCreateLineBrushFromRectWithAngleI(GDIPCONST GpRect* rect,
  480. ARGB color1, ARGB color2,
  481. REAL angle,
  482. BOOL isAngleScalable,
  483. GpWrapMode wrapMode,
  484. GpLineGradient **lineGradient);
  485. GpStatus WINGDIPAPI
  486. GdipSetLineColors(GpLineGradient *brush, ARGB color1, ARGB color2);
  487. GpStatus WINGDIPAPI
  488. GdipGetLineColors(GpLineGradient *brush, ARGB* colors);
  489. GpStatus WINGDIPAPI
  490. GdipGetLineRect(GpLineGradient *brush, GpRectF *rect);
  491. GpStatus WINGDIPAPI
  492. GdipGetLineRectI(GpLineGradient *brush, GpRect *rect);
  493. GpStatus WINGDIPAPI
  494. GdipSetLineGammaCorrection(GpLineGradient *brush, BOOL useGammaCorrection);
  495. GpStatus WINGDIPAPI
  496. GdipGetLineGammaCorrection(GpLineGradient *brush, BOOL *useGammaCorrection);
  497. GpStatus WINGDIPAPI
  498. GdipGetLineBlendCount(GpLineGradient *brush, INT *count);
  499. GpStatus WINGDIPAPI
  500. GdipGetLineBlend(GpLineGradient *brush, REAL *blend, REAL* positions,
  501. INT count);
  502. GpStatus WINGDIPAPI
  503. GdipSetLineBlend(GpLineGradient *brush, GDIPCONST REAL *blend,
  504. GDIPCONST REAL* positions, INT count);
  505. GpStatus WINGDIPAPI
  506. GdipGetLinePresetBlendCount(GpLineGradient *brush, INT *count);
  507. GpStatus WINGDIPAPI
  508. GdipGetLinePresetBlend(GpLineGradient *brush, ARGB *blend,
  509. REAL* positions, INT count);
  510. GpStatus WINGDIPAPI
  511. GdipSetLinePresetBlend(GpLineGradient *brush, GDIPCONST ARGB *blend,
  512. GDIPCONST REAL* positions, INT count);
  513. GpStatus WINGDIPAPI
  514. GdipSetLineSigmaBlend(GpLineGradient *brush, REAL focus, REAL scale);
  515. GpStatus WINGDIPAPI
  516. GdipSetLineLinearBlend(GpLineGradient *brush, REAL focus, REAL scale);
  517. GpStatus WINGDIPAPI
  518. GdipSetLineWrapMode(GpLineGradient *brush, GpWrapMode wrapmode);
  519. GpStatus WINGDIPAPI
  520. GdipGetLineWrapMode(GpLineGradient *brush, GpWrapMode *wrapmode);
  521. GpStatus WINGDIPAPI
  522. GdipGetLineTransform(GpLineGradient *brush, GpMatrix *matrix);
  523. GpStatus WINGDIPAPI
  524. GdipSetLineTransform(GpLineGradient *brush, GDIPCONST GpMatrix *matrix);
  525. GpStatus WINGDIPAPI
  526. GdipResetLineTransform(GpLineGradient* brush);
  527. GpStatus WINGDIPAPI
  528. GdipMultiplyLineTransform(GpLineGradient* brush, GDIPCONST GpMatrix *matrix,
  529. GpMatrixOrder order);
  530. GpStatus WINGDIPAPI
  531. GdipTranslateLineTransform(GpLineGradient* brush, REAL dx, REAL dy,
  532. GpMatrixOrder order);
  533. GpStatus WINGDIPAPI
  534. GdipScaleLineTransform(GpLineGradient* brush, REAL sx, REAL sy,
  535. GpMatrixOrder order);
  536. GpStatus WINGDIPAPI
  537. GdipRotateLineTransform(GpLineGradient* brush, REAL angle,
  538. GpMatrixOrder order);
  539. //----------------------------------------------------------------------------
  540. // PathGradientBrush APIs
  541. //----------------------------------------------------------------------------
  542. GpStatus WINGDIPAPI
  543. GdipCreatePathGradient(GDIPCONST GpPointF* points,
  544. INT count,
  545. GpWrapMode wrapMode,
  546. GpPathGradient **polyGradient);
  547. GpStatus WINGDIPAPI
  548. GdipCreatePathGradientI(GDIPCONST GpPoint* points,
  549. INT count,
  550. GpWrapMode wrapMode,
  551. GpPathGradient **polyGradient);
  552. GpStatus WINGDIPAPI
  553. GdipCreatePathGradientFromPath(GDIPCONST GpPath* path,
  554. GpPathGradient **polyGradient);
  555. GpStatus WINGDIPAPI
  556. GdipGetPathGradientCenterColor(
  557. GpPathGradient *brush, ARGB* colors);
  558. GpStatus WINGDIPAPI
  559. GdipSetPathGradientCenterColor(
  560. GpPathGradient *brush, ARGB colors);
  561. GpStatus WINGDIPAPI
  562. GdipGetPathGradientSurroundColorsWithCount(
  563. GpPathGradient *brush, ARGB* color, INT* count);
  564. GpStatus WINGDIPAPI
  565. GdipSetPathGradientSurroundColorsWithCount(
  566. GpPathGradient *brush,
  567. GDIPCONST ARGB* color, INT* count);
  568. GpStatus WINGDIPAPI
  569. GdipGetPathGradientPath(GpPathGradient *brush, GpPath *path);
  570. GpStatus WINGDIPAPI
  571. GdipSetPathGradientPath(GpPathGradient *brush, GDIPCONST GpPath *path);
  572. GpStatus WINGDIPAPI
  573. GdipGetPathGradientCenterPoint(
  574. GpPathGradient *brush, GpPointF* points);
  575. GpStatus WINGDIPAPI
  576. GdipGetPathGradientCenterPointI(
  577. GpPathGradient *brush, GpPoint* points);
  578. GpStatus WINGDIPAPI
  579. GdipSetPathGradientCenterPoint(
  580. GpPathGradient *brush, GDIPCONST GpPointF* points);
  581. GpStatus WINGDIPAPI
  582. GdipSetPathGradientCenterPointI(
  583. GpPathGradient *brush, GDIPCONST GpPoint* points);
  584. GpStatus WINGDIPAPI
  585. GdipGetPathGradientRect(GpPathGradient *brush, GpRectF *rect);
  586. GpStatus WINGDIPAPI
  587. GdipGetPathGradientRectI(GpPathGradient *brush, GpRect *rect);
  588. GpStatus WINGDIPAPI
  589. GdipGetPathGradientPointCount(GpPathGradient *brush, INT* count);
  590. GpStatus WINGDIPAPI
  591. GdipGetPathGradientSurroundColorCount(GpPathGradient *brush, INT* count);
  592. GpStatus WINGDIPAPI
  593. GdipSetPathGradientGammaCorrection(GpPathGradient *brush,
  594. BOOL useGammaCorrection);
  595. GpStatus WINGDIPAPI
  596. GdipGetPathGradientGammaCorrection(GpPathGradient *brush,
  597. BOOL *useGammaCorrection);
  598. GpStatus WINGDIPAPI
  599. GdipGetPathGradientBlendCount(GpPathGradient *brush,
  600. INT *count);
  601. GpStatus WINGDIPAPI
  602. GdipGetPathGradientBlend(GpPathGradient *brush,
  603. REAL *blend, REAL *positions, INT count);
  604. GpStatus WINGDIPAPI
  605. GdipSetPathGradientBlend(GpPathGradient *brush,
  606. GDIPCONST REAL *blend, GDIPCONST REAL *positions, INT count);
  607. GpStatus WINGDIPAPI
  608. GdipGetPathGradientPresetBlendCount(GpPathGradient *brush, INT *count);
  609. GpStatus WINGDIPAPI
  610. GdipGetPathGradientPresetBlend(GpPathGradient *brush, ARGB *blend,
  611. REAL* positions, INT count);
  612. GpStatus WINGDIPAPI
  613. GdipSetPathGradientPresetBlend(GpPathGradient *brush, GDIPCONST ARGB *blend,
  614. GDIPCONST REAL* positions, INT count);
  615. GpStatus WINGDIPAPI
  616. GdipSetPathGradientSigmaBlend(GpPathGradient *brush, REAL focus, REAL scale);
  617. GpStatus WINGDIPAPI
  618. GdipSetPathGradientLinearBlend(GpPathGradient *brush, REAL focus, REAL scale);
  619. GpStatus WINGDIPAPI
  620. GdipGetPathGradientWrapMode(GpPathGradient *brush,
  621. GpWrapMode *wrapmode);
  622. GpStatus WINGDIPAPI
  623. GdipSetPathGradientWrapMode(GpPathGradient *brush,
  624. GpWrapMode wrapmode);
  625. GpStatus WINGDIPAPI
  626. GdipGetPathGradientTransform(GpPathGradient *brush,
  627. GpMatrix *matrix);
  628. GpStatus WINGDIPAPI
  629. GdipSetPathGradientTransform(GpPathGradient *brush,
  630. GpMatrix *matrix);
  631. GpStatus WINGDIPAPI
  632. GdipResetPathGradientTransform(GpPathGradient* brush);
  633. GpStatus WINGDIPAPI
  634. GdipMultiplyPathGradientTransform(GpPathGradient* brush,
  635. GDIPCONST GpMatrix *matrix,
  636. GpMatrixOrder order);
  637. GpStatus WINGDIPAPI
  638. GdipTranslatePathGradientTransform(GpPathGradient* brush, REAL dx, REAL dy,
  639. GpMatrixOrder order);
  640. GpStatus WINGDIPAPI
  641. GdipScalePathGradientTransform(GpPathGradient* brush, REAL sx, REAL sy,
  642. GpMatrixOrder order);
  643. GpStatus WINGDIPAPI
  644. GdipRotatePathGradientTransform(GpPathGradient* brush, REAL angle,
  645. GpMatrixOrder order);
  646. GpStatus WINGDIPAPI
  647. GdipGetPathGradientFocusScales(GpPathGradient *brush, REAL* xScale,
  648. REAL* yScale);
  649. GpStatus WINGDIPAPI
  650. GdipSetPathGradientFocusScales(GpPathGradient *brush, REAL xScale,
  651. REAL yScale);
  652. //----------------------------------------------------------------------------
  653. // Pen APIs
  654. //----------------------------------------------------------------------------
  655. GpStatus WINGDIPAPI
  656. GdipCreatePen1(ARGB color, REAL width, GpUnit unit, GpPen **pen);
  657. GpStatus WINGDIPAPI
  658. GdipCreatePen2(GpBrush *brush, REAL width, GpUnit unit,
  659. GpPen **pen);
  660. GpStatus WINGDIPAPI
  661. GdipClonePen(GpPen *pen, GpPen **clonepen);
  662. GpStatus WINGDIPAPI
  663. GdipDeletePen(GpPen *pen);
  664. GpStatus WINGDIPAPI
  665. GdipSetPenWidth(GpPen *pen, REAL width);
  666. GpStatus WINGDIPAPI
  667. GdipGetPenWidth(GpPen *pen, REAL *width);
  668. GpStatus WINGDIPAPI
  669. GdipSetPenUnit(GpPen *pen, GpUnit unit);
  670. GpStatus WINGDIPAPI
  671. GdipGetPenUnit(GpPen *pen, GpUnit *unit);
  672. GpStatus WINGDIPAPI
  673. GdipSetPenLineCap197819(GpPen *pen, GpLineCap startCap, GpLineCap endCap,
  674. GpDashCap dashCap);
  675. GpStatus WINGDIPAPI
  676. GdipSetPenStartCap(GpPen *pen, GpLineCap startCap);
  677. GpStatus WINGDIPAPI
  678. GdipSetPenEndCap(GpPen *pen, GpLineCap endCap);
  679. GpStatus WINGDIPAPI
  680. GdipSetPenDashCap197819(GpPen *pen, GpDashCap dashCap);
  681. GpStatus WINGDIPAPI
  682. GdipGetPenStartCap(GpPen *pen, GpLineCap *startCap);
  683. GpStatus WINGDIPAPI
  684. GdipGetPenEndCap(GpPen *pen, GpLineCap *endCap);
  685. GpStatus WINGDIPAPI
  686. GdipGetPenDashCap197819(GpPen *pen, GpDashCap *dashCap);
  687. GpStatus WINGDIPAPI
  688. GdipSetPenLineJoin(GpPen *pen, GpLineJoin lineJoin);
  689. GpStatus WINGDIPAPI
  690. GdipGetPenLineJoin(GpPen *pen, GpLineJoin *lineJoin);
  691. GpStatus WINGDIPAPI
  692. GdipSetPenCustomStartCap(GpPen *pen, GpCustomLineCap* customCap);
  693. GpStatus WINGDIPAPI
  694. GdipGetPenCustomStartCap(GpPen *pen, GpCustomLineCap** customCap);
  695. GpStatus WINGDIPAPI
  696. GdipSetPenCustomEndCap(GpPen *pen, GpCustomLineCap* customCap);
  697. GpStatus WINGDIPAPI
  698. GdipGetPenCustomEndCap(GpPen *pen, GpCustomLineCap** customCap);
  699. GpStatus WINGDIPAPI
  700. GdipSetPenMiterLimit(GpPen *pen, REAL miterLimit);
  701. GpStatus WINGDIPAPI
  702. GdipGetPenMiterLimit(GpPen *pen, REAL *miterLimit);
  703. GpStatus WINGDIPAPI
  704. GdipSetPenMode(GpPen *pen, GpPenAlignment penMode);
  705. GpStatus WINGDIPAPI
  706. GdipGetPenMode(GpPen *pen, GpPenAlignment *penMode);
  707. GpStatus WINGDIPAPI
  708. GdipSetPenTransform(GpPen *pen, GpMatrix *matrix);
  709. GpStatus WINGDIPAPI
  710. GdipGetPenTransform(GpPen *pen, GpMatrix *matrix);
  711. GpStatus WINGDIPAPI
  712. GdipResetPenTransform(GpPen *pen);
  713. GpStatus WINGDIPAPI
  714. GdipMultiplyPenTransform(GpPen *pen, GDIPCONST GpMatrix *matrix,
  715. GpMatrixOrder order);
  716. GpStatus WINGDIPAPI
  717. GdipTranslatePenTransform(GpPen *pen, REAL dx, REAL dy,
  718. GpMatrixOrder order);
  719. GpStatus WINGDIPAPI
  720. GdipScalePenTransform(GpPen *pen, REAL sx, REAL sy,
  721. GpMatrixOrder order);
  722. GpStatus WINGDIPAPI
  723. GdipRotatePenTransform(GpPen *pen, REAL angle, GpMatrixOrder order);
  724. GpStatus WINGDIPAPI
  725. GdipSetPenColor(GpPen *pen, ARGB argb);
  726. GpStatus WINGDIPAPI
  727. GdipGetPenColor(GpPen *pen, ARGB *argb);
  728. GpStatus WINGDIPAPI
  729. GdipSetPenBrushFill(GpPen *pen, GpBrush *brush);
  730. GpStatus WINGDIPAPI
  731. GdipGetPenBrushFill(GpPen *pen, GpBrush **brush);
  732. GpStatus WINGDIPAPI
  733. GdipGetPenFillType(GpPen *pen, GpPenType* type);
  734. GpStatus WINGDIPAPI
  735. GdipGetPenDashStyle(GpPen *pen, GpDashStyle *dashstyle);
  736. GpStatus WINGDIPAPI
  737. GdipSetPenDashStyle(GpPen *pen, GpDashStyle dashstyle);
  738. GpStatus WINGDIPAPI
  739. GdipGetPenDashOffset(GpPen *pen, REAL *offset);
  740. GpStatus WINGDIPAPI
  741. GdipSetPenDashOffset(GpPen *pen, REAL offset);
  742. GpStatus WINGDIPAPI
  743. GdipGetPenDashCount(GpPen *pen, INT *count);
  744. GpStatus WINGDIPAPI
  745. GdipSetPenDashArray(GpPen *pen, GDIPCONST REAL *dash, INT count);
  746. GpStatus WINGDIPAPI
  747. GdipGetPenDashArray(GpPen *pen, REAL *dash, INT count);
  748. GpStatus WINGDIPAPI
  749. GdipGetPenCompoundCount(GpPen *pen, INT *count);
  750. GpStatus WINGDIPAPI
  751. GdipSetPenCompoundArray(GpPen *pen, GDIPCONST REAL *dash, INT count);
  752. GpStatus WINGDIPAPI
  753. GdipGetPenCompoundArray(GpPen *pen, REAL *dash, INT count);
  754. //----------------------------------------------------------------------------
  755. // CustomLineCap APIs
  756. //----------------------------------------------------------------------------
  757. GpStatus WINGDIPAPI
  758. GdipCreateCustomLineCap(GpPath* fillPath, GpPath* strokePath,
  759. GpLineCap baseCap, REAL baseInset, GpCustomLineCap **customCap);
  760. GpStatus WINGDIPAPI
  761. GdipDeleteCustomLineCap(GpCustomLineCap* customCap);
  762. GpStatus WINGDIPAPI
  763. GdipCloneCustomLineCap(GpCustomLineCap* customCap,
  764. GpCustomLineCap** clonedCap);
  765. GpStatus WINGDIPAPI
  766. GdipGetCustomLineCapType(GpCustomLineCap* customCap,
  767. CustomLineCapType* capType);
  768. GpStatus WINGDIPAPI
  769. GdipSetCustomLineCapStrokeCaps(GpCustomLineCap* customCap,
  770. GpLineCap startCap, GpLineCap endCap);
  771. GpStatus WINGDIPAPI
  772. GdipGetCustomLineCapStrokeCaps(GpCustomLineCap* customCap,
  773. GpLineCap* startCap, GpLineCap* endCap);
  774. GpStatus WINGDIPAPI
  775. GdipSetCustomLineCapStrokeJoin(GpCustomLineCap* customCap,
  776. GpLineJoin lineJoin);
  777. GpStatus WINGDIPAPI
  778. GdipGetCustomLineCapStrokeJoin(GpCustomLineCap* customCap,
  779. GpLineJoin* lineJoin);
  780. GpStatus WINGDIPAPI
  781. GdipSetCustomLineCapBaseCap(GpCustomLineCap* customCap, GpLineCap baseCap);
  782. GpStatus WINGDIPAPI
  783. GdipGetCustomLineCapBaseCap(GpCustomLineCap* customCap, GpLineCap* baseCap);
  784. GpStatus WINGDIPAPI
  785. GdipSetCustomLineCapBaseInset(GpCustomLineCap* customCap, REAL inset);
  786. GpStatus WINGDIPAPI
  787. GdipGetCustomLineCapBaseInset(GpCustomLineCap* customCap, REAL* inset);
  788. GpStatus WINGDIPAPI
  789. GdipSetCustomLineCapWidthScale(GpCustomLineCap* customCap, REAL widthScale);
  790. GpStatus WINGDIPAPI
  791. GdipGetCustomLineCapWidthScale(GpCustomLineCap* customCap, REAL* widthScale);
  792. //----------------------------------------------------------------------------
  793. // AdjustableArrowCap APIs
  794. //----------------------------------------------------------------------------
  795. GpStatus WINGDIPAPI
  796. GdipCreateAdjustableArrowCap(REAL height, REAL width, BOOL isFilled,
  797. GpAdjustableArrowCap **cap);
  798. GpStatus WINGDIPAPI
  799. GdipSetAdjustableArrowCapHeight(GpAdjustableArrowCap* cap, REAL height);
  800. GpStatus WINGDIPAPI
  801. GdipGetAdjustableArrowCapHeight(GpAdjustableArrowCap* cap, REAL* height);
  802. GpStatus WINGDIPAPI
  803. GdipSetAdjustableArrowCapWidth(GpAdjustableArrowCap* cap, REAL width);
  804. GpStatus WINGDIPAPI
  805. GdipGetAdjustableArrowCapWidth(GpAdjustableArrowCap* cap, REAL* width);
  806. GpStatus WINGDIPAPI
  807. GdipSetAdjustableArrowCapMiddleInset(GpAdjustableArrowCap* cap,
  808. REAL middleInset);
  809. GpStatus WINGDIPAPI
  810. GdipGetAdjustableArrowCapMiddleInset(GpAdjustableArrowCap* cap,
  811. REAL* middleInset);
  812. GpStatus WINGDIPAPI
  813. GdipSetAdjustableArrowCapFillState(GpAdjustableArrowCap* cap, BOOL fillState);
  814. GpStatus WINGDIPAPI
  815. GdipGetAdjustableArrowCapFillState(GpAdjustableArrowCap* cap, BOOL* fillState);
  816. //----------------------------------------------------------------------------
  817. // Image APIs
  818. //----------------------------------------------------------------------------
  819. GpStatus WINGDIPAPI
  820. GdipLoadImageFromStream(IStream* stream, GpImage **image);
  821. GpStatus WINGDIPAPI
  822. GdipLoadImageFromFile(GDIPCONST WCHAR* filename, GpImage **image);
  823. GpStatus WINGDIPAPI
  824. GdipLoadImageFromStreamICM(IStream* stream, GpImage **image);
  825. GpStatus WINGDIPAPI
  826. GdipLoadImageFromFileICM(GDIPCONST WCHAR* filename, GpImage **image);
  827. GpStatus WINGDIPAPI
  828. GdipCloneImage(GpImage *image, GpImage **cloneImage);
  829. GpStatus WINGDIPAPI
  830. GdipDisposeImage(GpImage *image);
  831. GpStatus WINGDIPAPI
  832. GdipSaveImageToFile(GpImage *image, GDIPCONST WCHAR* filename,
  833. GDIPCONST CLSID* clsidEncoder,
  834. GDIPCONST EncoderParameters* encoderParams);
  835. GpStatus WINGDIPAPI
  836. GdipSaveImageToStream(GpImage *image, IStream* stream,
  837. GDIPCONST CLSID* clsidEncoder,
  838. GDIPCONST EncoderParameters* encoderParams);
  839. GpStatus WINGDIPAPI
  840. GdipSaveAdd(GpImage *image, GDIPCONST EncoderParameters* encoderParams);
  841. GpStatus WINGDIPAPI
  842. GdipSaveAddImage(GpImage *image, GpImage* newImage,
  843. GDIPCONST EncoderParameters* encoderParams);
  844. GpStatus WINGDIPAPI
  845. GdipGetImageGraphicsContext(GpImage *image, GpGraphics **graphics);
  846. GpStatus WINGDIPAPI
  847. GdipGetImageBounds(GpImage *image, GpRectF *srcRect, GpUnit *srcUnit);
  848. GpStatus WINGDIPAPI
  849. GdipGetImageDimension(GpImage *image, REAL *width, REAL *height);
  850. GpStatus WINGDIPAPI
  851. GdipGetImageType(GpImage *image, ImageType *type);
  852. GpStatus WINGDIPAPI
  853. GdipGetImageWidth(GpImage *image, UINT *width);
  854. GpStatus WINGDIPAPI
  855. GdipGetImageHeight(GpImage *image, UINT *height);
  856. GpStatus WINGDIPAPI
  857. GdipGetImageHorizontalResolution(GpImage *image, REAL *resolution);
  858. GpStatus WINGDIPAPI
  859. GdipGetImageVerticalResolution(GpImage *image, REAL *resolution);
  860. GpStatus WINGDIPAPI
  861. GdipGetImageFlags(GpImage *image, UINT *flags);
  862. GpStatus WINGDIPAPI
  863. GdipGetImageRawFormat(GpImage *image, GUID *format);
  864. GpStatus WINGDIPAPI
  865. GdipGetImagePixelFormat(GpImage *image, PixelFormat *format);
  866. GpStatus WINGDIPAPI
  867. GdipGetImageThumbnail(GpImage *image, UINT thumbWidth, UINT thumbHeight,
  868. GpImage **thumbImage,
  869. GetThumbnailImageAbort callback, VOID * callbackData);
  870. GpStatus WINGDIPAPI
  871. GdipGetEncoderParameterListSize(GpImage *image, GDIPCONST CLSID* clsidEncoder,
  872. UINT* size);
  873. GpStatus WINGDIPAPI
  874. GdipGetEncoderParameterList(GpImage *image, GDIPCONST CLSID* clsidEncoder,
  875. UINT size, EncoderParameters* buffer);
  876. GpStatus WINGDIPAPI
  877. GdipImageGetFrameDimensionsCount(GpImage* image, UINT* count);
  878. GpStatus WINGDIPAPI
  879. GdipImageGetFrameDimensionsList(GpImage* image, GUID* dimensionIDs,
  880. UINT count);
  881. GpStatus WINGDIPAPI
  882. GdipImageGetFrameCount(GpImage *image, GDIPCONST GUID* dimensionID,
  883. UINT* count);
  884. GpStatus WINGDIPAPI
  885. GdipImageSelectActiveFrame(GpImage *image, GDIPCONST GUID* dimensionID,
  886. UINT frameIndex);
  887. GpStatus WINGDIPAPI
  888. GdipImageRotateFlip(GpImage *image, RotateFlipType rfType);
  889. GpStatus WINGDIPAPI
  890. GdipGetImagePalette(GpImage *image, ColorPalette *palette, INT size);
  891. GpStatus WINGDIPAPI
  892. GdipSetImagePalette(GpImage *image, GDIPCONST ColorPalette *palette);
  893. GpStatus WINGDIPAPI
  894. GdipGetImagePaletteSize(GpImage *image, INT *size);
  895. GpStatus WINGDIPAPI
  896. GdipGetPropertyCount(GpImage *image, UINT* numOfProperty);
  897. GpStatus WINGDIPAPI
  898. GdipGetPropertyIdList(GpImage *image, UINT numOfProperty, PROPID* list);
  899. GpStatus WINGDIPAPI
  900. GdipGetPropertyItemSize(GpImage *image, PROPID propId, UINT* size);
  901. GpStatus WINGDIPAPI
  902. GdipGetPropertyItem(GpImage *image, PROPID propId,UINT propSize,
  903. PropertyItem* buffer);
  904. GpStatus WINGDIPAPI
  905. GdipGetPropertySize(GpImage *image, UINT* totalBufferSize,
  906. UINT* numProperties);
  907. GpStatus WINGDIPAPI
  908. GdipGetAllPropertyItems(GpImage *image, UINT totalBufferSize,
  909. UINT numProperties, PropertyItem* allItems);
  910. GpStatus WINGDIPAPI
  911. GdipRemovePropertyItem(GpImage *image, PROPID propId);
  912. GpStatus WINGDIPAPI
  913. GdipSetPropertyItem(GpImage *image, GDIPCONST PropertyItem* item);
  914. GpStatus WINGDIPAPI
  915. GdipImageForceValidation(GpImage *image);
  916. //----------------------------------------------------------------------------
  917. // Bitmap APIs
  918. //----------------------------------------------------------------------------
  919. GpStatus WINGDIPAPI
  920. GdipCreateBitmapFromStream(IStream* stream, GpBitmap **bitmap);
  921. GpStatus WINGDIPAPI
  922. GdipCreateBitmapFromFile(GDIPCONST WCHAR* filename, GpBitmap **bitmap);
  923. GpStatus WINGDIPAPI
  924. GdipCreateBitmapFromStreamICM(IStream* stream, GpBitmap **bitmap);
  925. GpStatus WINGDIPAPI
  926. GdipCreateBitmapFromFileICM(GDIPCONST WCHAR* filename, GpBitmap **bitmap);
  927. GpStatus WINGDIPAPI
  928. GdipCreateBitmapFromScan0(INT width,
  929. INT height,
  930. INT stride,
  931. PixelFormat format,
  932. BYTE* scan0,
  933. GpBitmap** bitmap);
  934. GpStatus WINGDIPAPI
  935. GdipCreateBitmapFromGraphics(INT width,
  936. INT height,
  937. GpGraphics* target,
  938. GpBitmap** bitmap);
  939. GpStatus WINGDIPAPI
  940. GdipCreateBitmapFromDirectDrawSurface(IDirectDrawSurface7* surface,
  941. GpBitmap** bitmap);
  942. GpStatus WINGDIPAPI
  943. GdipCreateBitmapFromGdiDib(GDIPCONST BITMAPINFO* gdiBitmapInfo,
  944. VOID* gdiBitmapData,
  945. GpBitmap** bitmap);
  946. GpStatus WINGDIPAPI
  947. GdipCreateBitmapFromHBITMAP(HBITMAP hbm,
  948. HPALETTE hpal,
  949. GpBitmap** bitmap);
  950. GpStatus WINGDIPAPI
  951. GdipCreateHBITMAPFromBitmap(GpBitmap* bitmap,
  952. HBITMAP* hbmReturn,
  953. ARGB background);
  954. GpStatus WINGDIPAPI
  955. GdipCreateBitmapFromHICON(HICON hicon,
  956. GpBitmap** bitmap);
  957. GpStatus WINGDIPAPI
  958. GdipCreateHICONFromBitmap(GpBitmap* bitmap,
  959. HICON* hbmReturn);
  960. GpStatus WINGDIPAPI
  961. GdipCreateBitmapFromResource(HINSTANCE hInstance,
  962. GDIPCONST WCHAR* lpBitmapName,
  963. GpBitmap** bitmap);
  964. GpStatus WINGDIPAPI
  965. GdipCloneBitmapArea(REAL x, REAL y, REAL width, REAL height,
  966. PixelFormat format,
  967. GpBitmap *srcBitmap,
  968. GpBitmap **dstBitmap);
  969. GpStatus WINGDIPAPI
  970. GdipCloneBitmapAreaI(INT x,
  971. INT y,
  972. INT width,
  973. INT height,
  974. PixelFormat format,
  975. GpBitmap *srcBitmap,
  976. GpBitmap **dstBitmap);
  977. GpStatus WINGDIPAPI
  978. GdipBitmapLockBits(GpBitmap* bitmap,
  979. GDIPCONST GpRect* rect,
  980. UINT flags,
  981. PixelFormat format,
  982. BitmapData* lockedBitmapData);
  983. GpStatus WINGDIPAPI
  984. GdipBitmapUnlockBits(GpBitmap* bitmap,
  985. BitmapData* lockedBitmapData);
  986. GpStatus WINGDIPAPI
  987. GdipBitmapGetPixel(GpBitmap* bitmap, INT x, INT y, ARGB *color);
  988. GpStatus WINGDIPAPI
  989. GdipBitmapSetPixel(GpBitmap* bitmap, INT x, INT y, ARGB color);
  990. GpStatus WINGDIPAPI
  991. GdipBitmapSetResolution(GpBitmap* bitmap, REAL xdpi, REAL ydpi);
  992. //----------------------------------------------------------------------------
  993. // ImageAttributes APIs
  994. //----------------------------------------------------------------------------
  995. GpStatus WINGDIPAPI
  996. GdipCreateImageAttributes(GpImageAttributes **imageattr);
  997. GpStatus WINGDIPAPI
  998. GdipCloneImageAttributes(GDIPCONST GpImageAttributes *imageattr,
  999. GpImageAttributes **cloneImageattr);
  1000. GpStatus WINGDIPAPI
  1001. GdipDisposeImageAttributes(GpImageAttributes *imageattr);
  1002. GpStatus WINGDIPAPI
  1003. GdipSetImageAttributesToIdentity(GpImageAttributes *imageattr,
  1004. ColorAdjustType type);
  1005. GpStatus WINGDIPAPI
  1006. GdipResetImageAttributes(GpImageAttributes *imageattr,
  1007. ColorAdjustType type);
  1008. GpStatus WINGDIPAPI
  1009. GdipSetImageAttributesColorMatrix(GpImageAttributes *imageattr,
  1010. ColorAdjustType type,
  1011. BOOL enableFlag,
  1012. GDIPCONST ColorMatrix* colorMatrix,
  1013. GDIPCONST ColorMatrix* grayMatrix,
  1014. ColorMatrixFlags flags);
  1015. GpStatus WINGDIPAPI
  1016. GdipSetImageAttributesThreshold(GpImageAttributes *imageattr,
  1017. ColorAdjustType type,
  1018. BOOL enableFlag,
  1019. REAL threshold);
  1020. GpStatus WINGDIPAPI
  1021. GdipSetImageAttributesGamma(GpImageAttributes *imageattr,
  1022. ColorAdjustType type,
  1023. BOOL enableFlag,
  1024. REAL gamma);
  1025. GpStatus WINGDIPAPI
  1026. GdipSetImageAttributesNoOp(GpImageAttributes *imageattr,
  1027. ColorAdjustType type,
  1028. BOOL enableFlag);
  1029. GpStatus WINGDIPAPI
  1030. GdipSetImageAttributesColorKeys(GpImageAttributes *imageattr,
  1031. ColorAdjustType type,
  1032. BOOL enableFlag,
  1033. ARGB colorLow,
  1034. ARGB colorHigh);
  1035. GpStatus WINGDIPAPI
  1036. GdipSetImageAttributesOutputChannel(GpImageAttributes *imageattr,
  1037. ColorAdjustType type,
  1038. BOOL enableFlag,
  1039. ColorChannelFlags channelFlags);
  1040. GpStatus WINGDIPAPI
  1041. GdipSetImageAttributesOutputChannelColorProfile(GpImageAttributes *imageattr,
  1042. ColorAdjustType type,
  1043. BOOL enableFlag,
  1044. GDIPCONST
  1045. WCHAR *colorProfileFilename);
  1046. GpStatus WINGDIPAPI
  1047. GdipSetImageAttributesRemapTable(GpImageAttributes *imageattr,
  1048. ColorAdjustType type,
  1049. BOOL enableFlag,
  1050. UINT mapSize,
  1051. GDIPCONST ColorMap *map);
  1052. GpStatus WINGDIPAPI
  1053. GdipSetImageAttributesWrapMode(
  1054. GpImageAttributes *imageAttr,
  1055. WrapMode wrap,
  1056. ARGB argb,
  1057. BOOL clamp
  1058. );
  1059. GpStatus WINGDIPAPI
  1060. GdipSetImageAttributesICMMode(
  1061. GpImageAttributes *imageAttr,
  1062. BOOL on
  1063. );
  1064. GpStatus WINGDIPAPI
  1065. GdipGetImageAttributesAdjustedPalette(
  1066. GpImageAttributes *imageAttr,
  1067. ColorPalette * colorPalette,
  1068. ColorAdjustType colorAdjustType
  1069. );
  1070. //----------------------------------------------------------------------------
  1071. // Graphics APIs
  1072. //----------------------------------------------------------------------------
  1073. GpStatus WINGDIPAPI
  1074. GdipFlush(GpGraphics *graphics, GpFlushIntention intention);
  1075. GpStatus WINGDIPAPI
  1076. GdipCreateFromHDC(HDC hdc, GpGraphics **graphics);
  1077. GpStatus WINGDIPAPI
  1078. GdipCreateFromHDC2(HDC hdc, HANDLE hDevice, GpGraphics **graphics);
  1079. GpStatus WINGDIPAPI
  1080. GdipCreateFromHWND(HWND hwnd, GpGraphics **graphics);
  1081. GpStatus WINGDIPAPI
  1082. GdipCreateFromHWNDICM(HWND hwnd, GpGraphics **graphics);
  1083. GpStatus WINGDIPAPI
  1084. GdipDeleteGraphics(GpGraphics *graphics);
  1085. GpStatus WINGDIPAPI
  1086. GdipGetDC(GpGraphics* graphics, HDC * hdc);
  1087. GpStatus WINGDIPAPI
  1088. GdipReleaseDC(GpGraphics* graphics, HDC hdc);
  1089. GpStatus WINGDIPAPI
  1090. GdipSetCompositingMode(GpGraphics *graphics, CompositingMode compositingMode);
  1091. GpStatus WINGDIPAPI
  1092. GdipGetCompositingMode(GpGraphics *graphics, CompositingMode *compositingMode);
  1093. GpStatus WINGDIPAPI
  1094. GdipSetRenderingOrigin(GpGraphics *graphics, INT x, INT y);
  1095. GpStatus WINGDIPAPI
  1096. GdipGetRenderingOrigin(GpGraphics *graphics, INT *x, INT *y);
  1097. GpStatus WINGDIPAPI
  1098. GdipSetCompositingQuality(GpGraphics *graphics,
  1099. CompositingQuality compositingQuality);
  1100. GpStatus WINGDIPAPI
  1101. GdipGetCompositingQuality(GpGraphics *graphics,
  1102. CompositingQuality *compositingQuality);
  1103. GpStatus WINGDIPAPI
  1104. GdipSetSmoothingMode(GpGraphics *graphics, SmoothingMode smoothingMode);
  1105. GpStatus WINGDIPAPI
  1106. GdipGetSmoothingMode(GpGraphics *graphics, SmoothingMode *smoothingMode);
  1107. GpStatus WINGDIPAPI
  1108. GdipSetPixelOffsetMode(GpGraphics* graphics, PixelOffsetMode pixelOffsetMode);
  1109. GpStatus WINGDIPAPI
  1110. GdipGetPixelOffsetMode(GpGraphics *graphics, PixelOffsetMode *pixelOffsetMode);
  1111. GpStatus WINGDIPAPI
  1112. GdipSetTextRenderingHint(GpGraphics *graphics, TextRenderingHint mode);
  1113. GpStatus WINGDIPAPI
  1114. GdipGetTextRenderingHint(GpGraphics *graphics, TextRenderingHint *mode);
  1115. GpStatus WINGDIPAPI
  1116. GdipSetTextContrast(GpGraphics *graphics, UINT contrast);
  1117. GpStatus WINGDIPAPI
  1118. GdipGetTextContrast(GpGraphics *graphics, UINT * contrast);
  1119. GpStatus WINGDIPAPI
  1120. GdipSetInterpolationMode(GpGraphics *graphics,
  1121. InterpolationMode interpolationMode);
  1122. GpStatus WINGDIPAPI
  1123. GdipGetInterpolationMode(GpGraphics *graphics,
  1124. InterpolationMode *interpolationMode);
  1125. GpStatus WINGDIPAPI
  1126. GdipSetWorldTransform(GpGraphics *graphics, GpMatrix *matrix);
  1127. GpStatus WINGDIPAPI
  1128. GdipResetWorldTransform(GpGraphics *graphics);
  1129. GpStatus WINGDIPAPI
  1130. GdipMultiplyWorldTransform(GpGraphics *graphics, GDIPCONST GpMatrix *matrix,
  1131. GpMatrixOrder order);
  1132. GpStatus WINGDIPAPI
  1133. GdipTranslateWorldTransform(GpGraphics *graphics, REAL dx, REAL dy,
  1134. GpMatrixOrder order);
  1135. GpStatus WINGDIPAPI
  1136. GdipScaleWorldTransform(GpGraphics *graphics, REAL sx, REAL sy,
  1137. GpMatrixOrder order);
  1138. GpStatus WINGDIPAPI
  1139. GdipRotateWorldTransform(GpGraphics *graphics, REAL angle,
  1140. GpMatrixOrder order);
  1141. GpStatus WINGDIPAPI
  1142. GdipGetWorldTransform(GpGraphics *graphics, GpMatrix *matrix);
  1143. GpStatus WINGDIPAPI
  1144. GdipResetPageTransform(GpGraphics *graphics);
  1145. GpStatus WINGDIPAPI
  1146. GdipGetPageUnit(GpGraphics *graphics, GpUnit *unit);
  1147. GpStatus WINGDIPAPI
  1148. GdipGetPageScale(GpGraphics *graphics, REAL *scale);
  1149. GpStatus WINGDIPAPI
  1150. GdipSetPageUnit(GpGraphics *graphics, GpUnit unit);
  1151. GpStatus WINGDIPAPI
  1152. GdipSetPageScale(GpGraphics *graphics, REAL scale);
  1153. GpStatus WINGDIPAPI
  1154. GdipGetDpiX(GpGraphics *graphics, REAL* dpi);
  1155. GpStatus WINGDIPAPI
  1156. GdipGetDpiY(GpGraphics *graphics, REAL* dpi);
  1157. GpStatus WINGDIPAPI
  1158. GdipTransformPoints(GpGraphics *graphics, GpCoordinateSpace destSpace,
  1159. GpCoordinateSpace srcSpace, GpPointF *points,
  1160. INT count);
  1161. GpStatus WINGDIPAPI
  1162. GdipTransformPointsI(GpGraphics *graphics, GpCoordinateSpace destSpace,
  1163. GpCoordinateSpace srcSpace, GpPoint *points,
  1164. INT count);
  1165. GpStatus WINGDIPAPI
  1166. GdipGetNearestColor(GpGraphics *graphics, ARGB* argb);
  1167. // Creates the Win9x Halftone Palette (even on NT) with correct Desktop colors
  1168. HPALETTE WINGDIPAPI
  1169. GdipCreateHalftonePalette();
  1170. GpStatus WINGDIPAPI
  1171. GdipDrawLine(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1,
  1172. REAL x2, REAL y2);
  1173. GpStatus WINGDIPAPI
  1174. GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1,
  1175. INT x2, INT y2);
  1176. GpStatus WINGDIPAPI
  1177. GdipDrawLines(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points,
  1178. INT count);
  1179. GpStatus WINGDIPAPI
  1180. GdipDrawLinesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points,
  1181. INT count);
  1182. GpStatus WINGDIPAPI
  1183. GdipDrawArc(GpGraphics *graphics, GpPen *pen, REAL x, REAL y,
  1184. REAL width, REAL height, REAL startAngle, REAL sweepAngle);
  1185. GpStatus WINGDIPAPI
  1186. GdipDrawArcI(GpGraphics *graphics, GpPen *pen, INT x, INT y,
  1187. INT width, INT height, REAL startAngle, REAL sweepAngle);
  1188. GpStatus WINGDIPAPI
  1189. GdipDrawBezier(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1,
  1190. REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4);
  1191. GpStatus WINGDIPAPI
  1192. GdipDrawBezierI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1,
  1193. INT x2, INT y2, INT x3, INT y3, INT x4, INT y4);
  1194. GpStatus WINGDIPAPI
  1195. GdipDrawBeziers(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points,
  1196. INT count);
  1197. GpStatus WINGDIPAPI
  1198. GdipDrawBeziersI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points,
  1199. INT count);
  1200. GpStatus WINGDIPAPI
  1201. GdipDrawRectangle(GpGraphics *graphics, GpPen *pen, REAL x, REAL y,
  1202. REAL width, REAL height);
  1203. GpStatus WINGDIPAPI
  1204. GdipDrawRectangleI(GpGraphics *graphics, GpPen *pen, INT x, INT y,
  1205. INT width, INT height);
  1206. GpStatus WINGDIPAPI
  1207. GdipDrawRectangles(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRectF *rects,
  1208. INT count);
  1209. GpStatus WINGDIPAPI
  1210. GdipDrawRectanglesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRect *rects,
  1211. INT count);
  1212. GpStatus WINGDIPAPI
  1213. GdipDrawEllipse(GpGraphics *graphics, GpPen *pen, REAL x, REAL y,
  1214. REAL width, REAL height);
  1215. GpStatus WINGDIPAPI
  1216. GdipDrawEllipseI(GpGraphics *graphics, GpPen *pen, INT x, INT y,
  1217. INT width, INT height);
  1218. GpStatus WINGDIPAPI
  1219. GdipDrawPie(GpGraphics *graphics, GpPen *pen, REAL x, REAL y,
  1220. REAL width, REAL height, REAL startAngle,
  1221. REAL sweepAngle);
  1222. GpStatus WINGDIPAPI
  1223. GdipDrawPieI(GpGraphics *graphics, GpPen *pen, INT x, INT y,
  1224. INT width, INT height, REAL startAngle, REAL sweepAngle);
  1225. GpStatus WINGDIPAPI
  1226. GdipDrawPolygon(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points,
  1227. INT count);
  1228. GpStatus WINGDIPAPI
  1229. GdipDrawPolygonI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points,
  1230. INT count);
  1231. GpStatus WINGDIPAPI
  1232. GdipDrawPath(GpGraphics *graphics, GpPen *pen, GpPath *path);
  1233. GpStatus WINGDIPAPI
  1234. GdipDrawCurve(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points,
  1235. INT count);
  1236. GpStatus WINGDIPAPI
  1237. GdipDrawCurveI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points,
  1238. INT count);
  1239. GpStatus WINGDIPAPI
  1240. GdipDrawCurve2(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points,
  1241. INT count, REAL tension);
  1242. GpStatus WINGDIPAPI
  1243. GdipDrawCurve2I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points,
  1244. INT count, REAL tension);
  1245. GpStatus WINGDIPAPI
  1246. GdipDrawCurve3(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points,
  1247. INT count, INT offset, INT numberOfSegments, REAL tension);
  1248. GpStatus WINGDIPAPI
  1249. GdipDrawCurve3I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points,
  1250. INT count, INT offset, INT numberOfSegments, REAL tension);
  1251. GpStatus WINGDIPAPI
  1252. GdipDrawClosedCurve(GpGraphics *graphics, GpPen *pen,
  1253. GDIPCONST GpPointF *points, INT count);
  1254. GpStatus WINGDIPAPI
  1255. GdipDrawClosedCurveI(GpGraphics *graphics, GpPen *pen,
  1256. GDIPCONST GpPoint *points, INT count);
  1257. GpStatus WINGDIPAPI
  1258. GdipDrawClosedCurve2(GpGraphics *graphics, GpPen *pen,
  1259. GDIPCONST GpPointF *points, INT count, REAL tension);
  1260. GpStatus WINGDIPAPI
  1261. GdipDrawClosedCurve2I(GpGraphics *graphics, GpPen *pen,
  1262. GDIPCONST GpPoint *points, INT count, REAL tension);
  1263. GpStatus WINGDIPAPI
  1264. GdipGraphicsClear(GpGraphics *graphics, ARGB color);
  1265. GpStatus WINGDIPAPI
  1266. GdipFillRectangle(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y,
  1267. REAL width, REAL height);
  1268. GpStatus WINGDIPAPI
  1269. GdipFillRectangleI(GpGraphics *graphics, GpBrush *brush, INT x, INT y,
  1270. INT width, INT height);
  1271. GpStatus WINGDIPAPI
  1272. GdipFillRectangles(GpGraphics *graphics, GpBrush *brush,
  1273. GDIPCONST GpRectF *rects, INT count);
  1274. GpStatus WINGDIPAPI
  1275. GdipFillRectanglesI(GpGraphics *graphics, GpBrush *brush,
  1276. GDIPCONST GpRect *rects, INT count);
  1277. GpStatus WINGDIPAPI
  1278. GdipFillPolygon(GpGraphics *graphics, GpBrush *brush,
  1279. GDIPCONST GpPointF *points, INT count, GpFillMode fillMode);
  1280. GpStatus WINGDIPAPI
  1281. GdipFillPolygonI(GpGraphics *graphics, GpBrush *brush,
  1282. GDIPCONST GpPoint *points, INT count, GpFillMode fillMode);
  1283. GpStatus WINGDIPAPI
  1284. GdipFillPolygon2(GpGraphics *graphics, GpBrush *brush,
  1285. GDIPCONST GpPointF *points, INT count);
  1286. GpStatus WINGDIPAPI
  1287. GdipFillPolygon2I(GpGraphics *graphics, GpBrush *brush,
  1288. GDIPCONST GpPoint *points, INT count);
  1289. GpStatus WINGDIPAPI
  1290. GdipFillEllipse(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y,
  1291. REAL width, REAL height);
  1292. GpStatus WINGDIPAPI
  1293. GdipFillEllipseI(GpGraphics *graphics, GpBrush *brush, INT x, INT y,
  1294. INT width, INT height);
  1295. GpStatus WINGDIPAPI
  1296. GdipFillPie(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y,
  1297. REAL width, REAL height, REAL startAngle, REAL sweepAngle);
  1298. GpStatus WINGDIPAPI
  1299. GdipFillPieI(GpGraphics *graphics, GpBrush *brush, INT x, INT y,
  1300. INT width, INT height, REAL startAngle, REAL sweepAngle);
  1301. GpStatus WINGDIPAPI
  1302. GdipFillPath(GpGraphics *graphics, GpBrush *brush, GpPath *path);
  1303. GpStatus WINGDIPAPI
  1304. GdipFillClosedCurve(GpGraphics *graphics, GpBrush *brush,
  1305. GDIPCONST GpPointF *points, INT count);
  1306. GpStatus WINGDIPAPI
  1307. GdipFillClosedCurveI(GpGraphics *graphics, GpBrush *brush,
  1308. GDIPCONST GpPoint *points, INT count);
  1309. GpStatus WINGDIPAPI
  1310. GdipFillClosedCurve2(GpGraphics *graphics, GpBrush *brush,
  1311. GDIPCONST GpPointF *points, INT count,
  1312. REAL tension, GpFillMode fillMode);
  1313. GpStatus WINGDIPAPI
  1314. GdipFillClosedCurve2I(GpGraphics *graphics, GpBrush *brush,
  1315. GDIPCONST GpPoint *points, INT count,
  1316. REAL tension, GpFillMode fillMode);
  1317. GpStatus WINGDIPAPI
  1318. GdipFillRegion(GpGraphics *graphics, GpBrush *brush,
  1319. GpRegion *region);
  1320. GpStatus WINGDIPAPI
  1321. GdipDrawImage(GpGraphics *graphics, GpImage *image, REAL x, REAL y);
  1322. GpStatus WINGDIPAPI
  1323. GdipDrawImageI(GpGraphics *graphics, GpImage *image, INT x, INT y);
  1324. GpStatus WINGDIPAPI
  1325. GdipDrawImageRect(GpGraphics *graphics, GpImage *image, REAL x, REAL y,
  1326. REAL width, REAL height);
  1327. GpStatus WINGDIPAPI
  1328. GdipDrawImageRectI(GpGraphics *graphics, GpImage *image, INT x, INT y,
  1329. INT width, INT height);
  1330. GpStatus WINGDIPAPI
  1331. GdipDrawImagePoints(GpGraphics *graphics, GpImage *image,
  1332. GDIPCONST GpPointF *dstpoints, INT count);
  1333. GpStatus WINGDIPAPI
  1334. GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image,
  1335. GDIPCONST GpPoint *dstpoints, INT count);
  1336. GpStatus WINGDIPAPI
  1337. GdipDrawImagePointRect(GpGraphics *graphics, GpImage *image, REAL x,
  1338. REAL y, REAL srcx, REAL srcy, REAL srcwidth,
  1339. REAL srcheight, GpUnit srcUnit);
  1340. GpStatus WINGDIPAPI
  1341. GdipDrawImagePointRectI(GpGraphics *graphics, GpImage *image, INT x,
  1342. INT y, INT srcx, INT srcy, INT srcwidth,
  1343. INT srcheight, GpUnit srcUnit);
  1344. GpStatus WINGDIPAPI
  1345. GdipDrawImageRectRect(GpGraphics *graphics, GpImage *image, REAL dstx,
  1346. REAL dsty, REAL dstwidth, REAL dstheight,
  1347. REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight,
  1348. GpUnit srcUnit,
  1349. GDIPCONST GpImageAttributes* imageAttributes,
  1350. DrawImageAbort callback, VOID * callbackData);
  1351. GpStatus WINGDIPAPI
  1352. GdipDrawImageRectRectI(GpGraphics *graphics, GpImage *image, INT dstx,
  1353. INT dsty, INT dstwidth, INT dstheight,
  1354. INT srcx, INT srcy, INT srcwidth, INT srcheight,
  1355. GpUnit srcUnit,
  1356. GDIPCONST GpImageAttributes* imageAttributes,
  1357. DrawImageAbort callback, VOID * callbackData);
  1358. GpStatus WINGDIPAPI
  1359. GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image,
  1360. GDIPCONST GpPointF *points, INT count, REAL srcx,
  1361. REAL srcy, REAL srcwidth, REAL srcheight,
  1362. GpUnit srcUnit,
  1363. GDIPCONST GpImageAttributes* imageAttributes,
  1364. DrawImageAbort callback, VOID * callbackData);
  1365. GpStatus WINGDIPAPI
  1366. GdipDrawImagePointsRectI(GpGraphics *graphics, GpImage *image,
  1367. GDIPCONST GpPoint *points, INT count, INT srcx,
  1368. INT srcy, INT srcwidth, INT srcheight,
  1369. GpUnit srcUnit,
  1370. GDIPCONST GpImageAttributes* imageAttributes,
  1371. DrawImageAbort callback, VOID * callbackData);
  1372. GpStatus WINGDIPAPI
  1373. GdipEnumerateMetafileDestPoint(
  1374. GpGraphics * graphics,
  1375. GDIPCONST GpMetafile * metafile,
  1376. GDIPCONST PointF & destPoint,
  1377. EnumerateMetafileProc callback,
  1378. VOID * callbackData,
  1379. GDIPCONST GpImageAttributes * imageAttributes
  1380. );
  1381. GpStatus WINGDIPAPI
  1382. GdipEnumerateMetafileDestPointI(
  1383. GpGraphics * graphics,
  1384. GDIPCONST GpMetafile * metafile,
  1385. GDIPCONST PointI & destPoint,
  1386. EnumerateMetafileProc callback,
  1387. VOID * callbackData,
  1388. GDIPCONST GpImageAttributes * imageAttributes
  1389. );
  1390. GpStatus WINGDIPAPI
  1391. GdipEnumerateMetafileDestRect(
  1392. GpGraphics * graphics,
  1393. GDIPCONST GpMetafile * metafile,
  1394. GDIPCONST RectF & destRect,
  1395. EnumerateMetafileProc callback,
  1396. VOID * callbackData,
  1397. GDIPCONST GpImageAttributes * imageAttributes
  1398. );
  1399. GpStatus WINGDIPAPI
  1400. GdipEnumerateMetafileDestRectI(
  1401. GpGraphics * graphics,
  1402. GDIPCONST GpMetafile * metafile,
  1403. GDIPCONST Rect & destRect,
  1404. EnumerateMetafileProc callback,
  1405. VOID * callbackData,
  1406. GDIPCONST GpImageAttributes * imageAttributes
  1407. );
  1408. GpStatus WINGDIPAPI
  1409. GdipEnumerateMetafileDestPoints(
  1410. GpGraphics * graphics,
  1411. GDIPCONST GpMetafile * metafile,
  1412. GDIPCONST PointF * destPoints,
  1413. INT count,
  1414. EnumerateMetafileProc callback,
  1415. VOID * callbackData,
  1416. GDIPCONST GpImageAttributes * imageAttributes
  1417. );
  1418. GpStatus WINGDIPAPI
  1419. GdipEnumerateMetafileDestPointsI(
  1420. GpGraphics * graphics,
  1421. GDIPCONST GpMetafile * metafile,
  1422. GDIPCONST PointI * destPoints,
  1423. INT count,
  1424. EnumerateMetafileProc callback,
  1425. VOID * callbackData,
  1426. GDIPCONST GpImageAttributes * imageAttributes
  1427. );
  1428. GpStatus WINGDIPAPI
  1429. GdipEnumerateMetafileSrcRectDestPoint(
  1430. GpGraphics * graphics,
  1431. GDIPCONST GpMetafile * metafile,
  1432. GDIPCONST PointF & destPoint,
  1433. GDIPCONST RectF & srcRect,
  1434. Unit srcUnit,
  1435. EnumerateMetafileProc callback,
  1436. VOID * callbackData,
  1437. GDIPCONST GpImageAttributes * imageAttributes
  1438. );
  1439. GpStatus WINGDIPAPI
  1440. GdipEnumerateMetafileSrcRectDestPointI(
  1441. GpGraphics * graphics,
  1442. GDIPCONST GpMetafile * metafile,
  1443. GDIPCONST PointI & destPoint,
  1444. GDIPCONST Rect & srcRect,
  1445. Unit srcUnit,
  1446. EnumerateMetafileProc callback,
  1447. VOID * callbackData,
  1448. GDIPCONST GpImageAttributes * imageAttributes
  1449. );
  1450. GpStatus WINGDIPAPI
  1451. GdipEnumerateMetafileSrcRectDestRect(
  1452. GpGraphics * graphics,
  1453. GDIPCONST GpMetafile * metafile,
  1454. GDIPCONST RectF & destRect,
  1455. GDIPCONST RectF & srcRect,
  1456. Unit srcUnit,
  1457. EnumerateMetafileProc callback,
  1458. VOID * callbackData,
  1459. GDIPCONST GpImageAttributes * imageAttributes
  1460. );
  1461. GpStatus WINGDIPAPI
  1462. GdipEnumerateMetafileSrcRectDestRectI(
  1463. GpGraphics * graphics,
  1464. GDIPCONST GpMetafile * metafile,
  1465. GDIPCONST Rect & destRect,
  1466. GDIPCONST Rect & srcRect,
  1467. Unit srcUnit,
  1468. EnumerateMetafileProc callback,
  1469. VOID * callbackData,
  1470. GDIPCONST GpImageAttributes * imageAttributes
  1471. );
  1472. GpStatus WINGDIPAPI
  1473. GdipEnumerateMetafileSrcRectDestPoints(
  1474. GpGraphics * graphics,
  1475. GDIPCONST GpMetafile * metafile,
  1476. GDIPCONST PointF * destPoints,
  1477. INT count,
  1478. GDIPCONST RectF & srcRect,
  1479. Unit srcUnit,
  1480. EnumerateMetafileProc callback,
  1481. VOID * callbackData,
  1482. GDIPCONST GpImageAttributes * imageAttributes
  1483. );
  1484. GpStatus WINGDIPAPI
  1485. GdipEnumerateMetafileSrcRectDestPointsI(
  1486. GpGraphics * graphics,
  1487. GDIPCONST GpMetafile * metafile,
  1488. GDIPCONST PointI * destPoints,
  1489. INT count,
  1490. GDIPCONST Rect & srcRect,
  1491. Unit srcUnit,
  1492. EnumerateMetafileProc callback,
  1493. VOID * callbackData,
  1494. GDIPCONST GpImageAttributes * imageAttributes
  1495. );
  1496. GpStatus WINGDIPAPI
  1497. GdipPlayMetafileRecord(
  1498. GDIPCONST GpMetafile * metafile,
  1499. EmfPlusRecordType recordType,
  1500. UINT flags,
  1501. UINT dataSize,
  1502. GDIPCONST BYTE * data
  1503. );
  1504. GpStatus WINGDIPAPI
  1505. GdipSetClipGraphics(GpGraphics *graphics, GpGraphics *srcgraphics,
  1506. CombineMode combineMode);
  1507. GpStatus WINGDIPAPI
  1508. GdipSetClipRect(GpGraphics *graphics, REAL x, REAL y,
  1509. REAL width, REAL height, CombineMode combineMode);
  1510. GpStatus WINGDIPAPI
  1511. GdipSetClipRectI(GpGraphics *graphics, INT x, INT y,
  1512. INT width, INT height, CombineMode combineMode);
  1513. GpStatus WINGDIPAPI
  1514. GdipSetClipPath(GpGraphics *graphics, GpPath *path, CombineMode combineMode);
  1515. GpStatus WINGDIPAPI
  1516. GdipSetClipRegion(GpGraphics *graphics, GpRegion *region,
  1517. CombineMode combineMode);
  1518. GpStatus WINGDIPAPI
  1519. GdipSetClipHrgn(GpGraphics *graphics, HRGN hRgn, CombineMode combineMode);
  1520. GpStatus WINGDIPAPI
  1521. GdipResetClip(GpGraphics *graphics);
  1522. GpStatus WINGDIPAPI
  1523. GdipTranslateClip(GpGraphics *graphics, REAL dx, REAL dy);
  1524. GpStatus WINGDIPAPI
  1525. GdipTranslateClipI(GpGraphics *graphics, INT dx, INT dy);
  1526. GpStatus WINGDIPAPI
  1527. GdipGetClip(GpGraphics *graphics, GpRegion *region);
  1528. GpStatus WINGDIPAPI
  1529. GdipGetClipBounds(GpGraphics *graphics, GpRectF *rect);
  1530. GpStatus WINGDIPAPI
  1531. GdipGetClipBoundsI(GpGraphics *graphics, GpRect *rect);
  1532. GpStatus WINGDIPAPI
  1533. GdipIsClipEmpty(GpGraphics *graphics, BOOL *result);
  1534. GpStatus WINGDIPAPI
  1535. GdipGetVisibleClipBounds(GpGraphics *graphics, GpRectF *rect);
  1536. GpStatus WINGDIPAPI
  1537. GdipGetVisibleClipBoundsI(GpGraphics *graphics, GpRect *rect);
  1538. GpStatus WINGDIPAPI
  1539. GdipIsVisibleClipEmpty(GpGraphics *graphics, BOOL *result);
  1540. GpStatus WINGDIPAPI
  1541. GdipIsVisiblePoint(GpGraphics *graphics, REAL x, REAL y,
  1542. BOOL *result);
  1543. GpStatus WINGDIPAPI
  1544. GdipIsVisiblePointI(GpGraphics *graphics, INT x, INT y,
  1545. BOOL *result);
  1546. GpStatus WINGDIPAPI
  1547. GdipIsVisibleRect(GpGraphics *graphics, REAL x, REAL y,
  1548. REAL width, REAL height, BOOL *result);
  1549. GpStatus WINGDIPAPI
  1550. GdipIsVisibleRectI(GpGraphics *graphics, INT x, INT y,
  1551. INT width, INT height, BOOL *result);
  1552. GpStatus WINGDIPAPI
  1553. GdipSaveGraphics(GpGraphics *graphics, GraphicsState *state);
  1554. GpStatus WINGDIPAPI
  1555. GdipRestoreGraphics(GpGraphics *graphics, GraphicsState state);
  1556. GpStatus WINGDIPAPI
  1557. GdipBeginContainer(GpGraphics *graphics, GDIPCONST GpRectF* dstrect,
  1558. GDIPCONST GpRectF *srcrect, GpUnit unit,
  1559. GraphicsContainer *state);
  1560. GpStatus WINGDIPAPI
  1561. GdipBeginContainerI(GpGraphics *graphics, GDIPCONST GpRect* dstrect,
  1562. GDIPCONST GpRect *srcrect, GpUnit unit,
  1563. GraphicsContainer *state);
  1564. GpStatus WINGDIPAPI
  1565. GdipBeginContainer2(GpGraphics *graphics, GraphicsContainer* state);
  1566. GpStatus WINGDIPAPI
  1567. GdipEndContainer(GpGraphics *graphics, GraphicsContainer state);
  1568. GpStatus
  1569. GdipGetMetafileHeaderFromWmf(
  1570. HMETAFILE hWmf,
  1571. GDIPCONST WmfPlaceableFileHeader * wmfPlaceableFileHeader,
  1572. MetafileHeader * header
  1573. );
  1574. GpStatus
  1575. WINGDIPAPI
  1576. GdipGetMetafileHeaderFromEmf(
  1577. HENHMETAFILE hEmf,
  1578. MetafileHeader * header
  1579. );
  1580. GpStatus
  1581. WINGDIPAPI
  1582. GdipGetMetafileHeaderFromFile(
  1583. GDIPCONST WCHAR* filename,
  1584. MetafileHeader * header
  1585. );
  1586. GpStatus
  1587. WINGDIPAPI
  1588. GdipGetMetafileHeaderFromStream(
  1589. IStream * stream,
  1590. MetafileHeader * header
  1591. );
  1592. GpStatus
  1593. WINGDIPAPI
  1594. GdipGetMetafileHeaderFromMetafile(
  1595. GpMetafile * metafile,
  1596. MetafileHeader * header
  1597. );
  1598. GpStatus
  1599. WINGDIPAPI
  1600. GdipGetHemfFromMetafile(
  1601. GpMetafile * metafile,
  1602. HENHMETAFILE * hEmf
  1603. );
  1604. GpStatus WINGDIPAPI
  1605. GdipCreateStreamOnFile(GDIPCONST WCHAR * filename, UINT access,
  1606. IStream **stream);
  1607. GpStatus WINGDIPAPI
  1608. GdipCreateMetafileFromWmf(HMETAFILE hWmf, BOOL deleteWmf,
  1609. GDIPCONST WmfPlaceableFileHeader * wmfPlaceableFileHeader,
  1610. GpMetafile **metafile);
  1611. GpStatus WINGDIPAPI
  1612. GdipCreateMetafileFromEmf(HENHMETAFILE hEmf, BOOL deleteEmf,
  1613. GpMetafile **metafile);
  1614. GpStatus WINGDIPAPI
  1615. GdipCreateMetafileFromFile(GDIPCONST WCHAR* file, GpMetafile **metafile);
  1616. GpStatus WINGDIPAPI
  1617. GdipCreateMetafileFromWmfFile(GDIPCONST WCHAR* file,
  1618. GDIPCONST WmfPlaceableFileHeader * wmfPlaceableFileHeader,
  1619. GpMetafile **metafile);
  1620. GpStatus WINGDIPAPI
  1621. GdipCreateMetafileFromStream(IStream * stream, GpMetafile **metafile);
  1622. GpStatus WINGDIPAPI
  1623. GdipRecordMetafile(
  1624. HDC referenceHdc,
  1625. EmfType type,
  1626. GDIPCONST GpRectF * frameRect,
  1627. MetafileFrameUnit frameUnit,
  1628. GDIPCONST WCHAR * description,
  1629. GpMetafile ** metafile
  1630. );
  1631. GpStatus WINGDIPAPI
  1632. GdipRecordMetafileI(
  1633. HDC referenceHdc,
  1634. EmfType type,
  1635. GDIPCONST GpRect * frameRect,
  1636. MetafileFrameUnit frameUnit,
  1637. GDIPCONST WCHAR * description,
  1638. GpMetafile ** metafile
  1639. );
  1640. GpStatus WINGDIPAPI
  1641. GdipRecordMetafileFileName(
  1642. GDIPCONST WCHAR* fileName,
  1643. HDC referenceHdc,
  1644. EmfType type,
  1645. GDIPCONST GpRectF * frameRect,
  1646. MetafileFrameUnit frameUnit,
  1647. GDIPCONST WCHAR * description,
  1648. GpMetafile ** metafile
  1649. );
  1650. GpStatus WINGDIPAPI
  1651. GdipRecordMetafileFileNameI(
  1652. GDIPCONST WCHAR* fileName,
  1653. HDC referenceHdc,
  1654. EmfType type,
  1655. GDIPCONST GpRect * frameRect,
  1656. MetafileFrameUnit frameUnit,
  1657. GDIPCONST WCHAR * description,
  1658. GpMetafile ** metafile
  1659. );
  1660. GpStatus WINGDIPAPI
  1661. GdipRecordMetafileStream(
  1662. IStream * stream,
  1663. HDC referenceHdc,
  1664. EmfType type,
  1665. GDIPCONST GpRectF * frameRect,
  1666. MetafileFrameUnit frameUnit,
  1667. GDIPCONST WCHAR * description,
  1668. GpMetafile ** metafile
  1669. );
  1670. GpStatus WINGDIPAPI
  1671. GdipRecordMetafileStreamI(
  1672. IStream * stream,
  1673. HDC referenceHdc,
  1674. EmfType type,
  1675. GDIPCONST GpRect * frameRect,
  1676. MetafileFrameUnit frameUnit,
  1677. GDIPCONST WCHAR * description,
  1678. GpMetafile ** metafile
  1679. );
  1680. GpStatus WINGDIPAPI
  1681. GdipSetMetafileDownLevelRasterizationLimit(
  1682. GpMetafile * metafile,
  1683. UINT metafileRasterizationLimitDpi
  1684. );
  1685. GpStatus WINGDIPAPI
  1686. GdipGetMetafileDownLevelRasterizationLimit(
  1687. GDIPCONST GpMetafile * metafile,
  1688. UINT * metafileRasterizationLimitDpi
  1689. );
  1690. GpStatus WINGDIPAPI
  1691. GdipGetImageDecodersSize(UINT *numDecoders, UINT *size);
  1692. GpStatus WINGDIPAPI
  1693. GdipGetImageDecoders(UINT numDecoders,
  1694. UINT size,
  1695. ImageCodecInfo *decoders);
  1696. GpStatus WINGDIPAPI
  1697. GdipGetImageEncodersSize(UINT *numEncoders, UINT *size);
  1698. GpStatus WINGDIPAPI
  1699. GdipGetImageEncoders(UINT numEncoders,
  1700. UINT size,
  1701. ImageCodecInfo *encoders);
  1702. GpStatus WINGDIPAPI
  1703. GdipComment(GpGraphics* graphics, UINT sizeData, GDIPCONST BYTE * data);
  1704. //----------------------------------------------------------------------------
  1705. // FontFamily APIs
  1706. //----------------------------------------------------------------------------
  1707. GpStatus WINGDIPAPI
  1708. GdipCreateFontFamilyFromName(GDIPCONST WCHAR *name,
  1709. GpFontCollection *fontCollection,
  1710. GpFontFamily **FontFamily);
  1711. GpStatus WINGDIPAPI
  1712. GdipDeleteFontFamily(GpFontFamily *FontFamily);
  1713. GpStatus WINGDIPAPI
  1714. GdipCloneFontFamily(GpFontFamily *FontFamily, GpFontFamily **clonedFontFamily);
  1715. GpStatus WINGDIPAPI
  1716. GdipGetGenericFontFamilySansSerif(GpFontFamily **nativeFamily);
  1717. GpStatus WINGDIPAPI
  1718. GdipGetGenericFontFamilySerif(GpFontFamily **nativeFamily);
  1719. GpStatus WINGDIPAPI
  1720. GdipGetGenericFontFamilyMonospace(GpFontFamily **nativeFamily);
  1721. GpStatus WINGDIPAPI
  1722. GdipGetFamilyName(
  1723. GDIPCONST GpFontFamily *family,
  1724. WCHAR name[LF_FACESIZE],
  1725. LANGID language
  1726. );
  1727. GpStatus WINGDIPAPI
  1728. GdipIsStyleAvailable(GDIPCONST GpFontFamily *family, INT style,
  1729. BOOL * IsStyleAvailable);
  1730. GpStatus WINGDIPAPI
  1731. GdipFontCollectionEnumerable(
  1732. GpFontCollection* fontCollection,
  1733. GpGraphics* graphics,
  1734. INT * numFound
  1735. );
  1736. GpStatus WINGDIPAPI GdipFontCollectionEnumerate(
  1737. GpFontCollection* fontCollection,
  1738. INT numSought,
  1739. GpFontFamily* gpfamilies[],
  1740. INT* numFound,
  1741. GpGraphics* graphics
  1742. );
  1743. GpStatus WINGDIPAPI
  1744. GdipGetEmHeight(GDIPCONST GpFontFamily *family, INT style,
  1745. UINT16 * EmHeight);
  1746. GpStatus WINGDIPAPI
  1747. GdipGetCellAscent(GDIPCONST GpFontFamily *family, INT style,
  1748. UINT16 * CellAscent);
  1749. GpStatus WINGDIPAPI
  1750. GdipGetCellDescent(GDIPCONST GpFontFamily *family, INT style,
  1751. UINT16 * CellDescent);
  1752. GpStatus WINGDIPAPI
  1753. GdipGetLineSpacing(GDIPCONST GpFontFamily *family, INT style,
  1754. UINT16 * LineSpacing);
  1755. //----------------------------------------------------------------------------
  1756. // Font APIs
  1757. //----------------------------------------------------------------------------
  1758. GpStatus WINGDIPAPI
  1759. GdipCreateFontFromDC(
  1760. HDC hdc,
  1761. GpFont **font
  1762. );
  1763. GpStatus WINGDIPAPI
  1764. GdipCreateFontFromLogfontA(
  1765. HDC hdc,
  1766. GDIPCONST LOGFONTA *logfont,
  1767. GpFont **font
  1768. );
  1769. GpStatus WINGDIPAPI
  1770. GdipCreateFontFromLogfontW(
  1771. HDC hdc,
  1772. GDIPCONST LOGFONTW *logfont,
  1773. GpFont **font
  1774. );
  1775. GpStatus WINGDIPAPI
  1776. GdipCreateFont(
  1777. GDIPCONST GpFontFamily *fontFamily,
  1778. REAL emSize,
  1779. INT style,
  1780. Unit unit,
  1781. GpFont **font
  1782. );
  1783. GpStatus WINGDIPAPI
  1784. GdipCloneFont(GpFont* font, GpFont** cloneFont);
  1785. GpStatus WINGDIPAPI
  1786. GdipDeleteFont(GpFont* font);
  1787. GpStatus WINGDIPAPI
  1788. GdipGetFamily(GpFont *font, GpFontFamily **family);
  1789. GpStatus WINGDIPAPI
  1790. GdipGetFontStyle(GpFont *font, INT *style);
  1791. GpStatus WINGDIPAPI
  1792. GdipGetFontSize(GpFont *font, REAL *size);
  1793. GpStatus WINGDIPAPI
  1794. GdipGetFontUnit(GpFont *font, Unit *unit);
  1795. GpStatus WINGDIPAPI
  1796. GdipGetFontHeight(GDIPCONST GpFont *font, GDIPCONST GpGraphics *graphics,
  1797. REAL *height);
  1798. GpStatus WINGDIPAPI
  1799. GdipGetFontHeightGivenDPI(GDIPCONST GpFont *font, REAL dpi, REAL *height);
  1800. GpStatus WINGDIPAPI
  1801. GdipGetLogFontA(GpFont * font, GpGraphics *graphics, LOGFONTA * logfontA);
  1802. GpStatus WINGDIPAPI
  1803. GdipGetLogFontW(GpFont * font, GpGraphics *graphics, LOGFONTW * logfontW);
  1804. GpStatus WINGDIPAPI
  1805. GdipNewInstalledFontCollection(GpFontCollection** fontCollection);
  1806. GpStatus WINGDIPAPI
  1807. GdipNewPrivateFontCollection(GpFontCollection** fontCollection);
  1808. GpStatus WINGDIPAPI
  1809. GdipDeletePrivateFontCollection(GpFontCollection** fontCollection);
  1810. GpStatus WINGDIPAPI
  1811. GdipGetFontCollectionFamilyCount(
  1812. GpFontCollection* fontCollection,
  1813. INT * numFound
  1814. );
  1815. GpStatus WINGDIPAPI
  1816. GdipGetFontCollectionFamilyList(
  1817. GpFontCollection* fontCollection,
  1818. INT numSought,
  1819. GpFontFamily* gpfamilies[],
  1820. INT* numFound
  1821. );
  1822. GpStatus WINGDIPAPI
  1823. GdipPrivateAddFontFile(
  1824. GpFontCollection* fontCollection,
  1825. GDIPCONST WCHAR* filename
  1826. );
  1827. GpStatus WINGDIPAPI
  1828. GdipPrivateAddMemoryFont(
  1829. GpFontCollection* fontCollection,
  1830. GDIPCONST void* memory,
  1831. INT length
  1832. );
  1833. //----------------------------------------------------------------------------
  1834. // Text APIs
  1835. //----------------------------------------------------------------------------
  1836. GpStatus WINGDIPAPI
  1837. GdipDrawString(
  1838. GpGraphics *graphics,
  1839. GDIPCONST WCHAR *string,
  1840. INT length,
  1841. GDIPCONST GpFont *font,
  1842. GDIPCONST RectF *layoutRect,
  1843. GDIPCONST GpStringFormat *stringFormat,
  1844. GDIPCONST GpBrush *brush
  1845. );
  1846. GpStatus WINGDIPAPI
  1847. GdipMeasureString(
  1848. GpGraphics *graphics,
  1849. GDIPCONST WCHAR *string,
  1850. INT length,
  1851. GDIPCONST GpFont *font,
  1852. GDIPCONST RectF *layoutRect,
  1853. GDIPCONST GpStringFormat *stringFormat,
  1854. RectF *boundingBox,
  1855. INT *codepointsFitted,
  1856. INT *linesFilled
  1857. );
  1858. GpStatus
  1859. WINGDIPAPI
  1860. GdipMeasureCharacterRanges(
  1861. GpGraphics *graphics,
  1862. GDIPCONST WCHAR *string,
  1863. INT length,
  1864. GDIPCONST GpFont *font,
  1865. GDIPCONST RectF &layoutRect,
  1866. GDIPCONST GpStringFormat *stringFormat,
  1867. INT regionCount,
  1868. GpRegion **regions
  1869. );
  1870. GpStatus WINGDIPAPI
  1871. GdipDrawDriverString(
  1872. GpGraphics *graphics,
  1873. GDIPCONST UINT16 *text,
  1874. INT length,
  1875. GDIPCONST GpFont *font,
  1876. GDIPCONST GpBrush *brush,
  1877. GDIPCONST PointF *positions,
  1878. INT flags,
  1879. GDIPCONST GpMatrix *matrix
  1880. );
  1881. GpStatus WINGDIPAPI
  1882. GdipMeasureDriverString(
  1883. GpGraphics *graphics,
  1884. GDIPCONST UINT16 *text,
  1885. INT length,
  1886. GDIPCONST GpFont *font,
  1887. GDIPCONST PointF *positions,
  1888. INT flags,
  1889. GDIPCONST GpMatrix *matrix,
  1890. RectF *boundingBox
  1891. );
  1892. //----------------------------------------------------------------------------
  1893. // String format APIs
  1894. //----------------------------------------------------------------------------
  1895. GpStatus WINGDIPAPI
  1896. GdipCreateStringFormat(
  1897. INT formatAttributes,
  1898. LANGID language,
  1899. GpStringFormat **format
  1900. );
  1901. GpStatus WINGDIPAPI
  1902. GdipStringFormatGetGenericDefault(GpStringFormat **format);
  1903. GpStatus WINGDIPAPI
  1904. GdipStringFormatGetGenericTypographic(GpStringFormat **format);
  1905. GpStatus WINGDIPAPI
  1906. GdipDeleteStringFormat(GpStringFormat *format);
  1907. GpStatus WINGDIPAPI
  1908. GdipCloneStringFormat(GDIPCONST GpStringFormat *format,
  1909. GpStringFormat **newFormat);
  1910. GpStatus WINGDIPAPI
  1911. GdipSetStringFormatFlags(GpStringFormat *format, INT flags);
  1912. GpStatus WINGDIPAPI GdipGetStringFormatFlags(GDIPCONST GpStringFormat *format,
  1913. INT *flags);
  1914. GpStatus WINGDIPAPI
  1915. GdipSetStringFormatAlign(GpStringFormat *format, StringAlignment align);
  1916. GpStatus WINGDIPAPI
  1917. GdipGetStringFormatAlign(GDIPCONST GpStringFormat *format,
  1918. StringAlignment *align);
  1919. GpStatus WINGDIPAPI
  1920. GdipSetStringFormatLineAlign(GpStringFormat *format,
  1921. StringAlignment align);
  1922. GpStatus WINGDIPAPI
  1923. GdipGetStringFormatLineAlign(GDIPCONST GpStringFormat *format,
  1924. StringAlignment *align);
  1925. GpStatus WINGDIPAPI
  1926. GdipSetStringFormatTrimming(
  1927. GpStringFormat *format,
  1928. StringTrimming trimming
  1929. );
  1930. GpStatus WINGDIPAPI
  1931. GdipGetStringFormatTrimming(
  1932. GDIPCONST GpStringFormat *format,
  1933. StringTrimming *trimming
  1934. );
  1935. GpStatus WINGDIPAPI
  1936. GdipSetStringFormatHotkeyPrefix(GpStringFormat *format, INT hotkeyPrefix);
  1937. GpStatus WINGDIPAPI
  1938. GdipGetStringFormatHotkeyPrefix(GDIPCONST GpStringFormat *format,
  1939. INT *hotkeyPrefix);
  1940. GpStatus WINGDIPAPI
  1941. GdipSetStringFormatTabStops(GpStringFormat *format, REAL firstTabOffset,
  1942. INT count, GDIPCONST REAL *tabStops);
  1943. GpStatus WINGDIPAPI
  1944. GdipGetStringFormatTabStops(GDIPCONST GpStringFormat *format, INT count,
  1945. REAL *firstTabOffset, REAL *tabStops);
  1946. GpStatus WINGDIPAPI
  1947. GdipGetStringFormatTabStopCount(GDIPCONST GpStringFormat *format, INT * count);
  1948. GpStatus WINGDIPAPI
  1949. GdipSetStringFormatDigitSubstitution(GpStringFormat *format, LANGID language,
  1950. StringDigitSubstitute substitute);
  1951. GpStatus WINGDIPAPI
  1952. GdipGetStringFormatDigitSubstitution(GDIPCONST GpStringFormat *format,
  1953. LANGID *language,
  1954. StringDigitSubstitute *substitute);
  1955. GpStatus WINGDIPAPI
  1956. GdipGetStringFormatMeasurableCharacterRangeCount(
  1957. GDIPCONST GpStringFormat *format,
  1958. INT *count
  1959. );
  1960. GpStatus WINGDIPAPI
  1961. GdipSetStringFormatMeasurableCharacterRanges(
  1962. GpStringFormat *format,
  1963. INT rangeCount,
  1964. GDIPCONST CharacterRange *ranges
  1965. );
  1966. //----------------------------------------------------------------------------
  1967. // Cached Bitmap APIs
  1968. //----------------------------------------------------------------------------
  1969. GpStatus WINGDIPAPI
  1970. GdipCreateCachedBitmap(
  1971. GpBitmap *bitmap,
  1972. GpGraphics *graphics,
  1973. GpCachedBitmap **cachedBitmap
  1974. );
  1975. GpStatus WINGDIPAPI
  1976. GdipDeleteCachedBitmap(GpCachedBitmap *cachedBitmap);
  1977. GpStatus WINGDIPAPI
  1978. GdipDrawCachedBitmap(
  1979. GpGraphics *graphics,
  1980. GpCachedBitmap *cachedBitmap,
  1981. INT x,
  1982. INT y
  1983. );
  1984. UINT WINGDIPAPI
  1985. GdipEmfToWmfBits(
  1986. HENHMETAFILE hemf,
  1987. UINT cbData16,
  1988. LPBYTE pData16,
  1989. INT iMapMode,
  1990. INT eFlags
  1991. );
  1992. GpStatus WINGDIPAPI
  1993. GdipSetImageAttributesCachedBackground(
  1994. GpImageAttributes *imageattr,
  1995. BOOL enableFlag
  1996. );
  1997. GpStatus WINGDIPAPI
  1998. GdipTestControl(
  1999. GpTestControlEnum control,
  2000. void * param
  2001. );
  2002. GpStatus WINAPI
  2003. GdiplusNotificationHook(
  2004. OUT ULONG_PTR *token
  2005. );
  2006. VOID WINAPI
  2007. GdiplusNotificationUnhook(
  2008. ULONG_PTR token
  2009. );
  2010. #ifdef __cplusplus
  2011. }
  2012. #endif
  2013. #endif // !_FLATAPI_H