现在的位置: 首页 > 综合 > 正文

winform中在图片上写字

2013年03月18日 ⁄ 综合 ⁄ 共 2306字 ⁄ 字号 评论关闭

 string WriteText = "Copyright 2008";
            img = Image.FromFile("D://pic.jpg");
            int imgHeight = img.Height;
            int imgWidth = img.Width;
            Graphics g = Graphics.FromImage(img);
            Font f = new Font("Arial", 10);
            Brush b = new SolidBrush(Color.Red);
            g.DrawString("Copyright 2008", f, b, 10, imgHeight - 30);//从左下角开始
            g.DrawString(WriteText, f, b, imgWidth - 100 - WriteText.Length, imgHeight - 30);//从右下角开始
            g.DrawString(WriteText, f, b, imgWidth / 2, imgHeight - 30);//从中间开始
           
            Point p = new Point(10, 10);

            Graphics gp = this.CreateGraphics();//输出在winform页中
            gp.DrawImage(img, p); 

 

--------------------------

try
        {
            string WriteText = "Copyright 2008";
            //网络路径
            WebRequest webRQ = WebRequest.Create("http://pd.7ye.net/1/277/70943/77935-0l.jpg");
            WebResponse webRP = webRQ.GetResponse();
            System.Drawing.Image bitimage = System.Drawing.Image.FromStream(webRP.GetResponseStream());
            //本地路径
            //System.Drawing.Image bitimage = System.Drawing.Image.FromFile("D://pic8.jpg");    
            int imgHeight = bitimage.Height;
            int imgWidth = bitimage.Width;
            Graphics g = Graphics.FromImage(bitimage);
            Font f = new Font("Arial", 10);
            Brush b = new SolidBrush(Color.Red);
            g.DrawString("Copyright 2008", f, b, 10, imgHeight - 30);//从左下角开始
            g.DrawString(WriteText, f, b, imgWidth - 100 - WriteText.Length, imgHeight - 30);//从右下角开始
            g.DrawString(WriteText, f, b, imgWidth / 2, imgHeight - 30);//从中间开始

            Point p = new Point(10, 10);

            //webform中输出,根据image对象
            System.IO.MemoryStream ms = new System.IO.MemoryStream();
            System.Drawing.Image img1 = bitimage;
            img1.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            byte[] msbyte = new byte[ms.Length];
            ms.Position = 0;
            ms.Read(msbyte, 0, msbyte.Length);
            ms.Close();
            Response.BinaryWrite(msbyte);
        }
        catch (Exception ex)
        {
            Response.Write(ex.ToString());
       
        }
        //webform中输出,指定路径
        //FileStream fs = new FileStream("D://pic8.jpg", FileMode.Open);
        //byte[] byData = new byte[fs.Length];
        //fs.Read(byData, 0, byData.Length);
        //fs.Close();
        //Response.ContentType = "image/JPEG";      
        //Response.BinaryWrite(byData);

抱歉!评论已关闭.