Graphics.DrawImage Metoda

Definicja

Rysuje określone Image w określonej lokalizacji i z oryginalnym rozmiarem.

Przeciążenia

DrawImage(Image, Single, Single, RectangleF, GraphicsUnit)

Rysuje część obrazu w określonej lokalizacji.

DrawImage(Image, Effect, RectangleF, Matrix, GraphicsUnit, ImageAttributes)
DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, IntPtr)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, IntPtr)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Int32, Int32, Int32, Int32)

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Single, Single, Single, Single)

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Effect)
DrawImage(Image, Point)

Rysuje określony Image, używając oryginalnego rozmiaru fizycznego w określonej lokalizacji.

DrawImage(Image, Point[])

Rysuje określoną Image w określonej lokalizacji i o określonym kształcie i rozmiarze.

DrawImage(Image, PointF)

Rysuje określony Image, używając oryginalnego rozmiaru fizycznego w określonej lokalizacji.

DrawImage(Image, PointF[])

Rysuje określoną Image w określonej lokalizacji i o określonym kształcie i rozmiarze.

DrawImage(Image, Rectangle)

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, RectangleF)

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Int32, Int32, Rectangle, GraphicsUnit)

Rysuje część obrazu w określonej lokalizacji.

DrawImage(Image, Single, Single)

Rysuje określony Image, używając oryginalnego rozmiaru fizycznego w określonej lokalizacji.

DrawImage(Image, Point[], Rectangle, GraphicsUnit)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, PointF[], RectangleF, GraphicsUnit)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Rectangle, Rectangle, GraphicsUnit)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, RectangleF, RectangleF, GraphicsUnit)

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

DrawImage(Image, Int32, Int32)

Rysuje określony obraz przy użyciu oryginalnego rozmiaru fizycznego w lokalizacji określonej przez parę współrzędnych.

DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes)

Rysuje określoną część określonego Image w określonej lokalizacji.

DrawImage(Image, Single, Single, RectangleF, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje część obrazu w określonej lokalizacji.

C#
public void DrawImage (System.Drawing.Image image, float x, float y, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

x
Single

Współrzędna x lewego górnego rogu rysunku.

y
Single

Współrzędna y lewego górnego rogu rysunku.

srcRect
RectangleF

RectangleF struktura określająca część Image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy współrzędne, na których ma być rysowanie lewego górnego rogu obrazu.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Rozmiar prostokąta źródłowego określa, która część nieskalowanego oryginalnego obrazu jest rysowana na ekranie.

C#
public void DrawImage2FloatRectF(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create coordinates for upper-left corner of image.
    float x = 100.0F;
    float y = 100.0F;
             
    // Create rectangle for source image.
    RectangleF srcRect = new RectangleF(50.0F, 50.0F, 150.0F, 150.0F);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, x, y, srcRect, units);
}

Uwagi

Image przechowuje wartość szerokości pikseli i wartość rozdzielczości poziomej (kropki na cal). Szerokość fizyczna mierzona w calach obrazu to szerokość pikseli podzielona przez rozdzielczość poziomą. Na przykład obraz o szerokości pikseli 360 i poziomej rozdzielczości 72 kropek na cal ma fizyczną szerokość 5 cali. Podobne uwagi dotyczą wysokości pikseli i wysokości fizycznej.

Ta metoda rysuje część obrazu przy użyciu rozmiaru fizycznego, więc część obrazu będzie miała prawidłowy rozmiar w calach niezależnie od rozdzielczości (kropek na cal) urządzenia wyświetlania. Załóżmy na przykład, że część obrazu ma szerokość pikseli 216 i poziomą rozdzielczość 72 kropek na cal. Jeśli wywołasz tę metodę, aby narysować tę część obrazu na urządzeniu, która ma rozdzielczość 96 kropek na cal, szerokość pikseli renderowanego obrazu będzie wynosić (216/72)*96 = 288.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Effect, RectangleF, Matrix, GraphicsUnit, ImageAttributes)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Imaging.Effects.Effect effect, System.Drawing.RectangleF srcRect = default, System.Drawing.Drawing2D.Matrix? transform = default, System.Drawing.GraphicsUnit srcUnit = System.Drawing.GraphicsUnit.Pixel, System.Drawing.Imaging.ImageAttributes? imageAttr = default);

Parametry

image
Image
effect
Effect
srcRect
RectangleF
transform
Matrix
srcUnit
GraphicsUnit
imageAttr
ImageAttributes

Dotyczy

.NET 9 i Windows Desktop 9
Produkt Wersje
.NET 9
Windows Desktop 9

DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr, System.Drawing.Graphics.DrawImageAbort? callback);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr, System.Drawing.Graphics.DrawImageAbort callback);

Parametry

image
Image

Image do losowania.

destPoints
Point[]

Tablica trzech struktur PointF definiujących równoległość.

srcRect
Rectangle

Rectangle struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort) zgodnie z kryteriami określonymi przez aplikację.

Wyjątki

image jest null.

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy równoległyogram, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego parallelogramu pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta oraz rozmiar i kształt równoległegoogramu określa skalowanie i ścinanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które nie przekazuje parametru callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca true, co powoduje zakończenie metody DrawImage, a kod obsługi wyjątków zawarty w przykładzie wyświetla tekst wyjątku, a nie rysuje obrazu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback1(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageParaRectAttribAbort(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback1);
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing original image.
    Point ulCorner = new Point(100, 100);
    Point urCorner = new Point(550, 100);
    Point llCorner = new Point(150, 250);
    Point[] destPara1 = {ulCorner, urCorner, llCorner};
             
    // Create rectangle for source image.
    Rectangle srcRect = new Rectangle(50, 50, 150, 150);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destPara1, srcRect, units);
             
    // Create parallelogram for drawing adjusted image.
    Point ulCorner2 = new Point(325, 100);
    Point urCorner2 = new Point(550, 100);
    Point llCorner2 = new Point(375, 250);
    Point[] destPara2 = {ulCorner2, urCorner2, llCorner2};
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw image to screen.
            e.Graphics.DrawImage(
                newImage,
                destPara2,
                srcRect,
                units,
                imageAttr,
                imageCallback);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

To przeciążenie za pomocą parametru callback umożliwia zatrzymanie rysunku obrazu po uruchomieniu go zgodnie z kryteriami określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr, System.Drawing.Graphics.DrawImageAbort? callback);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr, System.Drawing.Graphics.DrawImageAbort callback);

Parametry

image
Image

Image do losowania.

destPoints
PointF[]

Tablica trzech struktur PointF definiujących równoległość.

srcRect
RectangleF

RectangleF struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort) zgodnie z kryteriami określonymi przez aplikację.

Wyjątki

image jest null.

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy równoległyogram, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego parallelogramu pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta oraz rozmiar i kształt równoległegoogramu określa skalowanie i ścinanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które nie przekazuje parametru callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca true, co powoduje zakończenie metody DrawImage, a kod obsługi wyjątków zawarty w przykładzie wyświetla tekst wyjątku, a nie rysuje obrazu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback3(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageParaFRectAttribAbort(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback3);
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing original image.
    PointF ulCorner1 = new PointF(100.0F, 100.0F);
    PointF urCorner1 = new PointF(325.0F, 100.0F);
    PointF llCorner1 = new PointF(150.0F, 250.0F);
    PointF[] destPara1 = {ulCorner1, urCorner1, llCorner1};
             
    // Create rectangle for source image.
    RectangleF srcRect = new RectangleF(50.0F, 50.0F, 150.0F, 150.0F);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Create parallelogram for drawing adjusted image.
    PointF ulCorner2 = new PointF(325.0F, 100.0F);
    PointF urCorner2 = new PointF(550.0F, 100.0F);
    PointF llCorner2 = new PointF(375.0F, 250.0F);
    PointF[] destPara2 = {ulCorner2, urCorner2, llCorner2};
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destPara1, srcRect, units);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw adjusted image to screen.
            e.Graphics.DrawImage(
                newImage,
                destPara2,
                srcRect,
                units,
                imageAttr,
                imageCallback);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

To przeciążenie za pomocą parametru callback umożliwia zatrzymanie rysunku obrazu po uruchomieniu go zgodnie z kryteriami określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr, System.Drawing.Graphics.DrawImageAbort? callback, int callbackData);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr, System.Drawing.Graphics.DrawImageAbort callback, int callbackData);

Parametry

image
Image

Image do losowania.

destPoints
Point[]

Tablica trzech struktur PointF definiujących równoległość.

srcRect
Rectangle

Rectangle struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32) zgodnie z kryteriami określonymi przez aplikację.

callbackData
Int32

Wartość określająca dodatkowe dane dla delegata Graphics.DrawImageAbort do użycia podczas sprawdzania, czy zatrzymać wykonywanie metody DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32).

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy równoległyogram, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego parallelogramu pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta oraz rozmiar i kształt równoległegoogramu określa skalowanie i ścinanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które przekazuje parametr callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca false, co powoduje kontynuowanie metody DrawImage, a przykład rysuje skorygowany obraz do ekranu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback2(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageParaRectAttribAbortData(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback2);
    int imageCallbackData = 1;
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing original image.
    Point ulCorner = new Point(100, 100);
    Point urCorner = new Point(550, 100);
    Point llCorner = new Point(150, 250);
    Point[] destPara1 = {ulCorner, urCorner, llCorner};
             
    // Create rectangle for source image.
    Rectangle srcRect = new Rectangle(50, 50, 150, 150);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destPara1, srcRect, units);
             
    // Create parallelogram for drawing adjusted image.
    Point ulCorner2 = new Point(325, 100);
    Point urCorner2 = new Point(550, 100);
    Point llCorner2 = new Point(375, 250);
    Point[] destPara2 = {ulCorner2, urCorner2, llCorner2};
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw image to screen.
            e.Graphics.DrawImage(
                newImage,
                destPara2,
                srcRect,
                units,
                imageAttr,
                imageCallback,
                imageCallbackData);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

To przeciążenie za pomocą parametrów callback i callbackData umożliwia zatrzymanie rysowania obrazu po rozpoczęciu go zgodnie z kryteriami i danymi określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr, System.Drawing.Graphics.DrawImageAbort? callback, int callbackData);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr, System.Drawing.Graphics.DrawImageAbort callback, int callbackData);

Parametry

image
Image

Image do losowania.

destPoints
PointF[]

Tablica trzech struktur PointF definiujących równoległość.

srcRect
RectangleF

RectangleF struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32) zgodnie z kryteriami określonymi przez aplikację.

callbackData
Int32

Wartość określająca dodatkowe dane dla delegata Graphics.DrawImageAbort do użycia podczas sprawdzania, czy zatrzymać wykonywanie metody DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, Int32).

Wyjątki

image jest null.

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ń PaPaint. Kod najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy równoległyogram, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego parallelogramu pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta oraz rozmiar i kształt równoległegoogramu określa skalowanie i ścinanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które przekazuje parametr callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca false, co powoduje kontynuowanie metody DrawImage, a przykład rysuje skorygowany obraz do ekranu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback4(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageParaFRectAttribAbortData(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback4);
    int imageCallbackData = 1;
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing original image.
    PointF ulCorner1 = new PointF(100.0F, 100.0F);
    PointF urCorner1 = new PointF(325.0F, 100.0F);
    PointF llCorner1 = new PointF(150.0F, 250.0F);
    PointF[] destPara1 = {ulCorner1, urCorner1, llCorner1};
             
    // Create rectangle for source image.
    RectangleF srcRect = new RectangleF(50.0F, 50.0F, 150.0F, 150.0F);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Create parallelogram for drawing adjusted image.
    PointF ulCorner2 = new PointF(325.0F, 100.0F);
    PointF urCorner2 = new PointF(550.0F, 100.0F);
    PointF llCorner2 = new PointF(375.0F, 250.0F);
    PointF[] destPara2 = {ulCorner2, urCorner2, llCorner2};
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destPara1, srcRect, units);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw adjusted image to screen.
            e.Graphics.DrawImage(
                newImage,
                destPara2,
                srcRect,
                units,
                imageAttr,
                imageCallback,
                imageCallbackData);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

To przeciążenie za pomocą parametrów callback i callbackData umożliwia zatrzymanie rysowania obrazu po rozpoczęciu go zgodnie z kryteriami i danymi określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Int32

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Int32

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Int32

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Int32

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy współrzędne prostokąta źródłowego, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Położenie prostokąta docelowego lokalizuje obraz na ekranie, a rozmiary prostokątów źródłowych i docelowych określają skalowanie narysowanego obrazu, a rozmiar prostokąta źródłowego określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageRect4Int(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying image.
    Rectangle destRect = new Rectangle(100, 100, 450, 150);
             
    // Create coordinates of rectangle for source image.
    int x = 50;
    int y = 50;
    int width = 150;
    int height = 150;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destRect, x, y, width, height, units);
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Int32

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Int32

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Int32

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Int32

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy współrzędne prostokąta źródłowego, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy prostokąt, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego prostokąta docelowego pozycja lokalizuje obraz na ekranie, a rozmiary prostokątów źródłowych i docelowych określają skalowanie rysunkowego obrazu, a rozmiar prostokąta źródłowego określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageRect4IntAtrrib(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying original image.
    Rectangle destRect1 = new Rectangle(100, 25, 450, 150);
             
    // Create coordinates of rectangle for source image.
    int x = 50;
    int y = 50;
    int width = 150;
    int height = 150;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destRect1, x, y, width, height, units);
             
    // Create rectangle for adjusted image.
    Rectangle destRect2 = new Rectangle(100, 175, 450, 150);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
             
    // Draw adjusted image to screen.
    e.Graphics.DrawImage(newImage, destRect2, x, y, width, height, units, imageAttr);
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttrs);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttrs);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Single

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Single

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Single

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Single

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

imageAttrs
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy współrzędne prostokąta źródłowego, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy prostokąt, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego prostokąta docelowego pozycja lokalizuje obraz na ekranie, a rozmiary prostokątów źródłowych i docelowych określają skalowanie rysunkowego obrazu, a rozmiar prostokąta źródłowego określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageRect4FloatAttrib(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying original image.
    Rectangle destRect1 = new Rectangle(100, 25, 450, 150);
             
    // Create coordinates of rectangle for source image.
    float x = 50.0F;
    float y = 50.0F;
    float width = 150.0F;
    float height = 150.0F;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destRect1, x, y, width, height, units);
             
    // Create rectangle for adjusted image.
    Rectangle destRect2 = new Rectangle(100, 175, 450, 150);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
             
    // Draw adjusted image to screen.
    e.Graphics.DrawImage(newImage, destRect2, x, y, width, height, units, imageAttr);
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr, System.Drawing.Graphics.DrawImageAbort? callback);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr, System.Drawing.Graphics.DrawImageAbort callback);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Int32

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Int32

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Int32

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Int32

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort) zgodnie z kryteriami określonymi przez aplikację.

Wyjątki

image jest null.

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy prostokąt docelowy, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego prostokąta docelowego pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta źródłowego oraz rozmiar i kształt prostokąta docelowego określają skalowanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które nie przekazuje parametru callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca true, co powoduje zakończenie metody DrawImage, a kod obsługi wyjątków zawarty w przykładzie wyświetla tekst wyjątku, a nie rysuje obrazu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback5(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageRect4IntAtrribAbort(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback5);
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying original image.
    Rectangle destRect1 = new Rectangle(100, 25, 450, 150);
             
    // Create coordinates of rectangle for source image.
    int x = 50;
    int y = 50;
    int width = 150;
    int height = 150;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destRect1, x, y, width, height, units);
             
    // Create rectangle for adjusted image.
    Rectangle destRect2 = new Rectangle(100, 175, 450, 150);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw adjusted image to screen.
            e.Graphics.DrawImage(
                newImage,
                destRect2,
                x, y,
                width, height,
                units,
                imageAttr,
                imageCallback);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez obiekt destRect.

To przeciążenie za pomocą parametru callback umożliwia zatrzymanie rysunku obrazu po uruchomieniu go zgodnie z kryteriami określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttrs, System.Drawing.Graphics.DrawImageAbort? callback);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttrs, System.Drawing.Graphics.DrawImageAbort callback);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Single

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Single

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Single

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Single

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

imageAttrs
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort) zgodnie z kryteriami określonymi przez aplikację.

Wyjątki

image jest null.

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy prostokąt docelowy, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego prostokąta docelowego pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta źródłowego oraz rozmiar i kształt prostokąta docelowego określają skalowanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które nie przekazuje parametru callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca true, co powoduje zakończenie metody DrawImage, a kod obsługi wyjątków zawarty w przykładzie wyświetla tekst wyjątku, a nie rysuje obrazu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback7(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageRect4FloatAttribAbort(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback7);
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying original image.
    Rectangle destRect1 = new Rectangle(100, 25, 450, 150);
             
    // Create coordinates of rectangle for source image.
    float x = 50.0F;
    float y = 50.0F;
    float width = 150.0F;
    float height = 150.0F;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destRect1, x, y, width, height, units);
             
    // Create rectangle for adjusted image.
    Rectangle destRect2 = new Rectangle(100, 175, 450, 150);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw adjusted image to screen.
            e.Graphics.DrawImage(
                newImage,
                destRect2,
                x, y,
                width, height,
                units,
                imageAttr,
                imageCallback);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

To przeciążenie za pomocą parametru callback umożliwia zatrzymanie rysunku obrazu po uruchomieniu go zgodnie z kryteriami określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, IntPtr)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttrs, System.Drawing.Graphics.DrawImageAbort? callback, IntPtr callbackData);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, int srcX, int srcY, int srcWidth, int srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttrs, System.Drawing.Graphics.DrawImageAbort callback, IntPtr callbackData);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Int32

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Int32

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Int32

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Int32

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

imageAttrs
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, Rectangle, Int32, Int32, Int32, Int32, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, IntPtr) zgodnie z kryteriami określonymi przez aplikację.

callbackData
IntPtr

Wartość określająca dodatkowe dane dla delegata Graphics.DrawImageAbort do użycia podczas sprawdzania, czy zatrzymać wykonywanie metody DrawImage.

Wyjątki

image jest null.

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy prostokąt docelowy, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego prostokąta docelowego pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta źródłowego oraz rozmiar i kształt prostokąta docelowego określają skalowanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które przekazuje parametr callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca false, co powoduje kontynuowanie metody DrawImage, a przykład rysuje skorygowany obraz do ekranu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback6(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
private void DrawImageRect4IntAtrribAbortData(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback6);
    IntPtr imageCallbackData = new IntPtr(1);
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying original image.
    Rectangle destRect1 = new Rectangle(100, 25, 450, 150);
             
    // Create coordinates of rectangle for source image.
    int x = 50;
    int y = 50;
    int width = 150;
    int height = 150;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destRect1, x, y, width, height, units);
             
    // Create rectangle for adjusted image.
    Rectangle destRect2 = new Rectangle(100, 175, 450, 150);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
    try
    {
        checked
        {
             
            // Draw adjusted image to screen.
            e.Graphics.DrawImage(
                newImage,
                destRect2,
                x, y,
                width, height,
                units,
                imageAttr,
                imageCallback,
                imageCallbackData);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

To przeciążenie za pomocą parametrów callback i callbackData umożliwia zatrzymanie rysowania obrazu po rozpoczęciu go zgodnie z kryteriami i danymi określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, IntPtr)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttrs, System.Drawing.Graphics.DrawImageAbort? callback, IntPtr callbackData);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttrs, System.Drawing.Graphics.DrawImageAbort callback, IntPtr callbackData);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Single

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Single

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Single

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Single

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

imageAttrs
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

callback
Graphics.DrawImageAbort

Graphics.DrawImageAbort delegat, który określa metodę do wywołania podczas rysunku obrazu. Ta metoda jest wywoływana często, aby sprawdzić, czy zatrzymać wykonywanie metody DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes, Graphics+DrawImageAbort, IntPtr) zgodnie z kryteriami określonymi przez aplikację.

callbackData
IntPtr

Wartość określająca dodatkowe dane dla delegata Graphics.DrawImageAbort do użycia podczas sprawdzania, czy zatrzymać wykonywanie metody DrawImage.

Wyjątki

image jest null.

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 najpierw definiuje metodę wywołania zwrotnego dla delegata Graphics.DrawImageAbort; definicja jest uproszczona i jedynie sprawdza, czy metoda DrawImage wywołuje ją za pomocą parametru callBackData o wartości null. Główna treść przykładu wykonuje następujące akcje:

  • Tworzy wystąpienie metody wywołania zwrotnego Graphics.DrawImageAbort.

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy prostokąt docelowy, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego prostokąta docelowego pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta źródłowego oraz rozmiar i kształt prostokąta docelowego określają skalowanie rysunku.

Ponieważ w tym przykładzie użyto przeciążenia, które przekazuje parametr callBackData, wywołanie zwrotne Graphics.DrawImageAbort zwraca false, co powoduje kontynuowanie metody DrawImage, a przykład rysuje skorygowany obraz do ekranu.

C#

// Define DrawImageAbort callback method.
private bool DrawImageCallback8(IntPtr callBackData)
{
             
    // Test for call that passes callBackData parameter.
    if(callBackData==IntPtr.Zero)
    {
             
        // If no callBackData passed, abort DrawImage method.
        return true;
    }
    else
    {
             
        // If callBackData passed, continue DrawImage method.
        return false;
    }
}
public void DrawImageRect4FloatAttribAbortData(PaintEventArgs e)
{
             
    // Create callback method.
    Graphics.DrawImageAbort imageCallback
        = new Graphics.DrawImageAbort(DrawImageCallback8);
    IntPtr imageCallbackData = new IntPtr(1);
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying original image.
    Rectangle destRect1 = new Rectangle(100, 25, 450, 150);
             
    // Create coordinates of rectangle for source image.
    float x = 50.0F;
    float y = 50.0F;
    float width = 150.0F;
    float height = 150.0F;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destRect1, x, y, width, height, units);
             
    // Create rectangle for adjusted image.
    Rectangle destRect2 = new Rectangle(100, 175, 450, 150);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
             
    // Draw adjusted image to screen.
    try
    {
        checked
        {
             
            // Draw adjusted image to screen.
            e.Graphics.DrawImage(
                newImage,
                destRect2,
                x, y,
                width, height,
                units,
                imageAttr,
                imageCallback,
                imageCallbackData);
        }
    }
    catch (Exception ex)
    {
        e.Graphics.DrawString(
            ex.ToString(),
            new Font("Arial", 8),
            Brushes.Black,
            new PointF(0, 0));
    }
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

To przeciążenie za pomocą parametrów callback i callbackData umożliwia zatrzymanie rysowania obrazu po rozpoczęciu go zgodnie z kryteriami i danymi określonymi przez aplikację. Na przykład aplikacja może rozpocząć rysowanie dużego obrazu, a użytkownik może przewinąć obraz z ekranu, w tym przypadku aplikacja może zatrzymać rysunek.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Single, Single, Single, Single, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, float srcX, float srcY, float srcWidth, float srcHeight, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcX
Single

Współrzędna x lewego górnego rogu części obrazu źródłowego do rysowania.

srcY
Single

Współrzędna y lewego górnego rogu części obrazu źródłowego do rysowania.

srcWidth
Single

Szerokość części obrazu źródłowego do narysowania.

srcHeight
Single

Wysokość części obrazu źródłowego do narysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane do określania prostokąta źródłowego.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy współrzędne prostokąta docelowego, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Położenie prostokąta docelowego lokalizuje obraz na ekranie, rozmiary prostokątów źródłowych i docelowych określają skalowanie narysowanego obrazu, a rozmiar prostokąta źródłowego określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageRect4Float(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying image.
    Rectangle destRect = new Rectangle(100, 100, 450, 150);
             
    // Create coordinates of rectangle for source image.
    float x = 50.0F;
    float y = 50.0F;
    float width = 150.0F;
    float height = 150.0F;
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destRect, x, y, width, height, units);
}

Uwagi

Parametry srcX, srcY, srcWidthi srcHeight określają prostokątną część obiektu image do rysowania. Prostokąt jest względny względem lewego górnego rogu obrazu źródłowego. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Int32, Int32, Int32, Int32)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, int x, int y, int width, int height);

Parametry

image
Image

Image do losowania.

x
Int32

Współrzędna x lewego górnego rogu rysunku.

y
Int32

Współrzędna y lewego górnego rogu rysunku.

width
Int32

Szerokość narysowanego obrazu.

height
Int32

Wysokość narysowanego obrazu.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy położenie i rozmiar prostokąta, w którym ma być rysowanie obrazu.

  • Rysuje obraz na ekranie.

Położenie prostokąta lokalizuje obraz na ekranie, a rozmiar oryginalnego obrazu i rozmiar prostokąta określa skalowanie rysunku.

C#
public void DrawImage4Int(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create coordinates for upper-left corner.
             
    // of image and for size of image.
    int x = 100;
    int y = 100;
    int width = 450;
    int height = 150;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, x, y, width, height);
}

Uwagi

Prostokąt zdefiniowany przez parametry x, y, widthi height określa położenie i rozmiar rysunku.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Single, Single, Single, Single)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, float x, float y, float width, float height);

Parametry

image
Image

Image do losowania.

x
Single

Współrzędna x lewego górnego rogu rysunku.

y
Single

Współrzędna y lewego górnego rogu rysunku.

width
Single

Szerokość narysowanego obrazu.

height
Single

Wysokość narysowanego obrazu.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy położenie i rozmiar prostokąta, w którym ma być rysowanie obrazu.

  • Rysuje obraz na ekranie.

Położenie prostokąta lokalizuje obraz na ekranie, a rozmiar oryginalnego obrazu i rozmiar prostokąta określa skalowanie rysunku.

C#
public void DrawImage4Float(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create coordinates for upper-left corner.
             
    // of image and for size of image.
    float x = 100.0F;
    float y = 100.0F;
    float width = 450.0F;
    float height = 150.0F;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, x, y, width, height);
}

Uwagi

Prostokąt zdefiniowany przez parametry x, y, widthi height określa położenie i rozmiar rysunku.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, PointF[], RectangleF, GraphicsUnit, ImageAttributes)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr);

Parametry

image
Image

Image do losowania.

destPoints
PointF[]

Tablica trzech struktur PointF definiujących równoległość.

srcRect
RectangleF

RectangleF struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące docelowy równoległyogram, w którym ma być narysowy.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy równoległyogram, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, niesprzyjającego docelowego równoległegoogramu pozycja lokalizuje obraz na ekranie, rozmiar prostokąta źródłowego oraz rozmiar i kształt docelowego równoległegoogramu określa skalowanie i ścinanie rysunku, a rozmiar prostokąta określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageParaFRectFAttrib(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing original image.
    PointF ulCorner1 = new PointF(100.0F, 100.0F);
    PointF urCorner1 = new PointF(325.0F, 100.0F);
    PointF llCorner1 = new PointF(150.0F, 250.0F);
    PointF[] destPara1 = {ulCorner1, urCorner1, llCorner1};
             
    // Create rectangle for source image.
    RectangleF srcRect = new RectangleF(50.0F, 50.0F, 150.0F, 150.0F);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Create parallelogram for drawing adjusted image.
    PointF ulCorner2 = new PointF(325.0F, 100.0F);
    PointF urCorner2 = new PointF(550.0F, 100.0F);
    PointF llCorner2 = new PointF(375.0F, 250.0F);
    PointF[] destPara2 = {ulCorner2, urCorner2, llCorner2};
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destPara1, srcRect, units);
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
             
    // Draw adjusted image to screen.
    e.Graphics.DrawImage(newImage, destPara2, srcRect, units, imageAttr);
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Effect)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Imaging.Effects.Effect effect);

Parametry

image
Image
effect
Effect

Dotyczy

.NET 9 i Windows Desktop 9
Produkt Wersje
.NET 9
Windows Desktop 9

DrawImage(Image, Point)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określony Image, używając oryginalnego rozmiaru fizycznego w określonej lokalizacji.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point point);

Parametry

image
Image

Image do losowania.

point
Point

Point struktura reprezentująca lokalizację lewego górnego rogu rysunku.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkt, w którym ma być rysowanie lewego górnego rogu obrazu.

  • Rysuje nieskalowany obraz do ekranu.

C#
private void DrawImagePoint(PaintEventArgs e)
{         
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create Point for upper-left corner of image.
    Point ulCorner = new Point(100, 100);
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, ulCorner);
}

Uwagi

Image przechowuje wartość szerokości pikseli i wartość rozdzielczości poziomej (kropki na cal). Szerokość fizyczna mierzona w calach obrazu to szerokość pikseli podzielona przez rozdzielczość poziomą. Na przykład obraz o szerokości pikseli 216 i poziomej rozdzielczości 72 kropek na cal ma fizyczną szerokość 3 cali. Podobne uwagi dotyczą wysokości pikseli i wysokości fizycznej.

Ta metoda rysuje obraz przy użyciu rozmiaru fizycznego, więc obraz będzie miał poprawny rozmiar w calach niezależnie od rozdzielczości (kropek na cal) urządzenia wyświetlania. Załóżmy na przykład, że obraz ma szerokość pikseli 216 i poziomą rozdzielczość 72 kropek na cal. Jeśli wywołasz tę metodę, aby narysować ten obraz na urządzeniu o rozdzielczości 96 kropek na cal, szerokość pikseli renderowanego obrazu będzie wynosić (216/72)*96 = 288.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Point[])

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną Image w określonej lokalizacji i o określonym kształcie i rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints);

Parametry

image
Image

Image do losowania.

destPoints
Point[]

Tablica trzech struktur Point definiujących równoległość.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Rysuje obraz na ekranie.

Położenie parallelogramu lokalizuje obraz na ekranie, a rozmiar oryginalnego obrazu oraz rozmiar i kształt parallelogramu określa skalowanie i ścinanie rysunku.

C#
private void DrawImagePara(PaintEventArgs e)
{
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing image.
    Point ulCorner = new Point(100, 100);
    Point urCorner = new Point(550, 100);
    Point llCorner = new Point(150, 250);
    Point[] destPara = {ulCorner, urCorner, llCorner};
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destPara);
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury Point reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Obraz reprezentowany przez parametr image jest skalowany i ścinany w celu dopasowania do kształtu równoległości określonego przez parametry destPoints.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, PointF)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określony Image, używając oryginalnego rozmiaru fizycznego w określonej lokalizacji.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF point);

Parametry

image
Image

Image do losowania.

point
PointF

PointF struktura reprezentująca lewy górny róg narysowanego obrazu.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkt, w którym ma być rysowanie lewego górnego rogu obrazu.

  • Rysuje nieskalowany obraz do ekranu.

C#
private void DrawImagePointF(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create point for upper-left corner of image.
    PointF ulCorner = new PointF(100.0F, 100.0F);
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, ulCorner);
}

Uwagi

Image przechowuje wartość szerokości pikseli i wartość rozdzielczości poziomej (kropki na cal). Szerokość fizyczna mierzona w calach obrazu to szerokość pikseli podzielona przez rozdzielczość poziomą. Na przykład obraz o szerokości pikseli 216 i poziomej rozdzielczości 72 kropek na cal ma fizyczną szerokość 3 cali. Podobne uwagi dotyczą wysokości pikseli i wysokości fizycznej.

Ta metoda rysuje obraz przy użyciu rozmiaru fizycznego, więc obraz będzie miał poprawny rozmiar w calach niezależnie od rozdzielczości (kropek na cal) urządzenia wyświetlania. Załóżmy na przykład, że obraz ma szerokość pikseli 216 i poziomą rozdzielczość 72 kropek na cal. Jeśli wywołasz tę metodę, aby narysować ten obraz na urządzeniu o rozdzielczości 96 kropek na cal, szerokość pikseli renderowanego obrazu będzie wynosić (216/72)*96 = 288.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, PointF[])

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną Image w określonej lokalizacji i o określonym kształcie i rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints);

Parametry

image
Image

Image do losowania.

destPoints
PointF[]

Tablica trzech struktur PointF definiujących równoległość.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Rysuje obraz na ekranie.

Położenie parallelogramu lokalizuje obraz na ekranie, a rozmiar oryginalnego obrazu oraz rozmiar i kształt parallelogramu określa skalowanie i ścinanie rysunku.

C#
private void DrawImageParaF(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing image.
    PointF ulCorner = new PointF(100.0F, 100.0F);
    PointF urCorner = new PointF(550.0F, 100.0F);
    PointF llCorner = new PointF(150.0F, 250.0F);
    PointF[] destPara = {ulCorner, urCorner, llCorner};
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destPara);
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Obraz reprezentowany przez obiekt image jest skalowany i ścinany w celu dopasowania do kształtu równoległości określonego przez parametr destPoints.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle rect);

Parametry

image
Image

Image do losowania.

rect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt, w którym ma być rysowanie obrazu.

  • Rysuje obraz na ekranie.

Położenie prostokąta lokalizuje obraz na ekranie, a rozmiar oryginalnego obrazu i rozmiar prostokąta określa skalowanie rysunku.

C#
private void DrawImageRect(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying image.
    Rectangle destRect = new Rectangle(100, 100, 450, 150);
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destRect);
}

Uwagi

Obraz reprezentowany przez obiekt image jest skalowany do wymiarów prostokąta rect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, RectangleF)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określone Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.RectangleF rect);

Parametry

image
Image

Image do losowania.

rect
RectangleF

RectangleF struktura określająca lokalizację i rozmiar rysunku.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt, w którym ma być rysowanie obrazu.

  • Rysuje obraz na ekranie.

Położenie prostokąta lokalizuje obraz na ekranie, a oryginalny rozmiar obrazu i rozmiar prostokąta określa skalowanie rysunku.

C#
public void DrawImageRectF(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying image.
    RectangleF rect = new RectangleF(100.0F, 100.0F, 450.0F, 150.0F);
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, rect);
}

Uwagi

Obraz reprezentowany przez obiekt image jest skalowany do wymiarów prostokąta rect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Int32, Int32, Rectangle, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje część obrazu w określonej lokalizacji.

C#
public void DrawImage (System.Drawing.Image image, int x, int y, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

x
Int32

Współrzędna x lewego górnego rogu rysunku.

y
Int32

Współrzędna y lewego górnego rogu rysunku.

srcRect
Rectangle

Rectangle struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy współrzędne, na których ma być rysowanie lewego górnego rogu obrazu.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Rozmiar prostokąta źródłowego określa, która część nieskalowanego oryginalnego obrazu jest rysowana na ekranie.

C#
public void DrawImage2IntRect(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create coordinates for upper-left corner of image.
    int x = 100;
    int y = 100;
             
    // Create rectangle for source image.
    Rectangle srcRect = new Rectangle(50, 50, 150, 150);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, x, y, srcRect, units);
}

Uwagi

Image przechowuje wartość szerokości pikseli i wartość rozdzielczości poziomej (kropki na cal). Szerokość fizyczna mierzona w calach obrazu to szerokość pikseli podzielona przez rozdzielczość poziomą. Na przykład obraz o szerokości pikseli 360 i poziomej rozdzielczości 72 kropek na cal ma fizyczną szerokość 5 cali. Podobne uwagi dotyczą wysokości pikseli i wysokości fizycznej.

Ta metoda rysuje część obrazu przy użyciu rozmiaru fizycznego, więc część obrazu będzie miała prawidłowy rozmiar w calach niezależnie od rozdzielczości (kropek na cal) urządzenia wyświetlania. Załóżmy na przykład, że część obrazu ma szerokość pikseli 216 i poziomą rozdzielczość 72 kropek na cal. Jeśli wywołasz tę metodę, aby narysować tę część obrazu na urządzeniu, która ma rozdzielczość 96 kropek na cal, szerokość pikseli renderowanego obrazu będzie wynosić (216/72)*96 = 288.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Single, Single)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określony Image, używając oryginalnego rozmiaru fizycznego w określonej lokalizacji.

C#
public void DrawImage (System.Drawing.Image image, float x, float y);

Parametry

image
Image

Image do losowania.

x
Single

Współrzędna x lewego górnego rogu rysunku.

y
Single

Współrzędna y lewego górnego rogu rysunku.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy współrzędne punktu, w którym ma być rysowanie lewego górnego rogu obrazu.

  • Rysuje nieskalowany obraz do ekranu.

C#
public void DrawImage2Float(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create coordinates for upper-left corner of image.
    float x = 100.0F;
    float y = 100.0F;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, x, y);
}

Uwagi

Image przechowuje wartość szerokości pikseli i wartość rozdzielczości poziomej (kropki na cal). Szerokość fizyczna mierzona w calach obrazu to szerokość pikseli podzielona przez rozdzielczość poziomą. Na przykład obraz o szerokości pikseli 216 i poziomej rozdzielczości 72 kropek na cal ma fizyczną szerokość 3 cali. Podobne uwagi dotyczą wysokości pikseli i wysokości fizycznej.

Ta metoda rysuje obraz przy użyciu rozmiaru fizycznego, więc obraz będzie miał poprawny rozmiar w calach niezależnie od rozdzielczości (kropek na cal) urządzenia wyświetlania. Załóżmy na przykład, że obraz ma szerokość pikseli 216 i poziomą rozdzielczość 72 kropek na cal. Jeśli wywołasz tę metodę, aby narysować ten obraz na urządzeniu o rozdzielczości 96 kropek na cal, szerokość pikseli renderowanego obrazu będzie wynosić (216/72)*96 = 288.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Point[], Rectangle, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

destPoints
Point[]

Tablica trzech struktur Point definiujących równoległość.

srcRect
Rectangle

Rectangle struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje obraz na ekranie.

Położenie parallelogramu lokalizuje obraz na ekranie, a rozmiar prostokąta oraz rozmiar i kształt parallelogramu określa skalowanie i ścinanie rysunku.

C#
private void DrawImageParaRect(PaintEventArgs e)
{
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing image.
    Point ulCorner = new Point(100, 100);
    Point urCorner = new Point(325, 100);
    Point llCorner = new Point(150, 250);
    Point[] destPara = {ulCorner, urCorner, llCorner};
             
    // Create rectangle for source image.
    Rectangle srcRect = new Rectangle(50, 50, 150, 150);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destPara, srcRect, units);
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury Point reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, PointF[], RectangleF, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.PointF[] destPoints, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

destPoints
PointF[]

Tablica trzech struktur PointF definiujących równoległość.

srcRect
RectangleF

RectangleF struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące docelowy równoległyogram, w którym ma być narysowy.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Położenie docelowego równoległegoogramu lokalizuje obraz na ekranie, rozmiar prostokąta źródłowego oraz rozmiar i kształt docelowego równoległegoogramu określa skalowanie i ścinanie rysunku, a rozmiar prostokąta określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageParaFRectF(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing image.
    PointF ulCorner = new PointF(100.0F, 100.0F);
    PointF urCorner = new PointF(550.0F, 100.0F);
    PointF llCorner = new PointF(150.0F, 250.0F);
    PointF[] destPara = {ulCorner, urCorner, llCorner};
             
    // Create rectangle for source image.
    RectangleF srcRect = new RectangleF(50.0F, 50.0F, 150.0F, 150.0F);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destPara, srcRect, units);
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury PointF reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Rectangle, Rectangle, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Rectangle destRect, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

destRect
Rectangle

Rectangle struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcRect
Rectangle

Rectangle struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Położenie prostokąta docelowego lokalizuje obraz na ekranie, rozmiary prostokątów źródłowych i docelowych określają skalowanie narysowanego obrazu, a rozmiar prostokąta źródłowego określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
private void DrawImageRectRect(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying image.
    Rectangle destRect = new Rectangle(100, 100, 450, 150);
             
    // Create rectangle for source image.
    Rectangle srcRect = new Rectangle(50, 50, 150, 150);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destRect, srcRect, units);
}

Uwagi

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, RectangleF, RectangleF, GraphicsUnit)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji i o określonym rozmiarze.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.RectangleF destRect, System.Drawing.RectangleF srcRect, System.Drawing.GraphicsUnit srcUnit);

Parametry

image
Image

Image do losowania.

destRect
RectangleF

RectangleF struktura określająca lokalizację i rozmiar rysunku. Obraz jest skalowany w celu dopasowania do prostokąta.

srcRect
RectangleF

RectangleF struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy prostokąt docelowy, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt źródłowy, z którego ma być wyodrębniony fragment obrazu.

  • Ustawia jednostkę miary prostokąta źródłowego na piksele.

  • Rysuje obraz na ekranie.

Położenie prostokąta docelowego lokalizuje obraz na ekranie, rozmiary prostokątów źródłowych i docelowych określają skalowanie narysowanego obrazu, a rozmiar prostokąta źródłowego określa, która część oryginalnego obrazu jest rysowana na ekranie.

C#
public void DrawImageRectFRectF(PaintEventArgs e)
{
             
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create rectangle for displaying image.
    RectangleF destRect = new RectangleF(100.0F, 100.0F, 450.0F, 150.0F);
             
    // Create rectangle for source image.
    RectangleF srcRect = new RectangleF(50.0F, 50.0F, 150.0F, 150.0F);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, destRect, srcRect, units);
}

Uwagi

Parametr srcRect określa prostokątną część obiektu image do rysowania. Ta część jest skalowana w celu dopasowania do prostokąta określonego przez parametr destRect.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Int32, Int32)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określony obraz przy użyciu oryginalnego rozmiaru fizycznego w lokalizacji określonej przez parę współrzędnych.

C#
public void DrawImage (System.Drawing.Image image, int x, int y);

Parametry

image
Image

Image do losowania.

x
Int32

Współrzędna x lewego górnego rogu rysunku.

y
Int32

Współrzędna y lewego górnego rogu rysunku.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu SampImag.jpg w folderze przykładu.

  • Tworzy współrzędne punktu, w którym ma być rysowanie lewego górnego rogu obrazu.

  • Rysuje nieskalowany obraz.

C#
public void DrawImage2Int(PaintEventArgs e)
{
                
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
                
    // Create coordinates for upper-left corner of image.
    int x = 100;
    int y = 100;
                
    // Draw image to screen.
    e.Graphics.DrawImage(newImage, x, y);
}

Uwagi

Image przechowuje wartość szerokości pikseli i wartość rozdzielczości poziomej (kropki na cal). Szerokość fizyczna mierzona w calach obrazu to szerokość pikseli podzielona przez rozdzielczość poziomą. Na przykład obraz o szerokości pikseli 216 i poziomej rozdzielczości 72 kropek na cal ma fizyczną szerokość 3 cali. Podobne uwagi dotyczą wysokości pikseli i wysokości fizycznej.

Metoda DrawImage rysuje obraz przy użyciu jego rozmiaru fizycznego, więc obraz będzie miał prawidłowy rozmiar w calach niezależnie od rozdzielczości (kropek na cal) urządzenia wyświetlania. Załóżmy na przykład, że obraz ma szerokość pikseli 216 i poziomą rozdzielczość 72 kropek na cal. Jeśli wywołasz DrawImage, aby narysować ten obraz na urządzeniu o rozdzielczości 96 kropek na cal, szerokość pikseli renderowanego obrazu będzie wynosić (216/72)*96 = 288.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

DrawImage(Image, Point[], Rectangle, GraphicsUnit, ImageAttributes)

Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs
Źródło:
Graphics.cs

Rysuje określoną część określonego Image w określonej lokalizacji.

C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes? imageAttr);
C#
public void DrawImage (System.Drawing.Image image, System.Drawing.Point[] destPoints, System.Drawing.Rectangle srcRect, System.Drawing.GraphicsUnit srcUnit, System.Drawing.Imaging.ImageAttributes imageAttr);

Parametry

image
Image

Image do losowania.

destPoints
Point[]

Tablica trzech struktur Point definiujących równoległość.

srcRect
Rectangle

Rectangle struktura określająca część obiektu image do rysowania.

srcUnit
GraphicsUnit

Element członkowski wyliczenia GraphicsUnit, który określa jednostki miary używane przez parametr srcRect.

imageAttr
ImageAttributes

ImageAttributes, który określa ponowne kolorowanie i informacje gamma dla obiektu image.

Wyjątki

image jest null.

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ące akcje:

  • Tworzy obraz z pliku JPEG SampImag.jpg w folderze przykładu.

  • Tworzy punkty definiujące równoległyogram, w którym ma być rysowanie obrazu.

  • Tworzy prostokąt, aby wybrać część obrazu do narysowania.

  • Ustawia jednostkę rysunku graficznego na piksel.

  • Rysuje oryginalny obraz na ekranie.

  • Tworzy dodatkowy równoległyogram, w którym ma być rysowany dostosowany obraz.

  • Tworzy i ustawia atrybuty dostosowanego obrazu, aby mieć większą niż zwykle wartość gamma.

  • Rysuje skorygowany obraz na ekranie.

W przypadku oryginalnego, nieokreślonego parallelogramu pozycja lokalizuje obraz na ekranie, a rozmiar prostokąta oraz rozmiar i kształt równoległegoogramu określa skalowanie i ścinanie rysunku.

C#
private void DrawImageParaRectAttrib(PaintEventArgs e)
{
    // Create image.
    Image newImage = Image.FromFile("SampImag.jpg");
             
    // Create parallelogram for drawing image.
    Point ulCorner1 = new Point(100, 100);
    Point urCorner1 = new Point(325, 100);
    Point llCorner1 = new Point(150, 250);
    Point[] destPara1 = {ulCorner1, urCorner1, llCorner1};
             
    // Create rectangle for source image.
    Rectangle srcRect = new Rectangle(50, 50, 150, 150);
    GraphicsUnit units = GraphicsUnit.Pixel;
             
    // Draw original image to screen.
    e.Graphics.DrawImage(newImage, destPara1, srcRect, units);
             
    // Create parallelogram for drawing adjusted image.
    Point ulCorner2 = new Point(325, 100);
    Point urCorner2 = new Point(550, 100);
    Point llCorner2 = new Point(375, 250);
    Point[] destPara2 = {ulCorner2, urCorner2, llCorner2};
             
    // Create image attributes and set large gamma.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(4.0F);
             
    // Draw adjusted image to screen.
    e.Graphics.DrawImage(newImage, destPara2, srcRect, units, imageAttr);
}

Uwagi

Parametr destPoints określa trzy punkty równoległości. Trzy struktury Point reprezentują lewe górne, prawe górne i lewe dolne rogi równoległegoogramu. Czwarty punkt jest ekstrapolowany z pierwszych trzech do utworzenia równoległego.

Parametr srcRect określa prostokątną część obiektuimage do rysowania. Ta część jest skalowana i ścinana w celu dopasowania do równoległegoogramu określonego przez parametr destPoints.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET 6, 7, 8, 9
.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
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9