Không gian RGB: Không gian RGB dùng 3 màu cơ bản đỏ (Red), xanh lá cây (Green), xanh dương (Blue) để tạo nên các màu khác. Trong không gian này, màu sắc được tạo ra bằng cách tổng hợp ba màu trên, trong đó, mỗi thành phần màu mang một giá trị, giá trị này cho biết cường độ thành phần màu đó tham gia vào màu tổng hợp. Miền giá trị của mỗi màu cơ bản là từ 0 đến 255. Như vậy, trong không gian RGB, ta có thể tạo ra 2563 màu (hơn 16 triệu màu). Không gian RGB được minh họa bằng hệ trục tọa độ 3 chiều với các trục là R, G, B.
Nguyên tắc tạo hiệu ứng chuyển màu: Giả sử bạn muốn tạo hiệu ứng chuyển màu từ màu C1 (R1, G1, B1) sang màu C2 (R2, G2, B2). Trong hệ tọa độ màu, bạn nối hai điểm màu này sẽ được một đoạn thẳng (chính là tập hợp các điểm màu). Trải đều các điểm màu này lên một chiều dài là bạn đã tạo ra hiệu ứng chuyển màu từ màu C1 (R1, G1, B1) sang màu C2 (R2, G2, B2) trên chiều dài đó. Mỗi điểm màu cấu tạo bởi 3 thành phần R, G, B nên chia đều các điểm màu cũng chính là chia đều từng thành phần R, G, B. Cách thực hiện như thế nào? Ta chia chiều dài cần tô màu thành n khoảng, mỗi khoảng được tô bởi một màu. Khoảng thứ nhất được tô bằng màu C1 (R1, G1, B1), khoảng thứ n được tô bằng màu C2 (R2, G2, B2). Thành phần R thay đổi từ R1 đến R2 sẽ phải chia đều cho n khoảng, do vậy hai khoảng kế nhau có thành phần R chênh lệch nhau (R2-R1)/n. Tương tự, thành phần G và B ở hai khoảng kế nhau sẽ chênh lệch nhau (G2-G1)/n và (B2-B1)/n.
Lần lượt tô từng khoảng với màu sắc thay đổi theo nguyên tắc trên sẽ tạo ra hiệu ứng chuyển màu trên chiều dài cần tô màu. Hiệu ứng chuyển màu trên Form: Ta sẽ viết chương trình tô chuyển màu Form theo chiều ngang từ màu (R1,G1,B1) sang màu (R2,G2,B2). Bạn tạo một Project mới thuộc loại Standard EXE. Các thuộc tính của Form1:
Ta cho một khoảng ở đây là đoạn thẳng độ lớn 1 pixel, do vậy số khoảng cũng là chiều dài của Form. Để tô màu cho một khoảng, ta dùng phương thức Line của Form (vẽ đường thằng). Phần mã chương trình:
Bạn có thể áp dụng tương tự để tô chuyển màu một PictureBox, hoặc tô chuyển màu theo chiều dọc. Viết chữ chuyển màu: Chương trình sẽ viết ra trên Form dòng chữ chuyển từ màu (R1, G1, B1) sang màu (R2, G2, B2) (bạn có thể áp dụng tương tự để viết chữ chuyển màu trên một PicturexBox).
Ta cho một khoảng là từng ký tự của dòng chữ, do vậy số khoảng cũng là số ký tự của dòng chữ. Từng khoảng (từng ký tự) sẽ được viết với các màu khác nhau. Bạn tạo một Project mới thuộc loại Standard EXE. Thuộc tính AutoRedraw của Form1 là True. Phần mã chương trình:
Kết quả rất ấn tượng, nhưng cách làm lại rất đơn giản! Chúc bạn thành công! |
0 nhận xét:
Đăng nhận xét