Sdílet prostřednictvím


ImageAttributes.SetNoOp Metoda

Definice

Vypne úpravu barev.

Přetížení

SetNoOp()

Vypne nastavení barev pro výchozí kategorii. Můžete volat metodu ClearNoOp, která obnoví nastavení nastavení úprav barev, která byla provedena před voláním metody SetNoOp.

SetNoOp(ColorAdjustType)

Vypne nastavení barev pro zadanou kategorii. Můžete volat metodu ClearNoOp, která obnoví nastavení nastavení úprav barev, která byla provedena před voláním metody SetNoOp.

SetNoOp()

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

Vypne nastavení barev pro výchozí kategorii. Můžete volat metodu ClearNoOp, která obnoví nastavení nastavení úprav barev, která byla provedena před voláním metody SetNoOp.

public:
 void SetNoOp();
public void SetNoOp ();
member this.SetNoOp : unit -> unit
Public Sub SetNoOp ()

Příklady

Následující příklad kódu je určený pro použití s Windows Forms a vyžaduje PaintEventArgse, což je parametr obslužné rutiny události Paint. Kód provede následující akce:

  1. Otevře Image, který používá soubor Camera.jpg.

  2. Nastaví hodnotu gama objektu ImageAttributes na hodnotu 0,25.

  3. Nakreslí obrázek na obrazovku.

  4. Volá metodu SetNoOp.

  5. Nakreslí obrázek (druhá kamera) na obrazovku; Vzhledem k tomu, že byla volána metoda SetNoOp, nastavení gama se ve výchozím nastavení nastaví na hodnotu 1,0 a obrázek se na obrazovce nakreslí s výchozím nastavením gama.

Všimněte si, že obrázek vlevo je velmi omytý (gama z 0,25) a obrázek vpravo má větší kontrast (gama z 1,0).

private:
   void SetNoOpExample( PaintEventArgs^ e )
   {
      // Create an Image object from the file Camera.jpg.
      Image^ myImage = Image::FromFile( "Camera.jpg" );

      // Create an ImageAttributes object, and set the gamma to 0.25.
      ImageAttributes^ imageAttr = gcnew ImageAttributes;
      imageAttr->SetGamma( 0.25f );

      // Draw the image with gamma set to 0.25.
      Rectangle rect1 = Rectangle(20,20,200,200);
      e->Graphics->DrawImage( myImage, rect1, 0, 0, 200, 200, GraphicsUnit::Pixel, imageAttr );

      // Call the ImageAttributes NoOp method.
      imageAttr->SetNoOp();

      // Draw the image after NoOp is set, so the default gamma value
      // of 1.0 will be used.
      Rectangle rect2 = Rectangle(250,20,200,200);
      e->Graphics->DrawImage( myImage, rect2, 0, 0, 200, 200, GraphicsUnit::Pixel, imageAttr );
   }
private void SetNoOpExample(PaintEventArgs e)
{
             
    // Create an Image object from the file Camera.jpg.
    Image myImage = Image.FromFile("Camera.jpg");
             
    // Create an ImageAttributes object, and set the gamma to 0.25.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetGamma(0.25f);
             
    // Draw the image with gamma set to 0.25.
    Rectangle rect1 = new Rectangle(20, 20, 200, 200);
    e.Graphics.DrawImage(myImage, rect1, 0, 0, 200, 200, 
        GraphicsUnit.Pixel, imageAttr);    
    
    // Call the ImageAttributes NoOp method.
    imageAttr.SetNoOp();
             
    // Draw the image after NoOp is set, so the default gamma value
    // of 1.0 will be used.
    Rectangle rect2 = new Rectangle(250, 20, 200, 200);
    e.Graphics.DrawImage(myImage, rect2, 0, 0, 200, 200, 
        GraphicsUnit.Pixel, imageAttr);    
}
Public Sub SetNoOpExample(ByVal e As PaintEventArgs)

    ' Create an Image object from the file Camera.jpg.
    Dim myImage As Image = Image.FromFile("Camera.jpg")

    ' Create an ImageAttributes object, and set the gamma to 0.25.
    Dim imageAttr As New ImageAttributes
    imageAttr.SetGamma(0.25F)

    ' Draw the image with gamma set to 0.25.
    Dim rect1 As New Rectangle(20, 20, 200, 200)
    e.Graphics.DrawImage(myImage, rect1, 0, 0, 200, 200, _
    GraphicsUnit.Pixel, imageAttr)

    ' Call the ImageAttributes NoOp method.
    imageAttr.SetNoOp()

    ' Draw the image with gamma set to 0.25, but now NoOp is set,    
    ' so the uncorrected image will be shown.
    Dim rect2 As New Rectangle(250, 20, 200, 200)
    e.Graphics.DrawImage(myImage, rect2, 0, 0, 200, 200, _
    GraphicsUnit.Pixel, imageAttr)
    ' Image
End Sub

Poznámky

Objekt ImageAttributes udržuje 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 gama hodnotu pro kategorii rastrového obrázku a stále jinou gama hodnotu pro kategorii pera.

Výchozí nastavení úprav barev a úprav ve stupních š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.

Platí pro

SetNoOp(ColorAdjustType)

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

Vypne nastavení barev pro zadanou kategorii. Můžete volat metodu ClearNoOp, která obnoví nastavení nastavení úprav barev, která byla provedena před voláním metody SetNoOp.

public:
 void SetNoOp(System::Drawing::Imaging::ColorAdjustType type);
public void SetNoOp (System.Drawing.Imaging.ColorAdjustType type);
member this.SetNoOp : System.Drawing.Imaging.ColorAdjustType -> unit
Public Sub SetNoOp (type As ColorAdjustType)

Parametry

type
ColorAdjustType

Prvek ColorAdjustType, který určuje kategorii, pro kterou je vypnutá oprava barev.

Příklady

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

Poznámky

Objekt ImageAttributes udržuje 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 gama hodnotu pro kategorii rastrového obrázku a stále jinou gama hodnotu pro kategorii pera.

Platí pro