Graphics.FromImage(Image) Metoda

Definicja

Tworzy nowy Graphics z określonego Image.

C#
public static System.Drawing.Graphics FromImage(System.Drawing.Image image);

Parametry

image
Image

Image, z którego ma zostać utworzony nowy Graphics.

Zwraca

Ta metoda zwraca nowy Graphics dla określonego Image.

Wyjątki

image jest null.

image ma indeksowany format pikseli lub jego format jest niezdefiniowany.

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. Kod wykonuje następującą akcję:

  • Tworzy Image z pliku graficznego SampImag.jpg w przykładowym folderze.

  • Tworzy Graphics na podstawie Image.

  • Zmienia obraz, wypełniając w nim prostokąt.

  • Rysuje Image na ekranie.

  • Zwalnia utworzony Graphics.

C#
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();
}

Uwagi

Jeśli obraz ma indeksowany format pikseli, ta metoda zgłasza wyjątek z komunikatem "Nie można utworzyć obiektu grafiki na podstawie obrazu, który ma indeksowany format pikseli". Formaty indeksowanych pikseli są wyświetlane na poniższej liście.

Indeksowany obraz można zapisać jako inny format przy użyciu metody Save(String, ImageFormat), a następnie pobrać obiekt Graphics dla nowego obrazu.

Ta metoda zgłasza również wyjątek, jeśli obraz ma dowolny z następujących formatów pikseli.

Zawsze należy wywołać metodę Dispose, aby zwolnić Graphics i powiązane zasoby utworzone przez metodę FromImage.

Dotyczy

Produkt Wersje
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Zobacz też