ImageAttributes.SetRemapTable Método

Definición

Establece la tabla de reasignación de colores.

Sobrecargas

SetRemapTable(ColorMap[])

Establece la tabla de reasignación de colores de la categoría predeterminada.

SetRemapTable(ReadOnlySpan<ColorMap>)
SetRemapTable(ReadOnlySpan<ValueTuple<Color,Color>>)
SetRemapTable(ColorAdjustType, ReadOnlySpan<ColorMap>)
SetRemapTable(ColorAdjustType, ReadOnlySpan<ValueTuple<Color,Color>>)
SetRemapTable(ColorMap[], ColorAdjustType)

Establece la tabla de reasignación de colores de la categoría especificada.

SetRemapTable(ColorMap[])

Source:
ImageAttributes.cs
Source:
ImageAttributes.cs
Source:
ImageAttributes.cs

Establece la tabla de reasignación de colores de la categoría predeterminada.

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

Parámetros

map
ColorMap[]

Matriz de pares de colores de tipo ColorMap. Cada par de colores contiene un color existente (el primer valor), y el color al que se va a asignar (el segundo valor).

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del Paint controlador de eventos. El código realiza las siguientes acciones:

  1. Crea una imagen (un círculo rojo), la guarda como Circle2.jpg, abre esa imagen y la dibuja en la pantalla.

  2. Crea un mapa de colores que asigna el color rojo al color verde.

  3. Dibuja de nuevo la imagen creada anteriormente en la pantalla, pero esta vez con el mapa de colores.

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

Comentarios

Una tabla de reasignación de colores es una matriz de ColorMap estructuras. Cada ColorMap estructura tiene dos Color objetos: uno que especifica un color antiguo y otro que especifica un color nuevo correspondiente. Durante la representación, cualquier color que coincida con uno de los colores antiguos de la tabla de reasignación se cambia al nuevo color correspondiente.

Un ImageAttributes objeto mantiene la configuración de color y escala de grises para cinco categorías de ajuste: predeterminado, mapa de bits, pincel, lápiz y texto. Por ejemplo, puede especificar un mapa de color para la categoría predeterminada, una tabla de reasignación de color para la categoría de mapa de bits y una tabla de reasignación de color diferente para la categoría de lápiz.

La configuración predeterminada de ajuste de color y ajuste de escala de grises se aplica a todas las categorías que no tienen ajustes de ajuste propios. Por ejemplo, si nunca especifica ninguna configuración de ajuste para la categoría de lápiz, la configuración predeterminada se aplica a la categoría de lápiz.

Se aplica a

SetRemapTable(ReadOnlySpan<ColorMap>)

Source:
ImageAttributes.cs
public:
 void SetRemapTable(ReadOnlySpan<System::Drawing::Imaging::ColorMap ^> map);
public void SetRemapTable (ReadOnlySpan<System.Drawing.Imaging.ColorMap> map);
member this.SetRemapTable : ReadOnlySpan<System.Drawing.Imaging.ColorMap> -> unit
Public Sub SetRemapTable (map As ReadOnlySpan(Of ColorMap))

Parámetros

Se aplica a

SetRemapTable(ReadOnlySpan<ValueTuple<Color,Color>>)

Source:
ImageAttributes.cs
public:
 void SetRemapTable(ReadOnlySpan<ValueTuple<System::Drawing::Color, System::Drawing::Color>> map);
public void SetRemapTable (ReadOnlySpan<(System.Drawing.Color OldColor, System.Drawing.Color NewColor)> map);
member this.SetRemapTable : ReadOnlySpan<ValueTuple<System.Drawing.Color, System.Drawing.Color>> -> unit
Public Sub SetRemapTable (map As ReadOnlySpan(Of ValueTuple(Of Color, Color)))

Parámetros

Se aplica a

SetRemapTable(ColorAdjustType, ReadOnlySpan<ColorMap>)

Source:
ImageAttributes.cs
public:
 void SetRemapTable(System::Drawing::Imaging::ColorAdjustType type, ReadOnlySpan<System::Drawing::Imaging::ColorMap ^> map);
public void SetRemapTable (System.Drawing.Imaging.ColorAdjustType type, ReadOnlySpan<System.Drawing.Imaging.ColorMap> map);
member this.SetRemapTable : System.Drawing.Imaging.ColorAdjustType * ReadOnlySpan<System.Drawing.Imaging.ColorMap> -> unit
Public Sub SetRemapTable (type As ColorAdjustType, map As ReadOnlySpan(Of ColorMap))

Parámetros

Se aplica a

SetRemapTable(ColorAdjustType, ReadOnlySpan<ValueTuple<Color,Color>>)

Source:
ImageAttributes.cs
public:
 void SetRemapTable(System::Drawing::Imaging::ColorAdjustType type, ReadOnlySpan<ValueTuple<System::Drawing::Color, System::Drawing::Color>> map);
public void SetRemapTable (System.Drawing.Imaging.ColorAdjustType type, ReadOnlySpan<(System.Drawing.Color OldColor, System.Drawing.Color NewColor)> map);
member this.SetRemapTable : System.Drawing.Imaging.ColorAdjustType * ReadOnlySpan<ValueTuple<System.Drawing.Color, System.Drawing.Color>> -> unit
Public Sub SetRemapTable (type As ColorAdjustType, map As ReadOnlySpan(Of ValueTuple(Of Color, Color)))

Parámetros

Se aplica a

SetRemapTable(ColorMap[], ColorAdjustType)

Source:
ImageAttributes.cs
Source:
ImageAttributes.cs
Source:
ImageAttributes.cs

Establece la tabla de reasignación de colores de la categoría especificada.

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)

Parámetros

map
ColorMap[]

Matriz de pares de colores de tipo ColorMap. Cada par de colores contiene un color existente (el primer valor), y el color al que se va a asignar (el segundo valor).

type
ColorAdjustType

Elemento de ColorAdjustType que especifica la categoría cuya tabla de reasignación de colores se establece.

Ejemplos

Para obtener un ejemplo de código, vea el SetRemapTable(ColorMap[]) método .

Comentarios

Una tabla de reasignación de colores es una matriz de ColorMap estructuras. Cada ColorMap estructura tiene dos Color objetos: uno que especifica un color antiguo y otro que especifica un color nuevo correspondiente. Durante la representación, cualquier color que coincida con uno de los colores antiguos de la tabla de reasignación se cambia al nuevo color correspondiente.

Un ImageAttributes objeto mantiene la configuración de color y escala de grises para cinco categorías de ajuste: predeterminado, mapa de bits, pincel, lápiz y texto. Por ejemplo, puede especificar un mapa de color para la categoría predeterminada, una tabla de reasignación de color para la categoría de mapa de bits y una tabla de reasignación de color diferente para la categoría de lápiz.

La configuración predeterminada de ajuste de color y ajuste de escala de grises se aplica a todas las categorías que no tienen ajustes de ajuste propios. Por ejemplo, si nunca especifica ninguna configuración de ajuste para la categoría de lápiz, la configuración predeterminada se aplica a la categoría de lápiz.

En cuanto especifique un ajuste de color o ajuste de escala de grises para una categoría determinada, la configuración de ajuste predeterminada ya no se aplica a esa categoría. Por ejemplo, supongamos que especifica una colección de opciones de ajuste para la categoría predeterminada. Si establece la tabla de reasignación de color para la categoría de lápiz pasando Pen al SetRemapTable método , ninguna de las opciones de ajuste predeterminadas se aplicará a los lápices.

Se aplica a