ImageAttributes.SetGamma Metoda

Definice

Nastaví hodnotu gama.

Přetížení

SetGamma(Single)

Nastaví hodnotu gama pro výchozí kategorii.

SetGamma(Single, ColorAdjustType)

Nastaví hodnotu gama pro zadanou kategorii.

SetGamma(Single)

Zdroj:
ImageAttributes.cs
Zdroj:
ImageAttributes.cs
Zdroj:
ImageAttributes.cs

Nastaví hodnotu gama pro výchozí kategorii.

public:
 void SetGamma(float gamma);
public void SetGamma (float gamma);
member this.SetGamma : single -> unit
Public Sub SetGamma (gamma As Single)

Parametry

gamma
Single

Hodnota gama korekce.

Příklady

Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse, což je parametr obslužné rutiny Paint události. Kromě toho musíte změnit cestu k souboru obrázku na cestu a název image platný ve vašem systému. Kód provede následující akce:

  1. Image Otevře soubor, který používá Camera.jpg souboru, a nakreslí ho na obrazovku pomocí výchozí hodnoty pro gama.

  2. ImageAttributes Vytvoří objekt a nastaví jeho gama na 2,2 voláním SetGamma metody .

  3. Nakreslí obrázek (druhou kameru) na obrazovku pomocí hodnoty gama, která je právě nastavená v objektu ImageAttributes .

private:
   void SetGammaExample( PaintEventArgs^ e )
   {
      // Create an Image object from the file Camera.jpg, and draw it to
      // the screen.
      Image^ myImage = Image::FromFile( "Camera.jpg" );
      e->Graphics->DrawImage( myImage, 20, 20 );

      // Create an ImageAttributes object and set the gamma to 2.2.
      System::Drawing::Imaging::ImageAttributes^ imageAttr = 
          gcnew System::Drawing::Imaging::ImageAttributes;
      imageAttr->SetGamma( 2.2f );

      // Draw the image with gamma set to 2.2.
      Rectangle rect = Rectangle(250,20,200,200);
      e->Graphics->DrawImage( myImage, rect, 0, 0, 200, 200, GraphicsUnit::Pixel, imageAttr );
   }
private void SetGammaExample(PaintEventArgs e)
{
             
    // Create an Image object from the file Camera.jpg, and draw it to
    // the screen.
    Image myImage = Image.FromFile("Camera.jpg");
    e.Graphics.DrawImage(myImage, 20, 20);
             
    // Create an ImageAttributes object and set the gamma to 2.2.
    System.Drawing.Imaging.ImageAttributes imageAttr = 
           new System.Drawing.Imaging.ImageAttributes();
    imageAttr.SetGamma(2.2f);
             
    // Draw the image with gamma set to 2.2.
    Rectangle rect = new Rectangle(250, 20, 200, 200);
    e.Graphics.DrawImage(myImage, rect, 0, 0, 200, 200, 
        GraphicsUnit.Pixel, imageAttr);    
}
Public Sub SetGammaExample(ByVal e As PaintEventArgs)

    ' Create an Image object from the file Camera.jpg, and draw

    ' it to screen.
    Dim myImage As Image = Image.FromFile("Camera.jpg")
    e.Graphics.DrawImage(myImage, 20, 20)

    ' Create an ImageAttributes object and set the gamma to 2.2.
    Dim imageAttr As New System.Drawing.Imaging.ImageAttributes
    imageAttr.SetGamma(2.2F)

    ' Draw the image with gamma set to 2.2.
    Dim rect As New Rectangle(250, 20, 200, 200)
    e.Graphics.DrawImage(myImage, rect, 0, 0, 200, 200, _
    GraphicsUnit.Pixel, imageAttr)
    ' Image
End Sub

Poznámky

Typické hodnoty parametru gamma jsou od 1,0 do 2,2, ale hodnoty od 0,1 do 5,0 se můžou v některých případech ukázat jako užitečné.

Objekt ImageAttributes zachovává nastavení barev a stupňů šedé pro pět kategorií úprav: výchozí, rastrový obrázek, štětec, pero a text. Můžete například zadat hodnotu gama pro výchozí kategorii, jinou hodnotu gama pro rastrovou kategorii a stále jinou hodnotu gama pro kategorii pera.

Výchozí nastavení úprav barev a úprav stupňů šedé platí pro všechny kategorie, které nemají vlastní nastavení úprav. Pokud například nikdy nezadáte žádné nastavení úprav pro kategorii pera, použije se výchozí nastavení pro kategorii pera.

Hodnoty gama mimo obvyklý rozsah mohou být užitečné pro staré CRT monitory nebo monitory, které jsou v neobvyklých světelných podmínkách, jako jsou průmyslové prostředí nebo okenní displeje.

Platí pro

SetGamma(Single, ColorAdjustType)

Zdroj:
ImageAttributes.cs
Zdroj:
ImageAttributes.cs
Zdroj:
ImageAttributes.cs

Nastaví hodnotu gama pro zadanou kategorii.

public:
 void SetGamma(float gamma, System::Drawing::Imaging::ColorAdjustType type);
public void SetGamma (float gamma, System.Drawing.Imaging.ColorAdjustType type);
member this.SetGamma : single * System.Drawing.Imaging.ColorAdjustType -> unit
Public Sub SetGamma (gamma As Single, type As ColorAdjustType)

Parametry

gamma
Single

Hodnota gama korekce.

type
ColorAdjustType

Prvek výčtu ColorAdjustType , který určuje kategorii, pro kterou je nastavena hodnota gama.

Příklady

Příklad kódu najdete v SetGamma(Single) metodě .

Poznámky

Typické hodnoty parametru gamma jsou od 1,0 do 2,2, ale hodnoty od 0,1 do 5,0 se můžou v některých případech ukázat jako užitečné.

Objekt ImageAttributes zachovává nastavení barev a stupňů šedé pro pět kategorií úprav: výchozí, rastrový obrázek, štětec, pero a text. Můžete například zadat hodnotu gama pro výchozí kategorii, jinou hodnotu gama pro rastrovou kategorii a stále jinou hodnotu gama pro kategorii pera.

Výchozí nastavení úprav barev a úprav stupňů šedé platí pro všechny kategorie, které nemají vlastní nastavení úprav. Pokud například nikdy nezadáte žádné nastavení úprav pro kategorii pera, použije se výchozí nastavení pro kategorii pera.

Jakmile pro určitou kategorii zadáte nastavení úpravy barev nebo stupňů šedé, výchozí nastavení úprav se už na tuto kategorii nevztahují. Předpokládejme například, že zadáte kolekci nastavení úprav pro výchozí kategorii. Pokud nastavíte hodnotu gama pro kategorii pera předáním Pen do SetGamma metody, žádné výchozí nastavení úprav nebude platit pro pera.

Hodnoty gama mimo obvyklý rozsah mohou být užitečné pro staré CRT monitory nebo monitory, které jsou v neobvyklých světelných podmínkách, jako jsou průmyslové prostředí nebo okenní displeje.

Platí pro