1

我从 ColorDialog 得到 RGBA rgba。如何从 rgba 创建图像?

我想根据用户颜色选择设置按钮的图像。

4

2 回答 2

1

为您的按钮创建一个正确大小的位图,并将像素的颜色更改为您的 rbga 颜色。

例如:

     Bitmap image1 = gcnew Bitmap(160,160);
     int x;
     int y;

     Color pixelColor =  Color::FromArgb( A, R, B, G );
     // Loop through the images pixels to reset color. 
     for ( x = 0; x < image1->Width; x++ )
     {
        for ( y = 0; y < image1->Height; y++ )
        {
           image1->SetPixel( x, y, pixelColor );

        }

     }

您还可以获得位图的图形上下文并使用 Graphics.FillRectangle 方法来填充它。

位图是图像,因此您可以将其设置为按钮的图像

于 2013-02-28T16:18:35.157 回答
1

您可以创建一个位图,从中创建一个图形对象并用任何颜色填充它。

Bitmap^ bmp = gcnew Bitmap(WIDTH, HEIGHT);
Graphics^ g = Graphics::FromImage(bmp);
g->FillRectangle(
   gcnew SolidBrush(Color::FromArgb(alfa, red, green, blue)),
   Rectangle(Point.Empty, bmp.Size() );

太简单。

于 2013-03-04T15:36:30.487 回答