Pen::ScaleTransform Method (Single, Single, MatrixOrder)

 

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

Namespace:   System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public:
void ScaleTransform(
	float sx,
	float sy,
	MatrixOrder order
)

Parameters

sx
Type: System::Single

The factor by which to scale the transformation in the x-axis direction.

sy
Type: System::Single

The factor by which to scale the transformation in the y-axis direction.

order
Type: System.Drawing.Drawing2D::MatrixOrder

A MatrixOrder that specifies whether to append or prepend the scaling matrix.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates a Pen.

  • Draws a rectangle using the pen.

  • Scales the pen by 2 times in the x-axis direction.

  • Draws a second rectangle to demonstrate the difference.

public:
   void ScaleTransform_Example2( PaintEventArgs^ e )
   {

      // Create a Pen object.
      Pen^ scalePen = gcnew Pen( Color::Black,5.0f );

      // Draw a rectangle with scalePen.
      e->Graphics->DrawRectangle( scalePen, 10, 10, 100, 100 );

      // Scale scalePen by 2X in the x-direction.
      scalePen->ScaleTransform( 2, 1, MatrixOrder::Prepend );

      // Draw a second rectangle with rotatePen.
      e->Graphics->DrawRectangle( scalePen, 120, 10, 100, 100 );
   }

.NET Framework
Available since 1.1
Return to top
Show: