ImageAttributes.SetRemapTableとは? わかりやすく解説

ImageAttributes.SetRemapTable メソッド (ColorMap[])

既定のカテゴリのカラー リマップ テーブルを設定します。

名前空間: System.Drawing.Imaging
アセンブリ: System.Drawing (system.drawing.dll 内)
構文構文

Public Sub SetRemapTable ( _
    map As ColorMap() _
)
Dim instance As ImageAttributes
Dim map As ColorMap()

instance.SetRemapTable(map)
public void SetRemapTable (
    ColorMap[] map
)
public:
void SetRemapTable (
    array<ColorMap^>^ map
)
public void SetRemapTable (
    ColorMap[] map
)
public function SetRemapTable (
    map : ColorMap[]
)

パラメータ

map

ColorMap 型の色ペアの配列。それぞれの色ペアには、既存の色 (1 回目の値) および変換後の色 (2 回目の値) が含まれています。

戻り値
このメソッドは値を返しません。

解説解説
使用例使用例

次の例は、Windows フォームでの使用を意図してデザインされており、Paint イベント ハンドラのパラメータである PaintEventArgse が必要です。このコードは次のアクションを実行します。

  1. イメージ (赤い円) を作成して Circle2.jpg として保存し、そのイメージを開いて画面に描画します。

  2. 赤色を緑色に変換するカラー マップを作成します。

  3. 前回作成したイメージを画面に再度描画しますが、今回はカラー マップを使用します。

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
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);    
   
}
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.get_White());
    g.FillEllipse(new SolidBrush(Color.get_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.get_Graphics().DrawImage(myImage, 20, 20);

    // Create a color map.
    ColorMap myColorMap[] = new ColorMap[1];

    myColorMap.set_Item(0, new ColorMap());
    myColorMap[0].set_OldColor(Color.get_Red());
    myColorMap[0].set_NewColor(Color.get_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.get_Graphics().DrawImage(myImage, rect, 0, 0, 50, 50, 
        GraphicsUnit.Pixel, imageAttr);
} //SetRemapTableExample
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ImageAttributes クラス
ImageAttributes メンバ
System.Drawing.Imaging 名前空間

ImageAttributes.SetRemapTable メソッド (ColorMap[], ColorAdjustType)

指定したカテゴリのカラー リマップ テーブルを設定します。

名前空間: System.Drawing.Imaging
アセンブリ: System.Drawing (system.drawing.dll 内)
構文構文

Public Sub SetRemapTable ( _
    map As ColorMap(), _
    type As ColorAdjustType _
)
Dim instance As ImageAttributes
Dim map As ColorMap()
Dim type As ColorAdjustType

instance.SetRemapTable(map, type)
public void SetRemapTable (
    ColorMap[] map,
    ColorAdjustType type
)
public:
void SetRemapTable (
    array<ColorMap^>^ map, 
    ColorAdjustType type
)
public void SetRemapTable (
    ColorMap[] map, 
    ColorAdjustType type
)
public function SetRemapTable (
    map : ColorMap[], 
    type : ColorAdjustType
)

パラメータ

map

ColorMap 型の色ペアの配列。それぞれの色ペアには、既存の色 (1 回目の値) および変換後の色 (2 回目の値) が含まれています。

type

カラー リマップ テーブルを設定する対象のカテゴリを指定する ColorAdjustType の要素。

戻り値
このメソッドは値を返しません。

解説解説

カラー リマップ テーブルは ColorMap 構造体の配列です。各 ColorMap 構造体は、2 つの Color オブジェクトを保持します。1 つは以前の色を、もう 1 つは対応する新しい色を保持します。描画時には、リマップ テーブル内の以前の色の 1 つに一致する色は、対応する新しい色に変更されます。

ImageAttributes オブジェクトは、5 つの調整カテゴリ (既定、ビットマップ、ブラシ、ペン、テキスト) に関して色とグレースケールの設定を保持します。たとえば、既定のカテゴリに対してあるカラー リマップを指定し、ビットマップ カテゴリには別のカラー リマップ テーブルを指定し、さらにペン カテゴリにも異なるカラー リマップ テーブルを指定できます。

既定のカラー調整設定値およびグレースケール調整設定値は、調整設定値が設定されていないすべてのカテゴリに対して適用されます。たとえば、ペン カテゴリの調整設定を一切指定していない場合、ペン カテゴリには既定の設定が適用されます。

特定のカテゴリに対してカラー調整設定値またはグレースケール調整設定値を指定すると、そのカテゴリに適用されていた既定の調整設定値は解除されます。たとえば、既定のカテゴリに対して調整設定値のコレクションを指定するとします。Pen を SetRemapTable メソッドに渡してペン カテゴリのカラー リマップ テーブルを設定すると、ペンには既定の調整設定は一切適用されません。

使用例使用例

コード例については、SetRemapTable(ColorMap[]) メソッドのトピックを参照してください。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ImageAttributes クラス
ImageAttributes メンバ
System.Drawing.Imaging 名前空間

ImageAttributes.SetRemapTable メソッド

カラー リマップ テーブルを設定します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
ImageAttributes.SetRemapTable (ColorMap[]) 既定のカテゴリのカラー リマップ テーブルを設定します。
ImageAttributes.SetRemapTable (ColorMap[], ColorAdjustType) 指定したカテゴリのカラー リマップ テーブルを設定します。
参照参照

関連項目

ImageAttributes クラス
ImageAttributes メンバ
System.Drawing.Imaging 名前空間



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「ImageAttributes.SetRemapTable」の関連用語

ImageAttributes.SetRemapTableのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ImageAttributes.SetRemapTableのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS