3

好吧,我尝试用 C# 在图像上写,我的代码是:

public string WriteOnImage(Bitmap Image, string NameImage, string TextFileName)

    {
        string Message = "OK";
        try
        {
            Bitmap bitMapImage = new Bitmap(Image);

            using (Graphics graphImage = Graphics.FromImage(Image))

            {

                graphImage.SmoothingMode = SmoothingMode.AntiAlias;

                string line;

                // Read the file and display it line by line.
                StreamReader file = new StreamReader(Resources.C_PATH_DESTINO_IMG + TextFileName);
                while ((line = file.ReadLine()) != null)
                {
                    graphImage.DrawString(line, new Font("Courier New", 15, FontStyle.Bold), SystemBrushes.WindowText, new Point(0, 0));
                    HttpContext.Current.Response.ContentType = "image/jpeg";
                    bitMapImage.Save(Resources.C_PATH_DESTINO_IMG + NameImage, ImageFormat.Jpeg);
                    graphImage.Dispose();
                    bitMapImage.Dispose();
                }

                file.Close();
            }
            return Message;
        }
        catch (Exception ex)
        {
            EventLogWrite("Error: " + ex.Message);
            return Message = ex.Message;
        }
    }

此方法不起作用,因为没有在图像上写字,请帮助我。

PD:对不起,我的英语很糟糕,但我是拉丁裔 jeje,谢谢。

4

1 回答 1

4

看起来您正在绘制错误的位图

 Bitmap bitMapImage = new Bitmap(Image);
 using (Graphics graphImage = Graphics.FromImage(Image))

应该

 Bitmap bitMapImage = new Bitmap(Image);
 using (Graphics graphImage = Graphics.FromImage(bitMapImage))
于 2013-03-04T23:46:27.817 回答