C#在PictureBox中的某个点上绘制位图

时间:2016-10-21 04:19:40

标签: c# graphics bitmap picturebox point

我目前有Bitmap张图片。我需要将此图像放在PictureBox内的某个坐标处。具体来说,我希望将它从顶部放置5个像素,从左边放置5个像素。位图的长度不同,所以我希望起点始终在此特定点开始绘制Bitmap

例如,这里有两个" Bitmaps"两者都从坐标5,5开始,长度不同。想象一下格雷是PictureBox


我尝试过传递PictureBox并使用图形绘制位图等内容:

private void setQuantity(PictureBox pb, int quantity) {

    Graphics g = pb.CreateGraphics();

    g.DrawImage(iqc.createQuantityImage(quantity), 0, 0);

    g.Dispose();

}

iqc.createQuantityImage() returns a Bitmap

但这似乎并没有吸引任何东西。我也改变了x和y,没有任何变化。

如果可能,我希望能够在PictureBox内指定确切的坐标或点。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您可以通过向Paint方法添加事件处理程序,在任何位置在PictureBox中绘制图像,如下所示;

private void PictureBox1_Paint(object sender, PaintEventArgs e)
{
    e.Graphics.DrawImage(_myBitmap, new Point(5, 5));    //Here new Point(x,y) determines location in pictureBox where you want to draw the bitmap.
}