how can i change Text to Graphics

first create Class File:

private void CreateImage()
        {

            this.canvas = new Bitmap(this.height,this.width);

            using (Graphics g = Graphics.FromImage(this.canvas))
            {

                g.Clear(Color.White);

                g.DrawImage(((HeaderImage) new HeaderImage(this.headercolor,this.messageone,this.width,0)).IMAGE,0,0);

                g.DrawImage(((HeaderImageWithIcon) new HeaderImageWithIcon(this.headercolor,this.messagetwo,this.width,25)).IMAGE,0,50);
           
                g.DrawString(messagemain, new Font("Verdana",10,FontStyle.Bold),new SolidBrush(Color.Black),0,100, new System.Drawing.StringFormat());
       
            }
        }

    
        public class HeaderImage
        {

            private int height = 30;
            private int width = 700;
            private int messageoffset = 0;
            private Bitmap bmp;
            private string message;

            protected Graphics g;
            protected Color barcolour = Color.Gray;
            protected Rectangle rct;

         
            public Bitmap IMAGE
            {
                get
                {
                    return this.bmp;
                }

            }
           
          

public HeaderImage(Color barcolour,string message,int width,int messageoffset)
            {
           
                this.width = width;

                this.barcolour = barcolour;

                this.message = message;

                this.bmp = new System.Drawing.Bitmap(width, height, PixelFormat.Format16bppRgb555);

                this.messageoffset = messageoffset;

                this.DrawBar();   
          

            }


protected virtual void DrawBar()
            {

                this.g = Graphics.FromImage(this.bmp);

                this.g.SmoothingMode = SmoothingMode.AntiAlias;

                this.g.Clear(Color.White);

                this.rct = new Rectangle(new Point(0,0), new Size(width,bmp.Height-3));
           
                Pen p = new Pen(this.barcolour,3);

                this.g.DrawRectangle(p,rct);
                   
                this.g.FillRectangle(new LinearGradientBrush(rct, this.barcolour, Color.FromArgb(255,255,255),LinearGradientMode.Vertical),0,0,bmp.Width-1,bmp.Height-1);

                this.g.DrawString(this.message, new Font("Verdana",10,FontStyle.Bold),new SolidBrush(this.barcolour),3+this.messageoffset,5, new System.Drawing.StringFormat());

            }

        }


       
        public class HeaderImageWithIcon : HeaderImage
        {
      
            private string imagepath = @"c:\temp\paper.gif";
                       
            public HeaderImageWithIcon(string message) : this(Color.Gray,message)
            {
               
            }
       
            public HeaderImageWithIcon(Color barcolour,string message) : this(barcolour,message,700)
            {
               
            }

            public HeaderImageWithIcon(Color barcolour,string message,int width) : base(barcolour,message,width,0)
            {
                               
            }

            public HeaderImageWithIcon(Color barcolour,string message,int width,int messageoffset) : base(barcolour,message,width,messageoffset)
            {
                               
            }

      
            protected override void DrawBar()
            {
                               
                base.DrawBar();

                Bitmap pic = (Bitmap) Image.FromFile(imagepath);

                pic.MakeTransparent(Color.Black);

                base.g.DrawImage(pic,1,3,pic.Width,pic.Height);


            }

                   

        }

in aspx file:

<form id=Form1 method=post runat="server">&nbsp;<asp:label id=Label2 style="Z-INDEX: 105; LEFT: 112px; POSITION: absolute; TOP: 56px" runat="server" Width="144px" Height="24px" Font-Names="Verdana" Font-Size="X-Small">First Header Text:</asp:label><asp:textbox id=txtTwo style="Z-INDEX: 103; LEFT: 288px; POSITION: absolute; TOP: 80px" runat="server" Width="352px" Font-Names="Verdana">My 2nd heading</asp:textbox><INPUT style="Z-INDEX: 101; LEFT: 544px; WIDTH: 96px; POSITION: absolute; TOP: 104px; HEIGHT: 24px" type=submit value=Submit>
<asp:textbox id=txtOne style="Z-INDEX: 102; LEFT: 288px; POSITION: absolute; TOP: 56px" runat="server" Width="352px" Font-Names="Verdana">My 1st Heading</asp:textbox><asp:label id=Label1 style="Z-INDEX: 104; LEFT: 112px; POSITION: absolute; TOP: 80px" runat="server" Width="152px" Height="24px" Font-Names="Verdana" Font-Size="X-Small">Second Header Text:</asp:label></form>

in code behind File:
if (IsPostBack)
            {
   

                if (Request.Params["colour"] != null && Request.Params["height"] != null && Request.Params["width"] != null)
                {
           
                    this.ci = new CompleteImage(Color.FromName(Request.Params["colour"]),this.txtOne.Text,this.txtTwo.Text,DateTime.Now.ToString(),Convert.ToInt32(Request.Params["height"]),Convert.ToInt32(Request.Params["width"]));
                                   
                }
                else
                {
                    this.ci    = new CompleteImage(this.txtOne.Text,this.txtTwo.Text,DateTime.Now.ToString());
                }

                Response.ContentType = "image/jpeg";
                
                this.ci.CANVAS.Save(Response.OutputStream, ImageFormat.Jpeg); 
}
}

please Comment on this
Ebook Download
View all
Learn
View all