Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining

System.Drawing.Drawing2D Namespace

The System.Drawing.Drawing2D namespace provides advanced two-dimensional and vector graphics functionality.

The following table lists some of the important classes and enumerations in theSystem.Drawing.Drawing2D namespace, grouped into categories.

Class category


  • Graphics and Graphics paths

The GraphicsState and GraphicsContainer classes report information about the current Graphics object. GraphicsPath classes represent a series of lines and curves. The GraphicsPathIterator and PathData classes provide detailed information about the contents of a GraphicsPath object.

  • Matrix and transformation related types

The Matrix class represents a matrix for geometric transforms. The MatrixOrder enumeration specifies the order for matrix transformations.

  • Brush classes

The PathGradientBrush and HatchBrush classes enable you to fill shapes with either a gradient, or hatch pattern, respectively.

  • Enumeration related to lines

The LineCap and CustomLineCap enumerations enable you to specify cap styles for a line. The, LineJoin enumeration enables you to specify how two lines are joined in a path. The PenAlignment enumeration enables you specify the alignment of the drawing tip, when you draw a line. The PenType enumeration specifies the pattern a line should be filled with.

  • Enumerations related to filling shapes and paths

The HatchStyle enumeration specifies fill styles for a HatchBrush. The Blend class specifies a blend pattern for a LinearGradientBrush. The FillMode enumeration specifies the fill style for a GraphicsPath.

Caution note Caution

Classes in the System.Drawing.Drawing2D namespace are not supported for use in a Windows or ASP.NET service. Attempting to use these classes in one of these application types may produce unexpected problems, such as diminished service performance and run-time exceptions.

  Class Description
Public class AdjustableArrowCap Represents an adjustable arrow-shaped line cap. This class cannot be inherited.
Public class Blend Defines a blend pattern for a LinearGradientBrush object. This class cannot be inherited.
Public class ColorBlend Defines arrays of colors and positions used for interpolating color blending in a multicolor gradient. This class cannot be inherited.
Public class CustomLineCap Encapsulates a custom user-defined line cap.
Public class GraphicsContainer Represents the internal data of a graphics container. This class is used when saving the state of a Graphics object using the BeginContainer and EndContainer methods. This class cannot be inherited.
Public class GraphicsPath Represents a series of connected lines and curves. This class cannot be inherited.
Public class GraphicsPathIterator Provides the ability to iterate through subpaths in a GraphicsPath and test the types of shapes contained in each subpath. This class cannot be inherited.
Public class GraphicsState Represents the state of a Graphics object. This object is returned by a call to the Save methods. This class cannot be inherited.
Public class HatchBrush Defines a rectangular brush with a hatch style, a foreground color, and a background color. This class cannot be inherited.
Public class LinearGradientBrush Encapsulates a Brush with a linear gradient. This class cannot be inherited.
Public class Matrix Encapsulates a 3-by-3 affine matrix that represents a geometric transform. This class cannot be inherited.
Public class PathData Contains the graphical data that makes up a GraphicsPath object. This class cannot be inherited.
Public class PathGradientBrush Encapsulates a Brush object that fills the interior of a GraphicsPath object with a gradient. This class cannot be inherited.
Public class RegionData Encapsulates the data that makes up a Region object. This class cannot be inherited.

  Enumeration Description
Public enumeration CombineMode Specifies how different clipping regions can be combined.
Public enumeration CompositingMode Specifies how the source colors are combined with the background colors.
Public enumeration CompositingQuality Specifies the quality level to use during compositing.
Public enumeration CoordinateSpace Specifies the system to use when evaluating coordinates.
Public enumeration DashCap Specifies the type of graphic shape to use on both ends of each dash in a dashed line.
Public enumeration DashStyle Specifies the style of dashed lines drawn with a Pen object.
Public enumeration FillMode Specifies how the interior of a closed path is filled.
Public enumeration FlushIntention Specifies whether commands in the graphics stack are terminated (flushed) immediately or executed as soon as possible.
Public enumeration HatchStyle Specifies the different patterns available for HatchBrush objects.
Public enumeration InterpolationMode The InterpolationMode enumeration specifies the algorithm that is used when images are scaled or rotated.
Public enumeration LinearGradientMode Specifies the direction of a linear gradient.
Public enumeration LineCap Specifies the available cap styles with which a Pen object can end a line.
Public enumeration LineJoin Specifies how to join consecutive line or curve segments in a figure (subpath) contained in a GraphicsPath object.
Public enumeration MatrixOrder Specifies the order for matrix transform operations.
Public enumeration PathPointType Specifies the type of point in a GraphicsPath object.
Public enumeration PenAlignment Specifies the alignment of a Pen object in relation to the theoretical, zero-width line.
Public enumeration PenType Specifies the type of fill a Pen object uses to fill lines.
Public enumeration PixelOffsetMode Specifies how pixels are offset during rendering.
Public enumeration QualityMode Specifies the overall quality when rendering GDI+ objects.
Public enumeration SmoothingMode Specifies whether smoothing (antialiasing) is applied to lines and curves and the edges of filled areas.
Public enumeration WarpMode Specifies the type of warp transformation applied in a Warp method.
Public enumeration WrapMode Specifies how a texture or gradient is tiled when it is smaller than the area being filled.
© 2015 Microsoft