Поделиться через


ImageAttributes.SetNoOp Метод

Определение

Отключает корректировку цвета.

Перегрузки

SetNoOp()

Отключает корректировку цвета для категории по умолчанию. Вы можете вызвать метод ClearNoOp, чтобы восстановить параметры настройки цвета, которые были на месте перед вызовом метода SetNoOp.

SetNoOp(ColorAdjustType)

Отключает корректировку цвета для указанной категории. Вы можете вызвать метод ClearNoOp, чтобы восстановить параметры настройки цвета, которые были на месте перед вызовом метода SetNoOp.

SetNoOp()

Исходный код:
ImageAttributes.cs
Исходный код:
ImageAttributes.cs
Исходный код:
ImageAttributes.cs

Отключает корректировку цвета для категории по умолчанию. Вы можете вызвать метод ClearNoOp, чтобы восстановить параметры настройки цвета, которые были на месте перед вызовом метода SetNoOp.

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

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse, который является параметром обработчика событий Paint. Код выполняет следующие действия:

  1. Открывает Image, использующую файл Camera.jpg.

  2. Задает гамма-значение объекта ImageAttributes значение 0,25.

  3. Рисует изображение на экране.

  4. Вызывает метод SetNoOp.

  5. Рисует изображение (вторая камера) на экран; однако, так как был вызван метод SetNoOp, гамма-параметр по умолчанию имеет значение 1.0, а изображение рисуется на экране с параметром гамма по умолчанию.

Обратите внимание, что изображение слева очень вымыто (гамма 0,25) и изображение справа имеет больше контрастности (гамма 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

Комментарии

Объект ImageAttributes поддерживает параметры цвета и серого шкалы для пяти категорий корректировки: по умолчанию, растровая карта, кисть, перо и текст. Например, можно указать гамма-значение для категории по умолчанию, другое гамма-значение категории растрового изображения и по-прежнему другое гамма-значение для категории пера.

Параметры настройки цветов по умолчанию и настройки серого шкалы применяются ко всем категориям, которые не имеют собственных параметров корректировки. Например, если вы никогда не указываете параметры корректировки для категории пера, параметры по умолчанию применяются к категории пера.

Применяется к

SetNoOp(ColorAdjustType)

Исходный код:
ImageAttributes.cs
Исходный код:
ImageAttributes.cs
Исходный код:
ImageAttributes.cs

Отключает корректировку цвета для указанной категории. Вы можете вызвать метод ClearNoOp, чтобы восстановить параметры настройки цвета, которые были на месте перед вызовом метода 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)

Параметры

type
ColorAdjustType

Элемент ColorAdjustType, указывающий категорию, для которой отключена коррекция цвета.

Примеры

Пример кода см. в методе SetNoOp().

Комментарии

Объект ImageAttributes поддерживает параметры цвета и серого шкалы для пяти категорий корректировки: по умолчанию, растровая карта, кисть, перо и текст. Например, можно указать гамма-значение для категории по умолчанию, другое гамма-значение категории растрового изображения и по-прежнему другое гамма-значение для категории пера.

Применяется к