StringAlignment.Near

   
 

using System;
using System.Drawing;
using System.Windows.Forms;
   
class FourCorners: Form
{
     public static void Main()
     {
          Application.Run(new FourCorners());
     }
     public FourCorners()
     {
          Text = "Four Corners Text Alignment";
          BackColor = SystemColors.Window;
          ForeColor = SystemColors.WindowText;
          ResizeRedraw = true;
     }
     protected override void OnPaint(PaintEventArgs pea)
     {
          Graphics     graphics   = pea.Graphics;
          Brush        brush  = new SolidBrush(ForeColor);
          StringFormat strfmt = new StringFormat();
   
          strfmt.Alignment     = StringAlignment.Near;
          strfmt.LineAlignment = StringAlignment.Near;
          graphics.DrawString("Upper left corner", Font, brush, 0, 0, strfmt);
   
     }
}

    


StringAlignment.Center

   
 


using System;
using System.Drawing;
using System.Windows.Forms;
   
class HelloCenteredRectangle: Form
{
     public static void Main() 
     {
          Application.Run(new HelloCenteredRectangle()); 
     }
     public HelloCenteredRectangle()
     {
          Text = "Hello Centered Using Rectangle";
          BackColor = SystemColors.Window;
          ForeColor = SystemColors.WindowText;
          ResizeRedraw = true;
     }
     protected override void OnPaint(PaintEventArgs pea)
     {
          Graphics     grfx   = pea.Graphics;
          StringFormat strfmt = new StringFormat();
   
          strfmt.Alignment     = StringAlignment.Center;
          strfmt.LineAlignment = StringAlignment.Center;
   
          grfx.DrawString("Hello, world!", Font, new SolidBrush(ForeColor),
                          ClientRectangle, strfmt);
     }
}

    


String Alignment (PointF in DrawString)

using System;
using System.Drawing;
using System.Windows.Forms;

class StringAlignmentPoint: Form
{
public static void Main()
{
Application.Run(new StringAlignmentPoint());
}
public StringAlignmentPoint()
{
Text = “”;
ResizeRedraw = true;
}
protected override void OnPaint(PaintEventArgs pea)
{
DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);
}
protected void DoPage(Graphics grfx, Color clr, int cx, int cy)
{
Brush brush = new SolidBrush(clr);
Pen pen = new Pen(clr);
string[] strAlign = { “Near”, “Center”, “Far” };
StringFormat strfmt = new StringFormat();

grfx.DrawLine(pen, 0, cy / 2, cx, cy / 2);
grfx.DrawLine(pen, cx / 2, 0, cx / 2, cy);

for (int iVert = 0; iVert < 3; iVert += 2){ for (int iHorz = 0; iHorz < 3; iHorz += 2) { strfmt.LineAlignment = (StringAlignment)iVert; strfmt.Alignment = (StringAlignment)iHorz; grfx.DrawString( String.Format("LineAlignment = {0} Alignment = {1}", strAlign[iVert], strAlign[iHorz]), Font, brush, cx / 2, cy / 2, strfmt); } } } } [/csharp]

Enuermate the StringAlignment value

using System;
using System.Drawing;
using System.Windows.Forms;

class StringAlignmentRectangle: Form
{
public static void Main()
{
Application.Run(new StringAlignmentRectangle());
}
public StringAlignmentRectangle()
{
Text = “String Alignment (RectangleF in DrawString)”;
ResizeRedraw = true;
}
protected override void OnPaint(PaintEventArgs pea)
{
DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);
}
protected void DoPage(Graphics grfx, Color clr, int cx, int cy)
{
Brush brush = new SolidBrush(clr);
RectangleF rectf = new RectangleF(0, 0, cx, cy);
string[] strAlign = { “Near”, “Center”, “Far” };
StringFormat strfmt = new StringFormat();

for (int iVert = 0; iVert < 3; iVert++){ for (int iHorz = 0; iHorz < 3; iHorz++) { strfmt.LineAlignment = (StringAlignment)iVert; strfmt.Alignment = (StringAlignment)iHorz; grfx.DrawString( String.Format("LineAlignment = {0} Alignment = {1}", strAlign[iVert], strAlign[iHorz]), Font, brush, rectf, strfmt); } } } } [/csharp]

StringFormat.GenericTypographic

   
 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

public class Form1 : Form {

    protected override void OnPaint(PaintEventArgs e) {
      Graphics g = e.Graphics;
      g.FillRectangle(Brushes.White, this.ClientRectangle);

      FontFamily ff = new FontFamily("Times New Roman");
      Font f = new Font(ff, 12);
      String s = "Height: " + f.Height;
      SizeF sf = g.MeasureString(s, f, Int32.MaxValue,StringFormat.GenericTypographic);
      RectangleF r = new RectangleF(0, 0, sf.Width, f.Height);

      g.DrawRectangle(Pens.Black, r.Left, r.Top, r.Width, r.Height);
      g.DrawString(s, f, Brushes.Black, r, StringFormat.GenericTypographic);

      f.Dispose();
    }
    public static void Main() {
        Application.Run(new Form1());
    }
}

    


StringFormat: Alignment, LineAlignment

   
 
using System;
using System.Drawing;
using System.Windows.Forms;
   
class HelloCenteredRectangle: Form
{
     public static void Main() 
     {
          Application.Run(new HelloCenteredRectangle()); 
     }
     public HelloCenteredRectangle()
     {
          BackColor = SystemColors.Window;
          ForeColor = SystemColors.WindowText;
          ResizeRedraw = true;
     }
     protected override void OnPaint(PaintEventArgs pea)
     {
          Graphics     grfx   = pea.Graphics;
          StringFormat strfmt = new StringFormat();
   
          strfmt.Alignment     = StringAlignment.Center;
          strfmt.LineAlignment = StringAlignment.Center;
   
          grfx.DrawString("Hello, world!", Font, new SolidBrush(ForeColor),
                          ClientRectangle, strfmt);
     }
}

    


Create a StringFormat object, and set the tab stops, in pixels


   



  using System;
  using System.Drawing;
  using System.Drawing.Drawing2D;
  using System.Collections;
  using System.ComponentModel;
  using System.Windows.Forms;
  using System.Data;
  using System.Drawing.Imaging;

  public class Form1 : System.Windows.Forms.Form
  {
    public Form1()
    {
      InitializeComponent();
    }
    private void InitializeComponent()
    {
      this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
      this.ClientSize = new System.Drawing.Size(292, 273);
      this.Text = "";
      this.Resize += new System.EventHandler(this.Form1_Resize);
      this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);

    }
    static void Main() 
    {
      Application.Run(new Form1());
    }

    private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
    {      
      Graphics g = e.Graphics;
      g.FillRectangle(Brushes.White, this.ClientRectangle);

      Font f = new Font("Times New Roman", 12);
      Font bf = new Font(f, FontStyle.Bold);

      // 
      StringFormat sf = new StringFormat();
      float[] ts = { 10.0f, 70.0f, 100.0f, 90.0f };
      sf.SetTabStops(0.0f, ts);

      // The 	 escape-sequence in these lines specifies the tab
      string s1 = "	A	AAA	AAAAAA	AAAAAAAA";
      string s2 = "	AAAA	AAAAAA	AAAA	A";

      g.DrawString(s1, bf, Brushes.Black, 20, 20, sf);
      g.DrawString(s2, f, Brushes.Blue, 20, 20 + bf.Height, sf);

      f.Dispose();
      bf.Dispose();
    }

    private void Form1_Resize(object sender, System.EventArgs e)
    {
      Invalidate();
    }
  }