Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 4 của 4
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Xử lý TEXT trong lập trình GDI+ và C#

    Bài viết này xin được hướng dẫn mọi người dùng GDI+ để in chuỗi với hiệu ứng tuyệt vời. Các bạn cùng làm theo mình nhé
    - Bước 1: tạo ứng dụng Windows Forms
    - Bước 2: thiết kế giao diện

    Gồm:
    - 2 label
    - 1 textbox : Name = "txtBrushText"
    - 1 NumericUpDown control
    - 1 button : Name = "btnBrushText"
    - 1 picturebox control: thiết đặt thuộc tính BorderStyle = Fixed3D

    Bây giờ, chận xử lý tình huống click của btnBrush như sau:

    Mã:
            private void btnBrushText_Click(object sender, EventArgs e)        {            SizeF textSize; // 1 biến kiểu SizeF thể hiện kích thước của Brush Text            // tạo 1 đối tượng Graphics từ pictureBox1 và làm trắng nền pictureBox1            Graphics g = pictureBox1.CreateGraphics();            g.Clear(Color.White);            Brush myBrush = Brushes.Blue;            Font myFont = new Font("Arial", Convert.ToSingle(numericUpDown1.Value), FontStyle.Bold);            textSize = g.MeasureString(txtShortText.Text, myFont);            myBrush = new HatchBrush(HatchStyle.DiagonalBrick, Color.Blue, Color.Red);            g.DrawString(txtShortText.Text, myFont, myBrush, (pictureBox1.Width - textSize.Width) / 2, (pictureBox1.Height - textSize.Height) / 2);        }
    OK, nhấn F5 đi nào, nhập chuỗi vào textbox, chọn Font Size, sau đó nhấn button Brush thử xem.

  2. #2
    txtShortText là cái nào vậy bạn? còn 2 cái lablel dùng để làm gì?

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi hoangphamspt
    txtShortText là cái nào vậy bạn? còn 2 cái lablel dùng để làm gì?
    txtShortText tức là txtBrushText đó bạn ạ
    thêm đoạn này nữa là chạy ổn [IMG]images/smilies/biggrin.png[/IMG]

    using System.Drawing.Drawing2D;
    Mã:
            private void btnBrushText_Click(object sender, EventArgs e)
            {
                SizeF textSize; // 1 biến kiểu SizeF thể hiện kích thước của Brush Text
                // tạo 1 đối tượng Graphics từ pictureBox1 và làm trắng nền pictureBox1
                Graphics g = pictureBox1.CreateGraphics();
                g.Clear(Color.White);
                Brush myBrush = Brushes.Blue;
                Font myFont = new Font("Arial", Convert.ToSingle(numericUpDown1.Value), FontStyle.Bold);
                textSize = g.MeasureString(txtBrushText.Text, myFont);
                myBrush = new HatchBrush(HatchStyle.DiagonalBrick, Color.Blue, Color.Red);
                g.DrawString(txtBrushText.Text, myFont, myBrush, (pictureBox1.Width - textSize.Width) / 2, (pictureBox1.Height - textSize.Height) / 2);
            }

  4. #4
    Trích dẫn Gửi bởi dream510
    txtShortText tức là txtBrushText đó bạn ạ
    thêm đoạn này nữa là chạy ổn [IMG]images/smilies/biggrin.png[/IMG]


    Mã:
            private void btnBrushText_Click(object sender, EventArgs e)
            {
                SizeF textSize; // 1 biến kiểu SizeF thể hiện kích thước của Brush Text
                // tạo 1 đối tượng Graphics từ pictureBox1 và làm trắng nền pictureBox1
                Graphics g = pictureBox1.CreateGraphics();
                g.Clear(Color.White);
                Brush myBrush = Brushes.Blue;
                Font myFont = new Font("Arial", Convert.ToSingle(numericUpDown1.Value), FontStyle.Bold);
                textSize = g.MeasureString(txtBrushText.Text, myFont);
                myBrush = new HatchBrush(HatchStyle.DiagonalBrick, Color.Blue, Color.Red);
                g.DrawString(txtBrushText.Text, myFont, myBrush, (pictureBox1.Width - textSize.Width) / 2, (pictureBox1.Height - textSize.Height) / 2);
            }
    Cái này là cái này

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •