usar para necesarios library elementos ejemplo dibujar como c# image bitmap

c# - para - como usar bitmap



¿Cómo llene un mapa de bits con un color sólido? (8)

Depende de lo que intente lograr, pero normalmente usaría GDI + al obtener un objeto gráfico y luego dibujarlo:

Graphics g = Graphics.FromImage(bitmap);

Es realmente un gran tema, aquí hay algunos tutoriales para principiantes: Tutoriales de GDI +

Aquí hay un fragmento del tutorial sobre cómo dibujar un rectángulo con un relleno de degradado.

Rectangle rect = new Rectangle(50, 30, 100, 100); LinearGradientBrush lBrush = new LinearGradientBrush(rect, Color.Red, Color.Yellow, LinearGradientMode.BackwardDiagonal); g.FillRectangle(lBrush, rect);

Necesito crear un mapa de bits de 24 bits (resolución 100x100 píxeles) usando un color RGB único y guardar la imagen generada en el disco. Actualmente uso la función SetPixel , pero es extremadamente lenta.

Bitmap Bmp = new Bitmap(width, height); //... //... Bmp.SetPixel(x,y,Color.FromARGB(redvalue, greenvalue, bluevalue));

¿Hay un método más rápido que SetPixel ? Gracias por adelantado.


Puede usar LockBits para acelerar la escritura de los píxeles (acceso de puntero en lugar de método por píxel).




siempre Trabajar con regiones ( rectángulo ) es mucho más rápido que usar píxeles individuales .


Esto debería hacer lo que usted necesita. Llena todo el mapa de bits con el color especificado.

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


Bitmap bmp = new Bitmap(width, height); Graphics g = Graphics.FromImage(bmp); g.Clear(Color.Green);


Creación de objetos de mapa de bits bmp de Tamaño s (alto, ancho) y Color c.

bmp=CreateBmp( c , s );

Ahora método CreateBmp que devuelve mapa de bits:

Bitmap CreateBmp(Color c, Size s) { Bitmap temp =new Bitmap(1,1); temp.SetPixel(1,1,c); return new Bitmap(temp, s); }