61.3.4 New Calls

This summarizes the additional functionality in GDI.

61.3.4.1 Drawing

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.

61.3.4.2 Fonts and Text

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

61.3.4.3 BitBlts

A few extensions were made to blting.

CreateDibSection New Dib creation call.
MaskBlt Blt through a mask.
PlgBlt Rotated blts.

61.3.4.4 Path

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.

61.3.4.5 Transforms

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.

61.3.4.6 Miscellaneous

A few miscellaneous calls were added.

CancelDC Stop long operations on a DC.
GetClipRgn Get the current clipping region.

61.3.4.7 Minor Variations of Existing Calls

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.