- [C#] Hướng dẫn sử dụng temp mail service api trên winform
- [C#] Hướng dẫn tạo mã thanh toán VietQR Pay không sử dụng API trên winform
- [C#] Hướng Dẫn Tạo Windows Service Đơn Giản Bằng Topshelf
- [C#] Chia sẻ source code đọc dữ liệu từ Google Sheet trên winform
- [C#] Chia sẻ source code tạo mã QR MOMO đa năng Winform
- [C#] Chia sẻ source code phần mềm lên lịch tự động chạy ứng dụng Scheduler Task Winform
- [Phần mềm] Tải và cài đặt phần mềm Sublime Text 4180 full version
- [C#] Hướng dẫn download file từ Minio Server Winform
- [C#] Hướng dẫn đăng nhập zalo login sử dụng API v4 trên winform
- [SOFTWARE] Phần mềm gởi tin nhắn Zalo Marketing Pro giá rẻ mềm nhất thị trường
- [C#] Việt hóa Text Button trên MessageBox Dialog Winform
- [DEVEXPRESS] Chia sẻ code các tạo report in nhiều hóa đơn trên XtraReport C#
- [POWER AUTOMATE] Hướng dẫn gởi tin nhắn zalo từ file Excel - No code
- [C#] Chia sẻ code lock và unlock user trong domain Window
- [DEVEXPRESS] Vẽ Biểu Đồ Stock Chứng Khoán - Công Cụ Thiết Yếu Cho Nhà Đầu Tư trên Winform
- [C#] Hướng dẫn bảo mật ứng dụng 2FA (Multi-factor Authentication) trên Winform
- [C#] Hướng dẫn convert HTML code sang PDF File trên NetCore 7 Winform
- [C#] Hướng dẫn viết ứng dụng chat với Gemini AI Google Winform
- Hướng dẫn khóa file bằng nhiều process id, không cho xóa tập tin
- Hướng dẫn cách tạo Product Id cho ứng dụng phần mềm XXXXX-XXXXX-XXXXX-XXXXX
[C#] Cách tạo font, color random in RichtextBox
Bài viết hôm nay, mình tiếp tục chia sẽ cho các bạn source code cách tạo random font chữ, màu sắc vào RichTextBox C#.
Ở ứng dụng này, mình sẽ bắt sự kiện Text Change khi nhập text vào ô input, và mình sẽ lấy chữ vừa gõ thay đổi random font chữ và color (màu sắc).
Giao diện demo ứng dụng:
Source code C#:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace howto_ransom_note_rtf
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private string[] FontNames =
{
"Times New Roman",
"Courier New",
"Comic Sans MS",
"Arial",
"Tahoma",
"AvantGarde Md BT",
"Benguiat Bk BT",
"Bookman Old Style",
"Bremen Bd BT",
"Century Gothic",
"Dauphin",
"Curlz MT",
"GoudyHandtooled BT",
};
private Color[] FontColors =
{
Color.Red,
Color.Green,
Color.Blue,
Color.Orange,
Color.Brown,
Color.Magenta,
Color.Purple,
Color.BurlyWood,
Color.HotPink,
};
private Random Rand = new Random();
private void Form1_Load(object sender, EventArgs e)
{
DrawText();
}
private void txtText_TextChanged(object sender, EventArgs e)
{
DrawText();
}
private void DrawText()
{
rchText.Text = "";
foreach (char ch in txtText.Text)
{
DrawCharacter(ch);
}
}
private void DrawCharacter(char ch)
{
const float min_size = 25;
const float max_size = 35;
string font_name = FontNames[Rand.Next(0, FontNames.Length)];
float font_size = (float)(min_size + Rand.NextDouble() * (max_size - min_size));
FontStyle font_style = FontStyle.Regular;
if (Rand.Next(0, 2) == 1) font_style |= FontStyle.Bold;
if (Rand.Next(0, 2) == 1) font_style |= FontStyle.Italic;
rchText.SelectionFont = new Font(font_name, font_size, font_style);
rchText.SelectionColor = FontColors[Rand.Next(0, FontColors.Length)];
rchText.AppendText(ch.ToString());
}
}
}
HAVE FUN