c# - 如何在 C# 中的鼠标单击事件中的窗体中的图像上绘制文本

标签 c# .net image graphics drawing

我想在 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/

相关文章:

java - 搜索并保存 html 代码中的指定链接

c# - 将此 DLL 包含从 VB.net 翻译成 C#

.net - MongoDB 中的子文档索引

ios - 从 iOS 应用程序获取 WatchKit 应用程序中的图像

php - 使用php中的文件夹上传图像

c# - 如何正确地将我的 ContextMenu 命令绑定(bind)到 RelayCommand?

C# 和 NPOI 无法读取数字和字符串值

c# - 如何在代码中设置按钮的内部属性?

c# - 从 ListView (WPF) 中的 SelectedItem 启动键盘导航

c# - Nant 和 Nunit2 的问题