绘图字符串不起作用

时间:2013-12-27 08:58:07

标签: c# drawing

我正在尝试在位图上绘制文本,然后在图片框中显示。代码如下:

private void button2_Click(object sender, EventArgs e)
    {
        Bitmap bmp = new Bitmap("filename.bmp");

        RectangleF rectf = new RectangleF(70, 90, 90, 50);

        Graphics g = Graphics.FromImage(bmp);

        g.SmoothingMode = SmoothingMode.AntiAlias;
        g.InterpolationMode = InterpolationMode.HighQualityBicubic;
        g.PixelOffsetMode = PixelOffsetMode.HighQuality;
        g.DrawString("myText", new Font("Tahoma", 8), Brushes.Black, rectf);

        g.Flush();

        pictureBox1.Image = bmp;
    }

当我运行程序并按下按钮2时出现错误。 它说:

  

System.Drawing.dll中出现未处理的“System.ArgumentException”类型异常

     

附加信息:参数不正确。

我在那里找不到任何错误。可能有什么不对?

1 个答案:

答案 0 :(得分:0)

您需要指定现有文件名。更灵活的解决方案是只指定位图的尺寸。例如,下一个代码在位图

中创建文本
Bitmap bmp = new Bitmap(200, 200);

//your code

bmp.Save(@"D:\filename.bmp");
g.Flush();

D:\filename.bmp

创建下一张图片

enter image description here

如果您想通过添加新文字更改现有位图,请使用Image.FromFile方法,例如:

Bitmap bmp = (Bitmap)Image.FromFile(@"D:\filename.bmp");