Bitmap.Clone Bitmap.Clone Bitmap.Clone Bitmap.Clone Method

定義

指定された PixelFormat で定義されたこの Bitmap のセクションのコピーを作成します。Creates a copy of the section of this Bitmap defined with a specified PixelFormat.

オーバーロード

Clone(RectangleF, PixelFormat) Clone(RectangleF, PixelFormat) Clone(RectangleF, PixelFormat) Clone(RectangleF, PixelFormat)

指定された PixelFormat 列挙体で定義されたこの Bitmap のセクションのコピーを作成します。Creates a copy of the section of this Bitmap defined with a specified PixelFormat enumeration.

Clone(Rectangle, PixelFormat) Clone(Rectangle, PixelFormat) Clone(Rectangle, PixelFormat) Clone(Rectangle, PixelFormat)

Rectangle 構造体と、指定された PixelFormat 列挙体で定義された、この Bitmap のセクションのコピーを作成します。Creates a copy of the section of this Bitmap defined by Rectangle structure and with a specified PixelFormat enumeration.

Clone(RectangleF, PixelFormat) Clone(RectangleF, PixelFormat) Clone(RectangleF, PixelFormat) Clone(RectangleF, PixelFormat)

指定された PixelFormat 列挙体で定義されたこの Bitmap のセクションのコピーを作成します。Creates a copy of the section of this Bitmap defined with a specified PixelFormat enumeration.

public:
 System::Drawing::Bitmap ^ Clone(System::Drawing::RectangleF rect, System::Drawing::Imaging::PixelFormat format);
public System.Drawing.Bitmap Clone (System.Drawing.RectangleF rect, System.Drawing.Imaging.PixelFormat format);
override this.Clone : System.Drawing.RectangleF * System.Drawing.Imaging.PixelFormat -> System.Drawing.Bitmap
Public Function Clone (rect As RectangleF, format As PixelFormat) As Bitmap

パラメーター

rect
RectangleF RectangleF RectangleF RectangleF

この Bitmap のコピーする部分を定義します。Defines the portion of this Bitmap to copy.

format
PixelFormat PixelFormat PixelFormat PixelFormat

目的の BitmapPixelFormat 列挙体を指定します。Specifies the PixelFormat enumeration for the destination Bitmap.

戻り値

このメソッドが作成する BitmapThe Bitmap that this method creates.

例外

rect は、ソース ビットマップ境界の外側です。rect is outside of the source bitmap bounds.

rect の高さまたは幅は 0 です。The height or width of rect is 0.

次のコード例は、Windows フォームで使用するように設計されています。また、Paint イベントハンドラーのパラメーターである @no__t 0 の @ no__t-1 が必要です。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:

  • ファイルから @no__t 0 を作成します。Creates a Bitmap from a file.

  • @No__t の一部を複製します。Clones a portion of that Bitmap.

  • 複製された部分を画面に描画します。Draws the cloned portion to the screen.

private:
   void Clone_Example2( PaintEventArgs^ e )
   {
      // Create a Bitmap object from a file.
      Bitmap^ myBitmap = gcnew Bitmap( "Grapes.jpg" );

      // Clone a portion of the Bitmap object.
      RectangleF cloneRect = RectangleF(0,0,100,100);
      System::Drawing::Imaging::PixelFormat format = myBitmap->PixelFormat;
      Bitmap^ cloneBitmap = myBitmap->Clone( cloneRect, format );

      // Draw the cloned portion of the Bitmap object.
      e->Graphics->DrawImage( cloneBitmap, 0, 0 );
   }
private void Clone_Example2(PaintEventArgs e)
{

    // Create a Bitmap object from a file.
    Bitmap myBitmap = new Bitmap("Grapes.jpg");

    // Clone a portion of the Bitmap object.
    RectangleF cloneRect = new RectangleF(0, 0, 100, 100);
    System.Drawing.Imaging.PixelFormat format =
        myBitmap.PixelFormat;
    Bitmap cloneBitmap = myBitmap.Clone(cloneRect, format);

    // Draw the cloned portion of the Bitmap object.
    e.Graphics.DrawImage(cloneBitmap, 0, 0);
}
Private Sub Clone_Example2(ByVal e As PaintEventArgs)

    ' Create a Bitmap object from a file.
    Dim myBitmap As New Bitmap("Grapes.jpg")

    ' Clone a portion of the Bitmap object.
    Dim cloneRect As New RectangleF(0, 0, 100, 100)
    Dim format As PixelFormat = myBitmap.PixelFormat
    Dim cloneBitmap As Bitmap = myBitmap.Clone(cloneRect, format)

    ' Draw the cloned portion of the Bitmap object.
    e.Graphics.DrawImage(cloneBitmap, 0, 0)
End Sub

Clone(Rectangle, PixelFormat) Clone(Rectangle, PixelFormat) Clone(Rectangle, PixelFormat) Clone(Rectangle, PixelFormat)

Rectangle 構造体と、指定された PixelFormat 列挙体で定義された、この Bitmap のセクションのコピーを作成します。Creates a copy of the section of this Bitmap defined by Rectangle structure and with a specified PixelFormat enumeration.

public:
 System::Drawing::Bitmap ^ Clone(System::Drawing::Rectangle rect, System::Drawing::Imaging::PixelFormat format);
public System.Drawing.Bitmap Clone (System.Drawing.Rectangle rect, System.Drawing.Imaging.PixelFormat format);
override this.Clone : System.Drawing.Rectangle * System.Drawing.Imaging.PixelFormat -> System.Drawing.Bitmap
Public Function Clone (rect As Rectangle, format As PixelFormat) As Bitmap

パラメーター

rect
Rectangle Rectangle Rectangle Rectangle

この Bitmap のコピーする部分を定義します。Defines the portion of this Bitmap to copy. 座標は、この Bitmap の相対座標です。Coordinates are relative to this Bitmap.

format
PixelFormat PixelFormat PixelFormat PixelFormat

新しい Bitmap のピクセル形式。The pixel format for the new Bitmap. これには、Format で始まる値を指定する必要があります。This must specify a value that begins with Format.

戻り値

このメソッドが作成する新しい Bitmap オブジェクト。The new Bitmap that this method creates.

例外

rect は、ソース ビットマップ境界の外側です。rect is outside of the source bitmap bounds.

rect の高さまたは幅は 0 です。The height or width of rect is 0.

- または --or- 名前が Format で始まらない PixelFormat 値が指定されます。A PixelFormat value is specified whose name does not start with Format. たとえば、Gdi を指定すると、ArgumentException が発生しますが、Format48bppRgb を指定した場合は発生しません。For example, specifying Gdi will cause an ArgumentException, but Format48bppRgb will not.

次のコード例は、Windows フォームで使用するように設計されています。また、Paint イベントハンドラーのパラメーターである @no__t 0 の @ no__t-1 が必要です。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:

  • ファイルから @no__t 0 を作成します。Creates a Bitmap from a file.

  • @No__t の一部を複製します。Clones a portion of that Bitmap.

  • 複製された部分を画面に描画します。Draws the cloned portion to the screen.

private:
   void Clone_Example1( PaintEventArgs^ e )
   {
      // Create a Bitmap object from a file.
      Bitmap^ myBitmap = gcnew Bitmap( "Grapes.jpg" );

      // Clone a portion of the Bitmap object.
      Rectangle cloneRect = Rectangle(0,0,100,100);
      System::Drawing::Imaging::PixelFormat format = myBitmap->PixelFormat;
      Bitmap^ cloneBitmap = myBitmap->Clone( cloneRect, format );

      // Draw the cloned portion of the Bitmap object.
      e->Graphics->DrawImage( cloneBitmap, 0, 0 );
   }
private void Clone_Example1(PaintEventArgs e)
{

    // Create a Bitmap object from a file.
    Bitmap myBitmap = new Bitmap("Grapes.jpg");

    // Clone a portion of the Bitmap object.
    Rectangle cloneRect = new Rectangle(0, 0, 100, 100);
    System.Drawing.Imaging.PixelFormat format =
        myBitmap.PixelFormat;
    Bitmap cloneBitmap = myBitmap.Clone(cloneRect, format);

    // Draw the cloned portion of the Bitmap object.
    e.Graphics.DrawImage(cloneBitmap, 0, 0);
}
Private Sub Clone_Example1(ByVal e As PaintEventArgs)

    ' Create a Bitmap object from a file.
    Dim myBitmap As New Bitmap("Grapes.jpg")

    ' Clone a portion of the Bitmap object.
    Dim cloneRect As New Rectangle(0, 0, 100, 100)
    Dim format As PixelFormat = myBitmap.PixelFormat
    Dim cloneBitmap As Bitmap = myBitmap.Clone(cloneRect, format)

    ' Draw the cloned portion of the Bitmap object.
    e.Graphics.DrawImage(cloneBitmap, 0, 0)
End Sub

適用対象