Bagikan melalui


GraphicsPath.GetBounds Metode

Definisi

Mengembalikan persegi panjang yang mengikat ini GraphicsPath.

Overload

GetBounds()

Mengembalikan persegi panjang yang mengikat ini GraphicsPath.

GetBounds(Matrix)

Mengembalikan persegi panjang yang mengikat ini GraphicsPath ketika jalur ini diubah oleh yang ditentukan Matrix.

GetBounds(Matrix, Pen)

Mengembalikan persegi panjang yang mengikat ini GraphicsPath ketika jalur saat ini diubah oleh yang ditentukan Matrix dan digambar dengan yang ditentukan Pen.

GetBounds()

Sumber:
GraphicsPath.cs
Sumber:
GraphicsPath.cs
Sumber:
GraphicsPath.cs

Mengembalikan persegi panjang yang mengikat ini GraphicsPath.

public:
 System::Drawing::RectangleF GetBounds();
public System.Drawing.RectangleF GetBounds ();
member this.GetBounds : unit -> System.Drawing.RectangleF
Public Function GetBounds () As RectangleF

Mengembalikan

RectangleF yang mewakili persegi panjang yang mengikat ini GraphicsPath.

Contoh

Contoh kode berikut dirancang untuk digunakan dengan Formulir Windows, dan memerlukan PaintEventArgse, OnPaint objek peristiwa. Kode melakukan tindakan berikut:

  • Membuat jalur grafik.

  • Menambahkan elips (lingkaran) ke dalamnya dan menggambarnya ke layar.

  • Mengambil persegi panjang pembatas untuk lingkaran dengan panggilan ke GetBounds dan menggambar persegi panjang ke layar.

  • Membuat jalur grafik kedua.

  • Menambahkan lingkaran dan memperlebar jalur ke lebar 10.

  • Menggambar jalur ke layar.

  • Mengambil persegi panjang pembatas untuk lingkaran kedua.

  • Menggambar persegi panjang pembatas ke layar.

  • Menampilkan ukuran persegi dalam kotak dialog.

Perhatikan bahwa persegi panjang pembatas di sebelah kanan lebih besar (untuk mempertanggungjawabkan lebar baris tambahan).

public:
   void GetBoundsExample( PaintEventArgs^ e )
   {
      // Create path number 1 and a Pen for drawing.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Pen^ pathPen = gcnew Pen( Color::Black,1.0f );

      // Add an Ellipse to the path and Draw it (circle in start
      // position).
      myPath->AddEllipse( 20, 20, 100, 100 );
      e->Graphics->DrawPath( pathPen, myPath );

      // Get the path bounds for Path number 1 and draw them.
      RectangleF boundRect = myPath->GetBounds();
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), boundRect.X, boundRect.Y, boundRect.Height, boundRect.Width );

      // Create a second graphics path and a wider Pen.
      GraphicsPath^ myPath2 = gcnew GraphicsPath;
      Pen^ pathPen2 = gcnew Pen( Color::Black,10.0f );

      // Create a new ellipse with a width of 10.
      myPath2->AddEllipse( 150, 20, 100, 100 );
      myPath2->Widen( pathPen2 );
      e->Graphics->FillPath( Brushes::Black, myPath2 );

      // Get the second path bounds.
      RectangleF boundRect2 = myPath2->GetBounds();

      // Draw the bounding rectangle.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), boundRect2.X, boundRect2.Y, boundRect2.Height, boundRect2.Width );

      // Display the rectangle size.
      MessageBox::Show( boundRect2.ToString() );
   }
public void GetBoundsExample(PaintEventArgs e)
{
             
    // Create path number 1 and a Pen for drawing.
    GraphicsPath myPath = new GraphicsPath();
    Pen pathPen = new Pen(Color.Black, 1);
             
    // Add an Ellipse to the path and Draw it (circle in start
             
    // position).
    myPath.AddEllipse(20, 20, 100, 100);
    e.Graphics.DrawPath(pathPen, myPath);
             
    // Get the path bounds for Path number 1 and draw them.
    RectangleF boundRect = myPath.GetBounds();
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1),
        boundRect.X,
        boundRect.Y,
        boundRect.Height,
        boundRect.Width);
             
    // Create a second graphics path and a wider Pen.
    GraphicsPath myPath2 = new GraphicsPath();
    Pen pathPen2 = new Pen(Color.Black, 10);
             
    // Create a new ellipse with a width of 10.
    myPath2.AddEllipse(150, 20, 100, 100);
    myPath2.Widen(pathPen2);
    e.Graphics.FillPath(Brushes.Black, myPath2);
             
    // Get the second path bounds.
    RectangleF boundRect2 = myPath2.GetBounds();
             
    // Draw the bounding rectangle.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1),
        boundRect2.X,
        boundRect2.Y,
        boundRect2.Height,
        boundRect2.Width);
             
    // Display the rectangle size.
    MessageBox.Show(boundRect2.ToString());
}
Public Sub GetBoundsExample(ByVal e As PaintEventArgs)

    ' Create path number 1 and a Pen for drawing.
    Dim myPath As New GraphicsPath
    Dim pathPen As New Pen(Color.Black, 1)

    ' Add an Ellipse to the path and Draw it (circle in start

    ' position).
    myPath.AddEllipse(20, 20, 100, 100)
    e.Graphics.DrawPath(pathPen, myPath)

    ' Get the path bounds for Path number 1 and draw them.
    Dim boundRect As RectangleF = myPath.GetBounds()
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), boundRect.X, _
    boundRect.Y, boundRect.Height, boundRect.Width)

    ' Create a second graphics path and a wider Pen.
    Dim myPath2 As New GraphicsPath
    Dim pathPen2 As New Pen(Color.Black, 10)

    ' Create a new ellipse with a width of 10.
    myPath2.AddEllipse(150, 20, 100, 100)
    myPath2.Widen(pathPen2)
    e.Graphics.FillPath(Brushes.Black, myPath2)

    ' Get the second path bounds.
    Dim boundRect2 As RectangleF = myPath2.GetBounds()

    ' Show the bounds in a message box.
    e.Graphics.DrawString("Rectangle2 Bounds: " + _
    boundRect2.ToString(), New Font("Arial", 8), Brushes.Black, _
    20, 150)

    ' Draw the bounding rectangle.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), boundRect2.X, _
    boundRect2.Y, boundRect2.Height, boundRect2.Width)
End Sub

Keterangan

Ukuran persegi panjang pembatas yang dikembalikan dipengaruhi oleh jenis tutup akhir, lebar pena, dan batas jarak tempuh pena, dan karenanya menghasilkan "kecocokan longgar" ke jalur terikat. Perkiraan rumus adalah: persegi panjang pembatas awal dilampirkan oleh lebar pena, dan hasil ini dikalikan dengan batas miter, ditambah beberapa margin tambahan untuk memungkinkan batas akhir.

Berlaku untuk

GetBounds(Matrix)

Sumber:
GraphicsPath.cs
Sumber:
GraphicsPath.cs
Sumber:
GraphicsPath.cs

Mengembalikan persegi panjang yang mengikat ini GraphicsPath ketika jalur ini diubah oleh yang ditentukan Matrix.

public:
 System::Drawing::RectangleF GetBounds(System::Drawing::Drawing2D::Matrix ^ matrix);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix matrix);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix? matrix);
member this.GetBounds : System.Drawing.Drawing2D.Matrix -> System.Drawing.RectangleF
Public Function GetBounds (matrix As Matrix) As RectangleF

Parameter

matrix
Matrix

Matrix yang menentukan transformasi yang akan diterapkan ke jalur ini sebelum persegi panjang pembatas dihitung. Jalur ini tidak diubah secara permanen; transformasi hanya digunakan selama proses menghitung persegi panjang pembatas.

Mengembalikan

RectangleF yang mewakili persegi panjang yang mengikat ini GraphicsPath.

Contoh

Misalnya, lihat GetBounds().

Keterangan

Ukuran persegi panjang pembatas yang dikembalikan dipengaruhi oleh jenis tutup akhir, lebar pena, dan batas jarak tempuh pena, dan karenanya menghasilkan "kecocokan longgar" ke jalur terikat. Perkiraan rumus adalah: persegi panjang pembatas awal dilampirkan oleh lebar pena, dan hasil ini dikalikan dengan batas miter, ditambah beberapa margin tambahan untuk memungkinkan batas akhir.

Berlaku untuk

GetBounds(Matrix, Pen)

Sumber:
GraphicsPath.cs
Sumber:
GraphicsPath.cs
Sumber:
GraphicsPath.cs

Mengembalikan persegi panjang yang mengikat ini GraphicsPath ketika jalur saat ini diubah oleh yang ditentukan Matrix dan digambar dengan yang ditentukan Pen.

public:
 System::Drawing::RectangleF GetBounds(System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Pen ^ pen);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Pen pen);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix? matrix, System.Drawing.Pen? pen);
member this.GetBounds : System.Drawing.Drawing2D.Matrix * System.Drawing.Pen -> System.Drawing.RectangleF
Public Function GetBounds (matrix As Matrix, pen As Pen) As RectangleF

Parameter

matrix
Matrix

Matrix yang menentukan transformasi yang akan diterapkan ke jalur ini sebelum persegi panjang pembatas dihitung. Jalur ini tidak diubah secara permanen; transformasi hanya digunakan selama proses menghitung persegi panjang pembatas.

pen
Pen

dengan Pen yang untuk menggambar GraphicsPath.

Mengembalikan

RectangleF yang mewakili persegi panjang yang mengikat ini GraphicsPath.

Contoh

Misalnya, lihat GetBounds().

Keterangan

Ukuran persegi panjang pembatas yang dikembalikan dipengaruhi oleh jenis tutup akhir, lebar pena, dan batas jarak tempuh pena, dan karenanya menghasilkan "kecocokan longgar" ke jalur terikat. Perkiraan rumus adalah: persegi panjang pembatas awal dilampirkan oleh lebar pena, dan hasil ini dikalikan dengan batas miter, ditambah beberapa margin tambahan untuk memungkinkan batas akhir.

Berlaku untuk