将文本添加到图像文件

RV.*_*RV. 10 c#

我需要在图像文件中添加文本.我需要读取一个图像文件(jpg,png,gif),我需要添加一行文本.

Mla*_*vic 20

在GDI +中,您将使用Image类读入文件,然后使用Graphics类向其中添加文本.就像是:

  Image image = Image.FromFile(@"c:\somepic.gif"); //or .jpg, etc...
  Graphics graphics = Graphics.FromImage(image);
  graphics.DrawString("Hello", this.Font, Brushes.Black, 0, 0);
Run Code Online (Sandbox Code Playgroud)

如果要将文件保存在旧文件上,则代码必须更改一点,因为Image.FromFile()方法会锁定文件,直到文件被丢弃为止.以下是我提出的:

  FileStream fs = new FileStream(@"c:\somepic.gif", FileMode.Open, FileAccess.Read);
  Image image = Image.FromStream(fs);
  fs.Close();

  Bitmap b = new Bitmap(image);
  Graphics graphics = Graphics.FromImage(b);
  graphics.DrawString("Hello", this.Font, Brushes.Black, 0, 0);

  b.Save(@"c:\somepic.gif", image.RawFormat);

  image.Dispose();
  b.Dispose();
Run Code Online (Sandbox Code Playgroud)

虽然我会彻底测试这个:)


nba*_*dan 0

您可以使用 C# 中的 Graphics 对象来完成此操作。您可以从图片中获取 Graphics 对象( image.CreateGraphics() - 或我记得的类似的东西),并使用一些内置方法向其添加文本,例如:Graphycs.DrawString() 或其他相关方法。