This summarizes the additional functionality in GDI.
The number of extensions were made to the drawing calls. The largest change is the addition of bezier curves.
| AngleArc | Draws an arc of a circle. |
| ArcTo | Draws a arc starting from the current position. |
| CloseFigure | Close a drawing figure. |
| ExtCreatePen | Improved line styles and joins. |
| PolyBezier | Bezier drawing call. |
| PolyBezierTo | Bezier drawing call. |
| PolylineTo | Draw multiple lines starting from current position. |
| PolyDraw | Draw multiple lines and beziers. |
| PolyPolyline | Draw multiple sets of lines. |
Font improvement include better font mapping and more information on fonts.
| DiffFonts | Improved font enumeration |
| ExtCreateFontIndirect | Improved Font creation (panose). |
| GetCharWidthFloat | Fractional character widths. |
| GetFontMapperControls | Improved font mapping |
| GetKerningPairs | Get kerning information. |
| SetFontMapperControls | Improved font mapping |
| SetTextBrush | Brushs for text |
A few extensions were made to blting.
| CreateDibSection | New Dib creation call. |
| MaskBlt | Blt through a mask. |
| PlgBlt | Rotated blts. |
Win32 GDI has a complete set of path calls.
| BeginPath | Start a path |
| EndPath | End a path |
| FillPath | Fill a path. |
| FlattenPath | Flatten a path to a series of lines |
| PathToRegion | Convert a path to a region. |
| SelectClipPath | Select a path as a region. |
| SetFlat | Set parameter for path flattening. |
| StrokeAndFillPath | Stroke and fill a path. |
| StrokePath | Stroke a path |
| WidenPat | hWiden a path. |
Win32 GDI has a new set of transform calls. These permit an application to specify arbitrary transforms.
| GetWorldTransform | Get the current transform. |
| ModifyWorldTransform | Change the transform. |
| SetWorldTransform | Set the new transforms. |
A few miscellaneous calls were added.
| CancelDC | Stop long operations on a DC. |
| GetClipRgn | Get the current clipping region. |
Three calls fall into this category. Two are split off from AddFontResource and RemoveFontResource. One is a slight variation of CreateDIBPatternBrush.
| AddFontModule | This calls was split from AddFontResource. This call takes a module handle. AddFontResource takes a filename. Previously AddFontResource too both types of parameters. |
| CreatDIBPatternBrushPt | The CreatDIBPatternBrush calls takes a GLOBALHANDLE to memory. We strongly recommend applications convert to the new CreateDIBPatternBrushPt call. This call takes a pointer to the brush rather than a GLOBALHANDLE. Other than that the functionality is identical. |
| RemoveFontModule | This calls was split from RemoveFontResource. This call takes a module handle. RemoveFontResource takes a filename. Previously RemoveFontResource too both types of parameters. |