Pen.ScaleTransform Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Scales the local geometric transformation by the specified factors. This method prepends the scaling matrix to the transformation.
Overloads
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. |
ScaleTransform(Single, Single)
- Source:
- Pen.cs
- Source:
- Pen.cs
- Source:
- Pen.cs
Scales the local geometric transformation by the specified factors. This method prepends the scaling matrix to the transformation.
public:
void ScaleTransform(float sx, float sy);
public void ScaleTransform (float sx, float sy);
member this.ScaleTransform : single * single -> unit
Public Sub ScaleTransform (sx As Single, sy As Single)
Parameters
- sx
- Single
The factor by which to scale the transformation in the x-axis direction.
- sy
- Single
The factor by which to scale the transformation in the y-axis direction.
Examples
The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e
, 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_Example1( 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 );
// Draw a second rectangle with rotatePen.
e->Graphics->DrawRectangle( scalePen, 120, 10, 100, 100 );
}
public void ScaleTransform_Example1(PaintEventArgs e)
{
// Create a Pen object.
Pen scalePen = new Pen(Color.Black, 5);
// 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);
// Draw a second rectangle with rotatePen.
e.Graphics.DrawRectangle(scalePen, 120, 10, 100, 100);
}
Public Sub ScaleTransform_Example1(ByVal e As PaintEventArgs)
' Create a Pen object.
Dim scalePen As New Pen(Color.Black, 5)
' 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)
' Draw a second rectangle with rotatePen.
e.Graphics.DrawRectangle(scalePen, 120, 10, 100, 100)
End Sub
Applies to
ScaleTransform(Single, Single, MatrixOrder)
- Source:
- Pen.cs
- Source:
- Pen.cs
- Source:
- Pen.cs
Scales the local geometric transformation by the specified factors in the specified order.
public:
void ScaleTransform(float sx, float sy, System::Drawing::Drawing2D::MatrixOrder order);
public void ScaleTransform (float sx, float sy, System.Drawing.Drawing2D.MatrixOrder order);
member this.ScaleTransform : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub ScaleTransform (sx As Single, sy As Single, order As MatrixOrder)
Parameters
- sx
- Single
The factor by which to scale the transformation in the x-axis direction.
- sy
- Single
The factor by which to scale the transformation in the y-axis direction.
- order
- MatrixOrder
A MatrixOrder that specifies whether to append or prepend the scaling matrix.
Examples
The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e
, 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 );
}
public void ScaleTransform_Example2(PaintEventArgs e)
{
// Create a Pen object.
Pen scalePen = new Pen(Color.Black, 5);
// 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);
}
Public Sub ScaleTransform_Example2(ByVal e As PaintEventArgs)
' Create a Pen object.
Dim scalePen As New Pen(Color.Black, 5)
' 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)
End Sub