img = Image.FromFile("vod.png");
Rectangle rect = new Rectangle(new Point(0, 0), new Size(100 , 100 ));
BufferedGraphicsContext current = BufferedGraphicsManager.Current;
BufferedGraphics bg = current.Allocate(this.CreateGraphics(), rect);
Graphics g = bg.Graphics;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighSpeed;
g.Clear(this.BackColor); Bitmap bit=new Bitmap(img,100,100);
g.DrawImage(bit, 0, 0); bg.Render();
bg.Dispose();我用如上代码绘制了一张100*100图片在位置(0,0)上
但是有个问题是,我的form有背景图,画上图片后,图片的背景把form的背景图挡住了,这也太难看了
用什么把图片的背景弄为透明了啊。谢谢
g.Clear(this.BackColor);
删除了看看
Rectangle rect = new Rectangle(new Point(0, 0), new Size(100, 100));
BufferedGraphicsContext current = BufferedGraphicsManager.Current;
BufferedGraphics bg = current.Allocate(this.CreateGraphics(), rect);
Graphics g = bg.Graphics;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighSpeed;
g.Clear(this.BackColor);Bitmap bit = new Bitmap(img, 100, 100);
g.DrawImage(bit, 0, 0,100,100);pictureBox1.Image = bit;
pictureBox1.BackColor = Color.Transparent;
bg.Render();
bg.Dispose();