Pen Class

Definition

Defines an object used to draw lines and curves. This class cannot be inherited.

public sealed class Pen : MarshalByRefObject, ICloneable, IDisposable
Inheritance
Implements

Inherited Members

System.MarshalByRefObject

System.Object

Examples

The following code example demonstrates constructing a Pen with a Brush and the effects of setting the LineJoin property on a Pen.

This example is designed to be used with Windows Forms. Paste the code into a form and call the ShowLineJoin method when handling the form's Paint event, passing e as PaintEventArgs.

private:
   void ShowLineJoin( PaintEventArgs^ e )
   {
      // Create a new pen.
      Pen^ skyBluePen = gcnew Pen( Brushes::DeepSkyBlue );

      // Set the pen's width.
      skyBluePen->Width = 8.0F;

      // Set the LineJoin property.
      skyBluePen->LineJoin = System::Drawing::Drawing2D::LineJoin::Bevel;

      // Draw a rectangle.
      e->Graphics->DrawRectangle( skyBluePen, Rectangle(40,40,150,200) );

      //Dispose of the pen.
      delete skyBluePen;
   }
private void ShowLineJoin(PaintEventArgs e)
{

    // Create a new pen.
    Pen skyBluePen = new Pen(Brushes.DeepSkyBlue);

    // Set the pen's width.
    skyBluePen.Width = 8.0F;

    // Set the LineJoin property.
    skyBluePen.LineJoin = System.Drawing.Drawing2D.LineJoin.Bevel;

    // Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, 
        new Rectangle(40, 40, 150, 200));

    //Dispose of the pen.
    skyBluePen.Dispose();

}
Private Sub ShowLineJoin(ByVal e As PaintEventArgs)

    ' Create a new pen.
    Dim skyBluePen As New Pen(Brushes.DeepSkyBlue)

    ' Set the pen's width.
    skyBluePen.Width = 8.0F

    ' Set the LineJoin property.
    skyBluePen.LineJoin = Drawing2D.LineJoin.Bevel

    ' Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, _
        New Rectangle(40, 40, 150, 200))

    'Dispose of the pen.
    skyBluePen.Dispose()

End Sub

Remarks

A Pen draws a line of specified width and style. Use the DashStyle property to draw several varieties of dashed lines. The line drawn by a Pen can be filled in a variety of fill styles, including solid colors and textures. The fill style depends on brush or texture that is used as the fill object.

Constructors

Pen(Brush)

Initializes a new instance of the Pen class with the specified Brush.

Pen(Color)

Initializes a new instance of the Pen class with the specified color.

Pen(Brush, Single)

Initializes a new instance of the Pen class with the specified Brush and Width.

Pen(Color, Single)

Initializes a new instance of the Pen class with the specified Color and Width properties.

Properties

Alignment

Gets or sets the alignment for this Pen.

Brush

Gets or sets the Brush that determines attributes of this Pen.

Color

Gets or sets the color of this Pen.

CompoundArray

Gets or sets an array of values that specifies a compound pen. A compound pen draws a compound line made up of parallel lines and spaces.

CustomEndCap

Gets or sets a custom cap to use at the end of lines drawn with this Pen.

CustomStartCap

Gets or sets a custom cap to use at the beginning of lines drawn with this Pen.

DashCap

Gets or sets the cap style used at the end of the dashes that make up dashed lines drawn with this Pen.

DashOffset

Gets or sets the distance from the start of a line to the beginning of a dash pattern.

DashPattern

Gets or sets an array of custom dashes and spaces.

DashStyle

Gets or sets the style used for dashed lines drawn with this Pen.

EndCap

Gets or sets the cap style used at the end of lines drawn with this Pen.

LineJoin

Gets or sets the join style for the ends of two consecutive lines drawn with this Pen.

MiterLimit

Gets or sets the limit of the thickness of the join on a mitered corner.

PenType

Gets the style of lines drawn with this Pen.

StartCap

Gets or sets the cap style used at the beginning of lines drawn with this Pen.

Transform

Gets or sets a copy of the geometric transformation for this Pen.

Width

Gets or sets the width of this Pen, in units of the Graphics object used for drawing.

Methods

Clone()

Creates an exact copy of this Pen.

Dispose()

Releases all resources used by this Pen.

Finalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.

MultiplyTransform(Matrix)

Multiplies the transformation matrix for this Pen by the specified Matrix.

MultiplyTransform(Matrix, MatrixOrder)

Multiplies the transformation matrix for this Pen by the specified Matrix in the specified order.

ResetTransform()

Resets the geometric transformation matrix for this Pen to identity.

RotateTransform(Single, MatrixOrder)

Rotates the local geometric transformation by the specified angle in the specified order.

RotateTransform(Single)

Rotates the local geometric transformation by the specified angle. This method prepends the rotation to the transformation.

ScaleTransform(Single, Single)

Scales the local geometric transformation by the specified factors. This method prepends the scaling matrix to the transformation.

ScaleTransform(Single, Single, MatrixOrder)

Scales the local geometric transformation by the specified factors in the specified order.

SetLineCap(LineCap, LineCap, DashCap)

Sets the values that determine the style of cap used to end lines drawn by this Pen.

TranslateTransform(Single, Single, MatrixOrder)

Translates the local geometric transformation by the specified dimensions in the specified order.

TranslateTransform(Single, Single)

Translates the local geometric transformation by the specified dimensions. This method prepends the translation to the transformation.