我需要使用独特的RGB颜色创建一个24位位图(分辨率100x100像素),并将生成的图像保存到磁盘.我目前使用的SetPixel
功能,但它非常慢.
Bitmap Bmp = new Bitmap(width, height);
//...
//...
Bmp.SetPixel(x,y,Color.FromARGB(redvalue, greenvalue, bluevalue));
Run Code Online (Sandbox Code Playgroud)
有比这更快的方法SetPixel
吗?提前致谢.
Jer*_*ine 54
这应该做你需要的.它将使用指定的颜色填充整个位图.
Bitmap Bmp = new Bitmap(width, height);
using (Graphics gfx = Graphics.FromImage(Bmp))
using (SolidBrush brush = new SolidBrush(Color.FromArgb(redvalue, greenvalue, bluevalue)))
{
gfx.FillRectangle(brush, 0, 0, width, height);
}
Run Code Online (Sandbox Code Playgroud)
小智 25
Bitmap bmp = new Bitmap(width, height);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.Green);
Run Code Online (Sandbox Code Playgroud)
这取决于你想要完成什么,但通常你会通过获取图形对象然后绘制它来使用GDI +:
Graphics g = Graphics.FromImage(bitmap);
Run Code Online (Sandbox Code Playgroud)
它实际上是一个很大的主题,这里有一些初学者教程:GDI +教程
以下是教程中关于使用渐变填充绘制矩形的片段.
Rectangle rect = new Rectangle(50, 30, 100, 100);
LinearGradientBrush lBrush = new LinearGradientBrush(rect, Color.Red, Color.Yellow, LinearGradientMode.BackwardDiagonal);
g.FillRectangle(lBrush, rect);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
63618 次 |
最近记录: |