Brush Functions ================================================================= CreateBrushIndirect Creates a brush with a specified style, color, and pattern CreateDIBPatternBrushPt Creates a brush with the pattern from a DIB CreateHatchBrush Creates a brush with a hatch pattern and color CreatePatternBrush Creates a brush with a bitmap pattern CreateSolidBrush Creates a brush with a solid color GetBrushOrgEx Gets the brush origin for a device context GetSysColorBrush Gets a handle to a brush that corresponds to a color index PatBlt Paints a rectangle SetBrushOrgEx Sets the brush origin for a device context SetDCBrushColor Sets the current device context brush color. Bitmap Functions ================================================================= AlphaBlend Displays a bitmap with transparent or semitransparent pixels. BitBlt Performs a bit-block transfer. CreateBitmap Creates a bitmap. CreateBitmapIndirect Creates a bitmap. CreateCompatibleBitmap Creates a bitmap compatible with a device. CreateDIBitmap Creates a device-dependent bitmap (DDB) from a DIB. CreateDIBSection Creates a DIB that applications can write to directly. ExtFloodFill Fills an area of the display surface with the current brush. GetBitmapDimensionEx Gets the dimensions of a bitmap. GetDIBColorTable Retrieves RGB color values from a DIB section bitmap. GetDIBits Copies a bitmap into a buffer. GetPixel Gets the RGB color value of the pixel at a given coordinate. GetStretchBltMode Gets the current stretching mode. GradientFill Fills rectangle and triangle structures. LoadBitmap Loads a bitmap from a module's executable file. MaskBlt Combines the color data in the source and destination bitmaps. PlgBlt Performs a bit-block transfer. SetBitmapDimensionEx Sets the preferred dimensions to a bitmap. SetDIBColorTable Sets RGB values in a DIB. SetDIBits Sets the pixels in a bitmap using color data from a DIB. Clipping Functions ================================================================= ExcludeClipRect Creates a new clipping region that consists of the existing clipping region minus the specified rectangle. ExtSelectClipRgn Combines the specified region with the current clipping region using the specified mode. GetClipBox Retrieves the dimensions of the tightest bounding rectangle that can be drawn around the current visible area on the device. GetClipRgn Retrieves a handle identifying the current application-defined clipping region for the specified device context. GetMetaRgn Retrieves the current metaregion for the specified device context. GetRandomRgn Copies the system clipping region of a specified device context to a specific region. IntersectClipRect Creates a new clipping region from the intersection of the current clipping region and the specified rectangle. OffsetClipRgn Moves the clipping region of a device context by the specified offsets. PtVisible Determines whether the specified point is within the clipping region of a device context. RectVisible Determines whether any part of the specified rectangle lies within the clipping region of a device context. SelectClipPath Selects the current path as a clipping region for a device context, combining the new region with any existing clipping region by using the specified mode. SelectClipRgn Selects a region as the current clipping region for the specified device context. SetMetaRgn Intersects the current clipping region for the specified device context with the current metaregion and saves the combined region as the new metaregion for the specified device context. SetDIBitsToDevice Sets the pixels in a rectangle using color data from a DIB. SetPixel Sets the color for a pixel. SetPixelV Sets a pixel to the best approximation of a color. SetStretchBltMode Sets the bitmap stretching mode. StretchBlt Copies a bitmap and stretches or compresses it. StretchDIBits Copies the color data in a DIB. TransparentBlt Performs a bit-block transfer of color data. Color Functions ================================================================= AnimatePalette Replaces entries in the specified logical palette. CreateHalftonePalette Creates a halftone palette for the specified device context (DC). CreatePalette Creates a logical palette. GetColorAdjustment Retrieves the color adjustment values for the specified DC. GetNearestColor Retrieves a color value identifying a color from the system palette that will be displayed when the specified color value is used. GetNearestPaletteIndex Retrieves the index for the entry in the specified logical palette most closely matching a specified color value. GetPaletteEntries Retrieves a specified range of palette entries from the given logical palette. GetSystemPaletteEntries Retrieves a range of palette entries from the system palette that is associated with the specified DC. GetSystemPaletteUse Retrieves the current state of the system (physical) palette for the specified DC. RealizePalette Maps palette entries from the current logical palette to the system palette. ResizePalette Increases or decreases the size of a logical palette based on the specified value. SelectPalette Selects the specified logical palette into a device context. SetColorAdjustment Sets the color adjustment values for a DC using the specified values. SetPaletteEntries Sets RGB (red, green, blue) color values and flags in a range of entries in a logical palette. SetSystemPaletteUse Allows an application to specify whether the system palette contains 2 or 20 static colors. UnrealizeObject Resets the origin of a brush or resets a logical palette. UpdateColors Updates the client area of the specified device context by remapping the current colors in the client area to the currently realized logical palette. Coordinate Space and Transformation Functions ================================================================= ClientToScreen Converts the client-area coordinates of a specified point to screen coordinates. CombineTransform Concatenates two world-space to page-space transformations. DPtoLP Converts device coordinates into logical coordinates. GetCurrentPositionEx Retrieves the current position in logical coordinates. GetGraphicsMode Retrieves the current graphics mode for the specified device context. GetMapMode Retrieves the current mapping mode. GetViewportExtEx Retrieves the x-extent and y-extent of the current viewport for the specified device context. GetViewportOrgEx Retrieves the x-coordinates and y-coordinates of the viewport origin for the specified device context. GetWindowExtEx Retrieves the x-extent and y-extent of the window for the specified device context. GetWindowOrgEx Retrieves the x-coordinates and y-coordinates of the window origin for the specified device context. GetWorldTransform Retrieves the current world-space to page-space transformation. LPtoDP Converts logical coordinates into device coordinates. MapWindowPoints Converts (maps) a set of points from a coordinate space relative to one window to a coordinate space relative to another window. ModifyWorldTransform Changes the world transformation for a device context using the specified mode. OffsetViewportOrgEx Modifies the viewport origin for a device context using the specified horizontal and vertical offsets. OffsetWindowOrgEx Modifies the window origin for a device context using the specified horizontal and vertical offsets. ScaleViewportExtEx Modifies the viewport for a device context using the ratios formed by the specified multiplicands and divisors. ScaleWindowExtEx Modifies the window for a device context using the ratios formed by the specified multiplicands and divisors. ScreenToClient Converts the screen coordinates of a specified point on the screen to client coordinates. SetGraphicsMode Sets the graphics mode for the specified device context. SetMapMode Sets the mapping mode of the specified device context. SetViewportExtEx Sets the horizontal and vertical extents of the viewport for a device context by using the specified values. SetViewportOrgEx Specifies which device point maps to the window origin (0,0). SetWindowExtEx Sets the horizontal and vertical extents of the window for a device context by using the specified values. SetWindowOrgEx Specifies which window point maps to the viewport origin (0,0). SetWorldTransform Sets a two-dimensional linear transformation between world space and page space for the specified device context. Cursors ================================================================= ClipCursor The ClipCursor function confines the cursor to a rectangular area on the screen. If a subsequent cursor position (set by the SetCursorPos function or the mouse) lies outside the rectangle, the system automatically adjusts the position to keep the cursor inside the rectangular area. CopyCursor The CopyCursor function copies the specified cursor. CreateCursor The CreateCursor function creates a cursor having the specified size, bit patterns, and hot spot. DestroyCursor The DestroyCursor function destroys a cursor and frees any memory the cursor occupied. Do not use this function to destroy a shared cursor. GetClipCursor The GetClipCursor function retrieves the screen coordinates of the rectangular area to which the cursor is confined. GetCursor The GetCursor function retrieves a handle to the current cursor. GetCursorInfo The GetCursorInfo function retrieves information about the global cursor. GetCursorPos Retrieves the cursor's position, in screen coordinates. GetPhysicalCursorPos Gets the position of the cursor in physical coordinates. LoadCursor The LoadCursor function loads the specified cursor resource from the executable (.EXE) file associated with an application instance. Note This function has been superseded by the LoadImage function. LoadCursorFromFile The LoadCursorFromFile function creates a cursor based on data contained in a file. SetCursor The SetCursor function sets the cursor shape. SetCursorPos Moves the cursor to the specified screen coordinates. If the new coordinates are not within the screen rectangle set by the most recent ClipCursor function call, the system automatically adjusts the coordinates so that the cursor stays within the rectangle. SetPhysicalCursorPos Sets the position of the cursor in physical coordinates. SetSystemCursor The SetSystemCursor function enables an application to customize the system cursors. It replaces the contents of the system cursor specified by the id parameter with the contents of the cursor specified by the hcur parameter and then destroys hcur. ShowCursor The ShowCursor function displays or hides the cursor. Device Context ================================================================= CancelDC Cancels any pending operation on the specified device context. ChangeDisplaySettings Changes the settings of the default display device to the specified graphics mode. ChangeDisplaySettingsEx Changes the settings of the specified display device to the specified graphics mode. CreateCompatibleDC Creates a memory device context compatible with the specified device. CreateDC Creates a device context for a device using the specified name. CreateIC Creates an information context for the specified device. DeleteDC Deletes the specified device context. DeleteObject Deletes a logical pen, brush, font, bitmap, region, or palette, freeing all system resources associated with the object. DeviceCapabilities Retrieves the capabilities of a printer device driver. DrawEscape Provides drawing capabilities of the specified video display that are not directly available through the graphics device interface. EnumDisplayDevices Retrieves information about the display devices in a system. EnumDisplaySettings Retrieves information about one of the graphics modes for a display device. EnumDisplaySettingsEx Retrieves information about one of the graphics modes for a display device. EnumObjects Enumerates the pens or brushes available for the specified device context. EnumObjectsProc An application-defined callback function used with the EnumObjects function. GetCurrentObject Retrieves a handle to an object of the specified type that has been selected into the specified device context. GetDC Retrieves a handle to a display device context for the client area of a specified window or for the entire screen. GetDCBrushColor Retrieves the current brush color for the specified device context. GetDCEx Retrieves a handle to a display device context for the client area of a specified window or for the entire screen. GetDCOrgEx Retrieves the final translation origin for a specified device context. GetDCPenColor Retrieves the current pen color for the specified device context. GetDeviceCaps Retrieves device-specific information for the specified device. GetLayout Retrieves the layout of a device context. GetObject Retrieves information for the specified graphics object. GetObjectType Retrieves the type of the specified object. GetStockObject Retrieves a handle to one of the stock pens, brushes, fonts, or palettes. ReleaseDC Releases a device context, freeing it for use by other applications. ResetDC Updates the specified printer or plotter device context using the specified information. RestoreDC Restores a device context to the specified state. SaveDC Saves the current state of the specified device context by copying data describing selected objects and graphic modes to a context stack. SelectObject Selects an object into the specified device context. SetDCBrushColor Sets the current device context brush color to the specified color value. SetDCPenColor Sets the current device context pen color to the specified color value. SetLayout Sets the layout for a device context. Filled Shape Functions ================================================================= Chord Draws an area bounded by an ellipse and a line segment. Ellipse Draws an ellipse. FillRect Fills a rectangle using a brush. FrameRect Draws a border around a rectangle using a brush. InvertRect Inverts the color values of the pixels in a rectangle. Pie Draws a pie-shaped wedge bounded by an ellipse and two radials. Polygon Draws a polygon. PolyPolygon draws a series of closed polygons. Rectangle Draws a rectangle. RoundRect Draws a rectangle with rounded corners. Font and Text Functions ================================================================= AddFontMemResourceEx Adds an embedded font to the system font table. AddFontResource Adds a font resource to the system font table. AddFontResourceEx Adds a private or non-enumerable font to the system font table. CreateFont Creates a logical font. CreateFontIndirect Creates a logical font from a structure. CreateFontIndirectEx Creates a logical font from a structure. CreateScalableFontResource Creates a font resource file for a scalable font. DrawText Draws formatted text in a rectangle. DrawTextEx Draws formatted text in rectangle. EnumFontFamExProc An application definedcallback function used with EnumFontFamiliesEx to process fonts. EnumFontFamiliesEx Enumerates all fonts in the system with certain characteristics. ExtTextOut Draws a character string. GetAspectRatioFilterEx Gets the setting for the aspect-ratio filter. GetCharABCWidths Gets the widths of consecutive characters from the TrueType font. GetCharABCWidthsFloat Gets the widths of consecutive characters from the current font. GetCharABCWidthsI Gets the widths of consecutive glyph indices or from an array of glyph indices from the TrueType font. GetCharacterPlacement Gets information about a character string. GetCharWidth32 Gets the widths of consecutive characters from the current font. GetCharWidthFloat Gets the fractional widths of consecutive characters from the current font. GetCharWidthI Gets the widths of consecutive glyph indices or an array of glyph indices from the current font. GetFontData Gets metric data for a TrueType font. GetFontLanguageInfo Returns information about the selected font for a display context. GetFontUnicodeRanges Tells which Unicode characters are supported by a font. GetGlyphIndices Translates a string into an array of glyph indices. GetGlyphOutline Gets the outline or bitmap for a character in the TrueType font. GetKerningPairs Gets the character-kerning pairs for a font. GetOutlineTextMetrics Gets text metrics for TrueType fonts. GetRasterizerCaps Tells whether TrueType fonts are installed. GetTabbedTextExtent Computes the width and height of a character string, including tabs. GetTextAlign Gets the text-alignment setting for a device context. GetTextCharacterExtra Gets the current intercharacter spacing for a device context. GetTextColor Gets the text color for a device context. GetTextExtentExPoint Gets the number of characters in a string that will fit within a space. GetTextExtentExPointI Gets the number of glyph indices that will fit within a space. GetTextExtentPoint32 Computes the width and height of a string of text. GetTextExtentPointI Computes the width and height of an array of glyph indices. GetTextFace Gets the name of the font that is selected into a device context. GetTextMetrics Fills a buffer with the metrics for a font. PolyTextOut Draws several strings using the font and text colors in a device context. RemoveFontMemResourceEx Removes a font whose source was embedded in a document from the system font table. RemoveFontResource Removes the fonts in a file from the system font table. RemoveFontResourceEx Removes a private or non-enumerable font from the system font table. SetMapperFlags Alters the algorithm used to map logical fonts to physical fonts. SetTextAlign Sets the text-alignment flags for a device context. SetTextCharacterExtra Sets the intercharacter spacing. SetTextColor Sets the text color for a device context. SetTextJustification Specifies the amount of space the system should add to the break characters in a string. TabbedTextOut Writes a character string at a location, expanding tabs to specified values. TextOut Writes a character string at a location. Icons ================================================================= CopyIcon The CopyIcon function copies the specified icon from another module to the current module. CreateIcon The CreateIcon function creates an icon that has the specified size, colors, and bit patterns. CreateIconFromResource The CreateIconFromResource function creates an icon or cursor from resource bits describing the icon. To specify a desired height or width, use the CreateIconFromResourceEx function. CreateIconFromResourceEx The CreateIconFromResourceEx function creates an icon or cursor from resource bits describing the icon. CreateIconIndirect The CreateIconIndirect function creates an icon or cursor from an ICONINFO structure. DestroyIcon Destroys an icon and frees any memory the icon occupied. DrawIcon The DrawIcon function draws an icon or cursor into the specified device context. To specify additional drawing options, use the DrawIconEx function. DrawIconEx The DrawIconEx function draws an icon or cursor into the specified device context, performing the specified raster operations, and stretching or compressing the icon or cursor as specified. DuplicateIcon The DuplicateIcon function creates a duplicate of a specified icon. ExtractAssociatedIcon The ExtractAssociatedIcon function returns a handle to an indexed icon found in a file or an icon found in an associated executable file. ExtractIcon The ExtractIcon function retrieves a handle to an icon from the specified executable file, DLL, or icon file. To retrieve an array of handles to large or small icons, use the ExtractIconEx function. ExtractIconEx The ExtractIconEx function creates an array of handles to large or small icons extracted from the specified executable file, DLL, or icon file. GetIconInfo The GetIconInfo function retrieves information about the specified icon or cursor. GetIconInfoEx Retrieves information about the specified icon or cursor. GetIconInfoEx extends GetIconInfo by using the newer ICONINFOEX structure. LoadIcon The LoadIcon function loads the specified icon resource from the executable (.exe) file associated with an application instance. Note This function hase been superseded by the LoadImage function. LookupIconIdFromDirectory The LookupIconIdFromDirectory function searches through icon or cursor data for the icon or cursor that best fits the current display device. To specify a desired height or width, use the LookupIconIdFromDirectoryEx function. LookupIconIdFromDirectoryEx The LookupIconIdFromDirectoryEx function searches through icon or cursor data for the icon or cursor that best fits the current display device. PrivateExtractIcons Creates an array of handles to icons that are extracted from a specified file. Line and Curve ================================================================= AngleArc Draws a line segment and an arc. Arc Draws an elliptical arc. ArcTo Draws an elliptical arc. GetArcDirection Retrieves the current arc direction for the specified device context. LineDDA Determines which pixels should be highlighted for a line defined by the specified starting and ending points. LineDDAProc An application-defined callback function used with the LineDDA function. LineTo Draws a line from the current position up to, but not including, the specified point. MoveToEx Updates the current position to the specified point and optionally returns the previous position. PolyBezier Draws one or more Bčzier curves. PolyBezierTo Draws one or more Bčzier curves. PolyDraw Draws a set of line segments and Bčzier curves. Polyline Draws a series of line segments by connecting the points in the specified array. PolylineTo Draws one or more straight lines. PolyPolyline Draws multiple series of connected line segments. SetArcDirection Sets the drawing direction to be used for arc and rectangle functions. Metafile Functions ================================================================= CloseEnhMetaFile Closes an enhanced-metafile device context. CopyEnhMetaFile Copies the contents of an enhanced-format metafile to a specified file. CreateEnhMetaFile Creates a device context for an enhanced-format metafile. DeleteEnhMetaFile Deletes an enhanced-format metafile or an enhanced-format metafile handle. EnhMetaFileProc An application-defined callback function used with the EnumEnhMetaFile function. EnumEnhMetaFile Enumerates the records within an enhanced-format metafile. GdiComment Copies a comment from a buffer into a specified enhanced-format metafile. GetEnhMetaFile Creates a handle that identifies the enhanced-format metafile stored in the specified file. GetEnhMetaFileBits Retrieves the contents of the specified enhanced-format metafile and copies them into a buffer. GetEnhMetaFileDescription Retrieves an optional text description from an enhanced-format metafile and copies the string to the specified buffer. GetEnhMetaFileHeader Retrieves the record containing the header for the specified enhanced-format metafile. GetEnhMetaFilePaletteEntries Retrieves optional palette entries from the specified enhanced metafile. GetWinMetaFileBits Converts the enhanced-format records from a metafile into Windows-format records. PlayEnhMetaFile Displays the picture stored in the specified enhanced-format metafile. PlayEnhMetaFileRecord Plays an enhanced-metafile record by executing the graphics device interface (GDI) functions identified by the record. SetEnhMetaFileBits Creates a memory-based enhanced-format metafile from the specified data. SetWinMetaFileBits Converts a metafile from the older Windows format to the new enhanced format. Painting and Drawing ================================================================= BeginPaint Prepares a window for painting. DrawAnimatedRects Draws a rectangle and animates it to indicate icon or window activity. DrawCaption Draws a window caption. DrawEdge Draws one or more edges of rectangle. DrawFocusRect Draws a rectangle in the style that indicates the rectangle has the focus. DrawFrameControl Draws a frame control. DrawState Displays an image and applies a visual effect to indicate a state. DrawStateProc A callback function that renders a complex image for DrawState. EndPaint Marks the end of painting in a window. ExcludeUpdateRgn Prevents drawing within invalid areas of a window. GdiFlush Flushes the calling thread's current batch. GdiGetBatchLimit Returns the maximum number of function calls that can be accumulated in the calling thread's current batch. GdiSetBatchLimit Sets the maximum number of function calls that can be accumulated in the calling thread's current batch. GetBkColor Returns the background color for a device context. GetBkMode Returns the background mix mode for a device context. GetBoundsRect Gets the accumulated bounding rectangle for a device context. GetROP2 Gets the foreground mix mode of a device context. GetUpdateRect Gets the coordinates of the smallest rectangle that encloses the update region of a window. GetUpdateRgn Gets the update region of a window. GetWindowDC Gets the device context for a window, including title bar, menus, and scroll bars. GetWindowRgn Gets a copy of the window region of a window. GetWindowRgnBox Gets the dimensions of the tightest bounding rectangle for the window region of a window. GrayString Draws gray text at a location. InvalidateRect Adds a rectangle to a window's update region. InvalidateRgn Invalidates the client area within a region. LockWindowUpdate Disables or enables drawing in a window. OutputProc A callback function used with the GrayString function. It is used to draw a string. PaintDesktop Fills the clipping region in a device context with a pattern. RedrawWindow Updates a region in a window's client area. SetBkColor Sets the background to a color value. SetBkMode Sets the background mix mode of a device context. SetBoundsRect Controls the accumulation of bounding rectangle information for a device context. SetROP2 Sets the foreground mix mode. SetWindowRgn Sets the window region of a window. UpdateWindow Updates the client area of a window. ValidateRect Validates the client area within a rectangle. ValidateRgn Validates the client area within a region. WindowFromDC Returns a handle to the window associated with a device context. Path Functions ================================================================= AbortPath Closes and discards any paths in the specified device context. BeginPath Opens a path bracket in the specified device context. CloseFigure Closes an open figure in a path. EndPath Closes a path bracket and selects the path defined by the bracket into the specified device context. FillPath Closes any open figures in the current path and fills the path's interior by using the current brush and polygon-filling mode. FlattenPath Transforms any curves in the path that is selected into the current device context (DC), turning each curve into a sequence of lines. GetMiterLimit Retrieves the miter limit for the specified device context. GetPath Retrieves the coordinates defining the endpoints of lines and the control points of curves found in the path that is selected into the specified device context. PathToRegion Creates a region from the path that is selected into the specified device context. SetMiterLimit Sets the limit for the length of miter joins for the specified device context. StrokeAndFillPath Closes any open figures in a path, strokes the outline of the path by using the current pen, and fills its interior by using the current brush. StrokePath Renders the specified path by using the current pen. WidenPath Redefines the current path as the area that would be painted if the path were stroked using the pen currently selected into the given device context. Pen Functions ================================================================= CreatePen Creates a logical pen that has the specified style, width, and color. CreatePenIndirect Creates a logical cosmetic pen that has the style, width, and color specified in a structure. ExtCreatePen Creates a logical cosmetic or geometric pen that has the specified style, width, and brush attributes. SetDCPenColor Sets the current device context pen color. Rectangle Functions ================================================================= Function Description CopyRect Copies the coordinates of one rectangle to another. EqualRect Determines whether the two specified rectangles are equal by comparing the coordinates of their upper-left and lower-right corners. InflateRect Increases or decreases the width and height of the specified rectangle. IntersectRect Calculates the intersection of two source rectangles and places the coordinates of the intersection rectangle into the destination rectangle. IsRectEmpty Determines whether the specified rectangle is empty. OffsetRect Moves the specified rectangle by the specified offsets. PtInRect Determines whether the specified point lies within the specified rectangle. SetRect Sets the coordinates of the specified rectangle. SetRectEmpty Creates an empty rectangle in which all coordinates are set to zero. SubtractRect Determines the coordinates of a rectangle formed by subtracting one rectangle from another. UnionRect Creates the union of two rectangles. Region Functions ================================================================= CombineRgn Combines two regions and stores the result in a third region. CreateEllipticRgn Creates an elliptical region. CreateEllipticRgnIndirect Creates an elliptical region. CreatePolygonRgn Creates a polygonal region. CreatePolyPolygonRgn Creates a region consisting of a series of polygons. CreateRectRgn Creates a rectangular region. CreateRectRgnIndirect Creates a rectangular region. CreateRoundRectRgn Creates a rectangular region with rounded corners. EqualRgn Checks the two specified regions to determine whether they are identical. ExtCreateRegion Creates a region from the specified region and transformation data. FillRgn Fills a region by using the specified brush. FrameRgn Draws a border around the specified region by using the specified brush. GetPolyFillMode Retrieves the current polygon fill mode. GetRegionData Fills the specified buffer with data describing a region. GetRgnBox Retrieves the bounding rectangle of the specified region. InvertRgn Inverts the colors in the specified region. OffsetRgn Moves a region by the specified offsets. PaintRgn Paints the specified region by using the brush currently selected into the device context. PtInRegion Determines whether the specified point is inside the specified region. RectInRegion Determines whether any part of the specified rectangle is within the boundaries of a region. SetPolyFillMode Sets the polygon fill mode for functions that fill polygons. SetRectRgn Converts a region into a rectangular region with the specified coordinates.