次の方法で共有


Pen.ScaleTransform メソッド

定義

指定した係数でローカル ジオメトリック変換をスケーリングします。 このメソッドは、スケーリング マトリックスの前に変換を追加します。

オーバーロード

ScaleTransform(Single, Single)

指定した係数でローカル ジオメトリック変換をスケーリングします。 このメソッドは、スケーリング マトリックスの前に変換を追加します。

ScaleTransform(Single, Single, MatrixOrder)

指定した順序で、指定した係数でローカル ジオメトリック変換をスケーリングします。

ScaleTransform(Single, Single)

ソース:
Pen.cs
ソース:
Pen.cs
ソース:
Pen.cs
ソース:
Pen.cs
ソース:
Pen.cs

指定した係数でローカル ジオメトリック変換をスケーリングします。 このメソッドは、スケーリング マトリックスの前に変換を追加します。

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)

パラメーター

sx
Single

x 軸方向の変換をスケーリングする係数。

sy
Single

変換を y 軸方向にスケーリングする係数。

次のコード例は Windows フォームで使用できるように設計されており、Paint イベント ハンドラーのパラメーターである PaintEventArgseが必要です。 このコードは、次のアクションを実行します。

Penを作成します。

ペンを使用して四角形を描画します。

ペンを x 軸方向に 2 倍にスケーリングします。

2 番目の四角形を描画して、違いを示します。

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

適用対象

ScaleTransform(Single, Single, MatrixOrder)

ソース:
Pen.cs
ソース:
Pen.cs
ソース:
Pen.cs
ソース:
Pen.cs
ソース:
Pen.cs

指定した順序で、指定した係数でローカル ジオメトリック変換をスケーリングします。

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)

パラメーター

sx
Single

x 軸方向の変換をスケーリングする係数。

sy
Single

変換を y 軸方向にスケーリングする係数。

order
MatrixOrder

スケーリング マトリックスを追加するか先頭に追加するかを指定する MatrixOrder

次のコード例は Windows フォームで使用できるように設計されており、Paint イベント ハンドラーのパラメーターである PaintEventArgseが必要です。 このコードは、次のアクションを実行します。

  • Penを作成します。

  • ペンを使用して四角形を描画します。

  • ペンを x 軸方向に 2 倍にスケーリングします。

  • 2 番目の四角形を描画して、違いを示します。

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

適用対象