我想在 C# 中使用 drawstring 方法在图像中绘制文本。但是我如何才能获得单击位置的坐标以及如何将其与图像的尺寸相关联。 请帮忙。
最佳答案
工作示例:
private Bitmap _bmp = new Bitmap(250, 250);
public Form1()
{
InitializeComponent();
panel1.MouseDown += new MouseEventHandler(panel1_MouseDown);
panel1.Paint += new PaintEventHandler(panel1_Paint);
using (Graphics g = Graphics.FromImage(_bmp))
g.Clear(SystemColors.Window);
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawImage(_bmp, new Point(0, 0));
}
private void panel1_MouseDown(object sender, MouseEventArgs e)
{
using (Graphics g = Graphics.FromImage(_bmp))
{
g.DrawString("Mouse Clicked Here!", panel1.Font, Brushes.Black, e.Location);
}
panel1.Invalidate();
}
您可能想使用 TextRenderer 而不是 DrawString。 DrawString 有问题。
TextRenderer.DrawText(g, "Mouse Clicked Here!", panel1.Font, e.Location, Color.Black);
关于c# - 如何在 C# 中的鼠标单击事件中的窗体中的图像上绘制文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7322973/