ImageAttributes.SetRemapTable Метод

Определение

Задает таблицу преобразования цветов.Sets the color-remap table.

Перегрузки

SetRemapTable(ColorMap[])

Задает таблицу преобразования цветов для категории по умолчанию.Sets the color-remap table for the default category.

SetRemapTable(ColorMap[], ColorAdjustType)

Задает таблицу преобразования цветов для определенной категории.Sets the color-remap table for a specified category.

SetRemapTable(ColorMap[])

Задает таблицу преобразования цветов для категории по умолчанию.Sets the color-remap table for the default category.

public:
 void SetRemapTable(cli::array <System::Drawing::Imaging::ColorMap ^> ^ map);
public void SetRemapTable (System.Drawing.Imaging.ColorMap[] map);
member this.SetRemapTable : System.Drawing.Imaging.ColorMap[] -> unit
Public Sub SetRemapTable (map As ColorMap())

Параметры

map
ColorMap[]

Массив пар цветов типа ColorMap.An array of color pairs of type ColorMap. Каждая пара цветов содержит существующий цвет (первое значение) и цвет, с которым он будет сопоставлен (второе значение).Each color pair contains an existing color (the first value) and the color that it will be mapped to (the second value).

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse, который является параметром обработчика событий Paint.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Код выполняет следующие действия.The code performs the following actions:

  1. Создает изображение (красный круг), сохраняет его как circle2. jpg, открывает это изображение и отображает его на экране.Creates an image (a red circle), saves it as Circle2.jpg, opens that image, and draws it to the screen.

  2. Создает цветовую карту, которая сопоставляет красный цвет с зеленым цветом.Creates a color map that maps the color red to the color green.

  3. Выводит ранее созданное изображение на экран, но на этот раз с помощью цветовой гиперкарты.Draws the image created earlier to the screen again, but this time using the color map.

private:
   void SetRemapTableExample( PaintEventArgs^ e )
   {
      // Create a filled, red image, and save it to Circle2.jpg.
      Bitmap^ myBitmap = gcnew Bitmap( 50,50 );
      Graphics^ g = Graphics::FromImage( myBitmap );
      g->Clear( Color::White );
      g->FillEllipse( gcnew SolidBrush( Color::Red ), Rectangle(0,0,50,50) );
      myBitmap->Save( "Circle2.jpg" );

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

      // Create a color map.
      array<ColorMap^>^myColorMap = gcnew array<ColorMap^>(1);
      myColorMap[ 0 ] = gcnew ColorMap;
      myColorMap[ 0 ]->OldColor = Color::Red;
      myColorMap[ 0 ]->NewColor = Color::Green;

      // Create an ImageAttributes object, and then pass the
      // myColorMap object to the SetRemapTable method.
      ImageAttributes^ imageAttr = gcnew ImageAttributes;
      imageAttr->SetRemapTable( myColorMap );

      // Draw the image with the remap table set.
      Rectangle rect = Rectangle(150,20,50,50);
      e->Graphics->DrawImage( myImage, rect, 0, 0, 50, 50, GraphicsUnit::Pixel, imageAttr );
   }
private void SetRemapTableExample(PaintEventArgs e)
{
             
    // Create a filled, red image, and save it to Circle2.jpg.
    Bitmap myBitmap = new Bitmap(50, 50);
    Graphics g = Graphics.FromImage(myBitmap);
    g.Clear(Color.White);
    g.FillEllipse(new SolidBrush(Color.Red),
        new Rectangle(0, 0, 50, 50));
    myBitmap.Save("Circle2.jpg");
             
    // Create an Image object from the Circle2.jpg file, and draw it to
             
    // the screen.
    Image myImage = Image.FromFile("Circle2.jpg");
    e.Graphics.DrawImage(myImage, 20, 20);
             
    // Create a color map.
    ColorMap[] myColorMap = new ColorMap[1];
    myColorMap[0] = new ColorMap();
    myColorMap[0].OldColor = Color.Red;
    myColorMap[0].NewColor = Color.Green;
             
    // Create an ImageAttributes object, and then pass the
   // myColorMap object to the SetRemapTable method.
    ImageAttributes imageAttr = new ImageAttributes();
    imageAttr.SetRemapTable(myColorMap);
             
    // Draw the image with the remap table set.
    Rectangle rect = new Rectangle(150, 20, 50, 50);
    e.Graphics.DrawImage(myImage, rect, 0, 0, 50, 50, 
        GraphicsUnit.Pixel, imageAttr);    
}
Public Sub SetRemapTableExample(ByVal e As PaintEventArgs)

    ' Create a filled, red image and save it to Circle2.jpg.
    Dim myBitmap As New Bitmap(50, 50)
    Dim g As Graphics = Graphics.FromImage(myBitmap)
    g.Clear(Color.White)
    g.FillEllipse(New SolidBrush(Color.Red), New Rectangle(0, 0, _
    50, 50))
    myBitmap.Save("Circle2.jpg")

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

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

    ' Create a color map.
    Dim myColorMap(0) As ColorMap
    myColorMap(0) = New ColorMap
    myColorMap(0).OldColor = Color.Red
    myColorMap(0).NewColor = Color.Green

    ' Create an ImageAttributes object, and then pass the

    ' myColorMap object to the SetRemapTable method.
    Dim imageAttr As New ImageAttributes
    imageAttr.SetRemapTable(myColorMap)

    ' Draw the image with the remap table set.
    Dim rect As New Rectangle(150, 20, 50, 50)
    e.Graphics.DrawImage(myImage, rect, 0, 0, 50, 50, _
    GraphicsUnit.Pixel, imageAttr)
    ' Image
End Sub

Комментарии

Таблица преобразования цветов — это массив структур ColorMap.A color-remap table is an array of ColorMap structures. Каждая структура ColorMap имеет два Color объектов: один указывает старый цвет, а другой — соответствующий новый цвет.Each ColorMap structure has two Color objects: one that specifies an old color and one that specifies a corresponding new color. Во время подготовки к просмотру любой цвет, совпадающий с одним из старых цветов в таблице преобразования, изменяется на соответствующий новый цвет.During rendering, any color that matches one of the old colors in the remap table is changed to the corresponding new color.

Объект ImageAttributes сохраняет параметры цвета и оттенков серого для пяти категорий корректировки: по умолчанию, точечный рисунок, кисть, перо и текст.An ImageAttributes object maintains color and grayscale settings for five adjustment categories: default, bitmap, brush, pen, and text. Например, можно указать сопоставление цвета для категории по умолчанию, таблицы преобразования цветов для категории точечных рисунков, а также другую таблицу сопоставления цветов для категории перьев.For example, you can specify a color remap for the default category, a color-remap table for the bitmap category, and still a different color-remap table for the pen category.

Параметры коррекции цвета и оттенков серого по умолчанию применяются ко всем категориям, которые не имеют собственных параметров настройки.The default color-adjustment and grayscale-adjustment settings apply to all categories that do not have adjustment settings of their own. Например, если вы никогда не укажете параметры настройки для категории перьев, параметры по умолчанию применяются к категории перо.For example, if you never specify any adjustment settings for the pen category, the default settings apply to the pen category.

SetRemapTable(ColorMap[], ColorAdjustType)

Задает таблицу преобразования цветов для определенной категории.Sets the color-remap table for a specified category.

public:
 void SetRemapTable(cli::array <System::Drawing::Imaging::ColorMap ^> ^ map, System::Drawing::Imaging::ColorAdjustType type);
public void SetRemapTable (System.Drawing.Imaging.ColorMap[] map, System.Drawing.Imaging.ColorAdjustType type);
member this.SetRemapTable : System.Drawing.Imaging.ColorMap[] * System.Drawing.Imaging.ColorAdjustType -> unit
Public Sub SetRemapTable (map As ColorMap(), type As ColorAdjustType)

Параметры

map
ColorMap[]

Массив пар цветов типа ColorMap.An array of color pairs of type ColorMap. Каждая пара цветов содержит существующий цвет (первое значение) и цвет, с которым он будет сопоставлен (второе значение).Each color pair contains an existing color (the first value) and the color that it will be mapped to (the second value).

type
ColorAdjustType

Элемент ColorAdjustType, указывающий категорию, для которой задается таблица преобразования цветов.An element of ColorAdjustType that specifies the category for which the color-remap table is set.

Примеры

Пример кода см. в описании метода SetRemapTable(ColorMap[]).For a code example, see the SetRemapTable(ColorMap[]) method.

Комментарии

Таблица преобразования цветов — это массив структур ColorMap.A color-remap table is an array of ColorMap structures. Каждая структура ColorMap имеет два Color объектов: один указывает старый цвет, а другой — соответствующий новый цвет.Each ColorMap structure has two Color objects: one that specifies an old color and one that specifies a corresponding new color. Во время подготовки к просмотру любой цвет, совпадающий с одним из старых цветов в таблице преобразования, изменяется на соответствующий новый цвет.During rendering, any color that matches one of the old colors in the remap table is changed to the corresponding new color.

Объект ImageAttributes сохраняет параметры цвета и оттенков серого для пяти категорий корректировки: по умолчанию, точечный рисунок, кисть, перо и текст.An ImageAttributes object maintains color and grayscale settings for five adjustment categories: default, bitmap, brush, pen, and text. Например, можно указать сопоставление цвета для категории по умолчанию, таблицы преобразования цветов для категории точечных рисунков, а также другую таблицу сопоставления цветов для категории перьев.For example, you can specify a color remap for the default category, a color-remap table for the bitmap category, and still a different color-remap table for the pen category.

Параметры коррекции цвета и оттенков серого по умолчанию применяются ко всем категориям, которые не имеют собственных параметров настройки.The default color-adjustment and grayscale-adjustment settings apply to all categories that do not have adjustment settings of their own. Например, если вы никогда не укажете параметры настройки для категории перьев, параметры по умолчанию применяются к категории перо.For example, if you never specify any adjustment settings for the pen category, the default settings apply to the pen category.

Как только вы укажете параметр настройки цвета или оттенки серого для определенной категории, параметры настройки по умолчанию больше не применяются к этой категории.As soon as you specify a color-adjustment or grayscale-adjustment setting for a certain category, the default adjustment settings no longer apply to that category. Например, предположим, что вы указали коллекцию параметров настройки для категории по умолчанию.For example, suppose you specify a collection of adjustment settings for the default category. Если задать таблицу преобразования цветов для категории перьев, передав Pen методу SetRemapTable, ни один из параметров настройки по умолчанию не будет применяться к перьям.If you set the color-remap table for the pen category by passing Pen to the SetRemapTable method, none of the default adjustment settings will apply to pens.

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