如何从rgba创建图像?

时间:2013-02-28 10:18:40

标签: image button c++-cli rgba

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

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

2 个答案:

答案 0 :(得分: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方法填充它。

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

答案 1 :(得分:1)

你可以创建一个Bitmap,从中创建一个Graphics对象并用任何颜色填充它。

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() );

太容易了。