Graphics.FromImage(Image) Method

Definition

Создает новый объект Graphics из указанного объекта Image.Creates a new Graphics from the specified Image.

public:
 static System::Drawing::Graphics ^ FromImage(System::Drawing::Image ^ image);
public static System.Drawing.Graphics FromImage (System.Drawing.Image image);
static member FromImage : System.Drawing.Image -> System.Drawing.Graphics
Public Shared Function FromImage (image As Image) As Graphics

Parameters

image
Image

Объект Image, на основе которого будет создан новый объект Graphics.Image from which to create the new Graphics.

Returns

Graphics

Этот метод возвращает новый объект Graphics для указанного объекта Image.This method returns a new Graphics for the specified Image.

Exceptions

Параметр image равен null.image is null.

Объект image имеет индексированный формат пикселей или его формат не определен.image has an indexed pixel format or its format is undefined.

Examples

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse, который является параметром обработчика событий Paint.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 action:

  • Создает Image из графического файла Сампимаг. jpg в папке example.Creates an Image from a graphics file SampImag.jpg in the example folder.

  • Создает Graphics из Image.Creates a Graphics from the Image.

  • Изменяет изображение, заполняя в нем прямоугольник.Alters the image by filling a rectangle within it.

  • Рисует Image на экране.Draws the Image to the screen.

  • Освобождает созданный Graphics.Releases the created Graphics.

public:
   void FromImageImage( PaintEventArgs^ e )
   {
      // Create image.
      Image^ imageFile = Image::FromFile( "SampImag.jpg" );

      // Create graphics object for alteration.
      Graphics^ newGraphics = Graphics::FromImage( imageFile );

      // Alter image.
      newGraphics->FillRectangle( gcnew SolidBrush( Color::Black ), 100, 50, 100, 100 );

      // Draw image to screen.
      e->Graphics->DrawImage( imageFile, PointF(0.0F,0.0F) );

      // Dispose of graphics object.
      delete newGraphics;
   }
private void FromImageImage(PaintEventArgs e)
{

    // Create image.
    Image imageFile = Image.FromFile("SampImag.jpg");

    // Create graphics object for alteration.
    Graphics newGraphics = Graphics.FromImage(imageFile);

    // Alter image.
    newGraphics.FillRectangle(new SolidBrush(Color.Black), 100, 50, 100, 100);

    // Draw image to screen.
    e.Graphics.DrawImage(imageFile, new PointF(0.0F, 0.0F));

    // Dispose of graphics object.
    newGraphics.Dispose();
}
Private Sub FromImageImage2(ByVal e As PaintEventArgs)

    ' Create image.
    Dim imageFile As Image = Image.FromFile("SampImag.jpg")

    ' Create graphics object for alteration.
    Dim newGraphics As Graphics = Graphics.FromImage(imageFile)

    ' Alter image.
    newGraphics.FillRectangle(New SolidBrush(Color.Black), _
    100, 50, 100, 100)

    ' Draw image to screen.
    e.Graphics.DrawImage(imageFile, New PointF(0.0F, 0.0F))

    ' Dispose of graphics object.
    newGraphics.Dispose()
End Sub

Remarks

Если изображение имеет индексированный формат пикселей, этот метод создает исключение с сообщением "не удается создать объект Graphics из изображения с индексированным форматом пикселей".If the image has an indexed pixel format, this method throws an exception with the message, "A Graphics object cannot be created from an image that has an indexed pixel format." В следующем списке показаны Индексированные форматы пикселей.The indexed pixel formats are shown in the following list.

Можно сохранить индексированное изображение в другом формате с помощью метода Save(String, ImageFormat), а затем извлечь объект Graphics для нового образа.You can save the indexed image as another format by using the Save(String, ImageFormat) method and then retrieve a Graphics object for the new image.

Этот метод также вызывает исключение, если изображение имеет любой из следующих форматов пикселей.This method also throws an exception if the image has any of the following pixel formats.

Следует всегда вызывать метод Dispose, чтобы освободить Graphics и связанные ресурсы, созданные методом FromImage.You should always call the Dispose method to release the Graphics and related resources created by the FromImage method.

Applies to

See also