Văn bản màu python rgb

Trong bài viết này, chúng ta sẽ học cách in văn bản có màu trong Python. Chúng tôi sẽ sử dụng một số mô-đun và thư viện tích hợp cũng như một số mã tùy chỉnh. Trước tiên chúng ta hãy xem nhanh cách Python đại diện cho mã màu

Trong ngôn ngữ lập trình Python, văn bản có thể được thể hiện bằng các màu khác nhau. Có các thư viện Python rất đơn giản để sử dụng cho màu sắc và định dạng trong thiết bị đầu cuối. Lập trình viên nhận được phản hồi tốt hơn bằng cách in văn bản màu

Hãy xem một số ví dụ hữu ích để tô màu văn bản trong Python

In văn bản màu bằng Mô-đun colorama

Chúng ta có thể sử dụng mô-đun colorama tích hợp sẵn của Python để in văn bản đầy màu sắc. Nó là một mô-đun in đa nền tảng. Trong phần này, văn bản màu có thể được thực hiện bằng cách sử dụng tốc ký hằng số Colorama’s cho chuỗi thoát ANSI. Chỉ cần nhập từ mô-đun coloroma và nhận đầu ra mong muốn của bạn

import colorama
from colorama import Fore

print[Fore.RED + 'This text is red in color']


Văn bản này có màu đỏ

In văn bản màu bằng mô-đun termcolor

Chúng ta có thể sử dụng mô-đun termcolor tích hợp để in màu văn bản trong Python. Thuật ngữ màu là một mô-đun python để định dạng Màu ANSII cho đầu ra trong thiết bị đầu cuối. Đối với điều này, mô-đun sys phải được nhập trước và sau đó được tô màu từ mô-đun termcolor như bên dưới

import sys
from termcolor import colored, cprint
text = colored['Hello, World!', 'red', attrs=['reverse', 'blink']]
print[text]


Chào thế giới

In văn bản màu bằng mã ANSI trong Python

Chúng tôi có thể sử dụng kiểu mã ANSI để làm cho văn bản của bạn dễ đọc và sáng tạo hơn, bạn có thể sử dụng mã thoát ANSI để thay đổi màu của đầu ra văn bản trong chương trình python. Một trường hợp sử dụng tốt cho việc này là làm nổi bật các lỗi. Các mã thoát được nhập ngay vào câu lệnh in

print["\033[1;32m This text is Bright Green  \n"]


Văn bản này có màu xanh sáng

Mã thoát ANSI ở trên sẽ đặt màu văn bản thành màu xanh lá cây tươi sáng. Định dạng là;

  • \033[ = Mã thoát, mã này luôn giống nhau
  • 1 = Phong cách, 1 cho bình thường
  • 32 = Màu văn bản, 32 cho màu xanh lục sáng

In văn bản màu bằng mô-đun màu

Chúng ta có thể sử dụng mô-đun color và các chức năng của nó để tô màu văn bản trong Python. Nó là một thư viện có thể được sử dụng sau khi cài đặt bằng cách sử dụng lệnh pip. Vì vậy, trước tiên, hãy cài đặt nó và sau đó nhập nó vào tập lệnh python của bạn để làm nổi bật màu văn bản

from colored import fg
print ['%s Hello World !!! %s' % [fg[1], attr[0]]]


Chào thế giới

ví dụ 2

Chúng ta cũng có thể chuyển tên của màu vào hàm fg[]. Thấy chưa, nó in văn bản có màu xanh lam khi chúng tôi chuyển màu xanh lam làm giá trị

from colored import fg
color = fg['blue']
print [color + 'Hello World !!!']


Chào thế giới

Đây là những cách khác nhau để bạn có thể in văn bản của mình bằng các màu khác nhau. Bạn cũng có thể thêm các kiểu khác nhau vào văn bản của mình, các màu nền khác nhau cho văn bản của bạn

Phần kết luận

Trong bài viết này, chúng ta đã học cách tô màu văn bản và in nền màu bằng cách sử dụng một số chức năng tích hợp như mô-đun coloroma, mô-đun

import sys
from termcolor import colored, cprint
text = colored['Hello, World!', 'red', attrs=['reverse', 'blink']]
print[text]
0,
import sys
from termcolor import colored, cprint
text = colored['Hello, World!', 'red', attrs=['reverse', 'blink']]
print[text]
1, v.v. Chúng tôi cũng đã sử dụng một số mã tùy chỉnh. Ví dụ: chúng tôi đã sử dụng các màu và văn bản khác nhau để đánh dấu và in văn bản có màu

Trong chương về vẽ hình, chúng ta chỉ sử dụng các kiểu tô và đường mặc định. Ở đây chúng ta sẽ khám phá các tùy chọn canvas mà chúng ta có để làm cho bản vẽ của chúng ta hấp dẫn hơn một chút. Bạn sẽ học cách thêm các màu khác nhau, kiểu đường kẻ, độ dốc, hoa văn và bóng đổ vào bản vẽ của mình

Ghi chú. Trình đọc màn hình không thể truy cập nội dung canvas. Nếu canvas hoàn toàn là trang trí, hãy bao gồm

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
0. Nếu không, hãy bao gồm văn bản mô tả dưới dạng giá trị của thuộc tính

1 trực tiếp trên chính phần tử canvas hoặc bao gồm nội dung dự phòng được đặt trong thẻ canvas mở và đóng. Nội dung canvas không phải là một phần của DOM, nhưng nội dung dự phòng lồng nhau là

Cho đến bây giờ chúng ta mới chỉ thấy các phương pháp của ngữ cảnh vẽ. Nếu chúng ta muốn áp dụng màu sắc cho một hình dạng, có hai thuộc tính quan trọng mà chúng ta có thể sử dụng.


2 và

3


4

Đặt kiểu được sử dụng khi tô hình


5

Đặt kiểu cho các đường viền của hình dạng


6 là một chuỗi đại diện cho CSS

7, đối tượng gradient hoặc đối tượng mẫu. Chúng ta sẽ xem xét các đối tượng gradient và pattern sau. Theo mặc định, nét viền và màu tô được đặt thành màu đen [giá trị màu CSS

8]

Ghi chú. Khi bạn đặt thuộc tính


3 và/hoặc

2, giá trị mới sẽ trở thành giá trị mặc định cho tất cả các hình dạng được vẽ từ đó trở đi. Đối với mọi hình dạng bạn muốn có màu khác nhau, bạn sẽ cần chỉ định lại thuộc tính

2 hoặc

3

Các chuỗi hợp lệ mà bạn có thể nhập phải, theo thông số kỹ thuật, là các giá trị CSS


7. Mỗi ví dụ sau mô tả cùng một màu

// these all set the fillStyle to 'orange'

ctx.fillStyle = "orange";
ctx.fillStyle = "#FFA500";
ctx.fillStyle = "rgb[255, 165, 0]";
ctx.fillStyle = "rgba[255, 165, 0, 1]";

Trong ví dụ này, một lần nữa chúng ta sử dụng hai vòng lặp

draw[];
5 để vẽ một lưới các hình chữ nhật, mỗi hình có một màu khác nhau. Hình ảnh kết quả sẽ trông giống như ảnh chụp màn hình. Không có gì quá ngoạn mục xảy ra ở đây. Chúng tôi sử dụng hai biến
draw[];
6 và
draw[];
7 để tạo màu RGB duy nhất cho mỗi hình vuông và chỉ sửa đổi các giá trị màu đỏ và xanh lục. Kênh màu xanh có giá trị cố định. Bằng cách sửa đổi các kênh, bạn có thể tạo tất cả các loại bảng màu. Bằng cách tăng các bước, bạn có thể đạt được thứ gì đó trông giống như bảng màu mà Photoshop sử dụng

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i A 6 by 6 square grid displaying 36 different colors

draw[];

Kết quả trông như thế này

Ảnh chụp màn hìnhMẫu trực tiếp

Ví dụ này tương tự như ví dụ trên, nhưng sử dụng thuộc tính


3 để thay đổi màu sắc của đường viền của hình dạng. Chúng tôi sử dụng phương pháp
// Assigning transparent colors to stroke and fill style

ctx.strokeStyle = "rgba[255, 0, 0, 0.5]";
ctx.fillStyle = "rgba[255, 0, 0, 0.5]";
0 để vẽ hình tròn thay vì hình vuông

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
3 và

2 chấp nhận các giá trị màu CSS rgba, nên chúng ta có thể sử dụng ký hiệu sau để gán màu trong suốt cho chúng

// Assigning transparent colors to stroke and fill style

ctx.strokeStyle = "rgba[255, 0, 0, 0.5]";
ctx.fillStyle = "rgba[255, 0, 0, 0.5]";

Hàm

// Assigning transparent colors to stroke and fill style

ctx.strokeStyle = "rgba[255, 0, 0, 0.5]";
ctx.fillStyle = "rgba[255, 0, 0, 0.5]";
6 tương tự như hàm
// Assigning transparent colors to stroke and fill style

ctx.strokeStyle = "rgba[255, 0, 0, 0.5]";
ctx.fillStyle = "rgba[255, 0, 0, 0.5]";
7 nhưng nó có thêm một tham số. Tham số cuối cùng đặt giá trị độ trong suốt của màu cụ thể này. Phạm vi hợp lệ lại nằm trong khoảng từ 0. 0 [hoàn toàn trong suốt] và 1. 0 [đục hoàn toàn]

Trong ví dụ này, chúng ta sẽ vẽ nền gồm bốn hình vuông có màu khác nhau. Trên hết, chúng ta sẽ vẽ một tập hợp các vòng tròn bán trong suốt. Thuộc tính

// Assigning transparent colors to stroke and fill style

ctx.strokeStyle = "rgba[255, 0, 0, 0.5]";
ctx.fillStyle = "rgba[255, 0, 0, 0.5]";
1 được đặt tại
function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  // draw background
  ctx.fillStyle = "#FD0";
  ctx.fillRect[0, 0, 75, 75];
  ctx.fillStyle = "#6C0";
  ctx.fillRect[75, 0, 75, 75];
  ctx.fillStyle = "#09F";
  ctx.fillRect[0, 75, 75, 75];
  ctx.fillStyle = "#F30";
  ctx.fillRect[75, 75, 75, 75];
  ctx.fillStyle = "#FFF";

  // set transparency value
  ctx.globalAlpha = 0.2;

  // Draw semi transparent circles
  for [let i = 0; i 
2, bạn sẽ có tình huống trong hình ảnh thứ hai. Khu vực thực tế được lấp đầy [màu xanh đậm] chỉ kéo dài một nửa thành các pixel ở hai bên của đường dẫn. Một giá trị gần đúng của điều này phải được hiển thị, có nghĩa là những pixel đó chỉ được tô bóng một phần và dẫn đến toàn bộ khu vực [màu xanh lam nhạt và xanh lam đậm] được tô bằng màu chỉ tối bằng một nửa so với màu nét vẽ thực tế. Đây là những gì xảy ra với dòng chiều rộng

2 trong mã ví dụ trước

Để khắc phục điều này, bạn phải rất chính xác trong việc tạo đường dẫn của mình. Biết rằng một đường có chiều rộng


2 sẽ kéo dài nửa đơn vị sang hai bên của đường đi, tạo ra đường đi từ [3. 5,1] đến [3. 5,5] dẫn đến tình huống trong ảnh thứ ba—chiều rộng của dòng

2 kết thúc hoàn toàn và lấp đầy chính xác một đường dọc pixel đơn lẻ

Ghi chú. Xin lưu ý rằng trong ví dụ về đường thẳng đứng của chúng ta, vị trí Y vẫn tham chiếu đến một vị trí đường lưới số nguyên—nếu không, chúng ta sẽ thấy các pixel có độ bao phủ một nửa ở các điểm cuối [nhưng cũng lưu ý rằng hành vi này phụ thuộc vào kiểu


6 hiện tại có kiểu mặc định

Cũng lưu ý rằng chỉ điểm đầu và điểm cuối của đường dẫn mới bị ảnh hưởng. nếu một đường dẫn bị đóng với

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
6 xác định cách các điểm cuối của mỗi dòng được vẽ. Có ba giá trị có thể có cho thuộc tính này và đó là.

7,
function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
9. Theo mặc định, thuộc tính này được đặt thành

7


7

Các đầu của dòng được bình phương tại các điểm cuối

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
9

Các đầu của dòng được bình phương bằng cách thêm một hộp có chiều rộng bằng một nửa chiều cao của độ dày của dòng

Trong ví dụ này, chúng ta sẽ vẽ ba dòng, mỗi dòng có một giá trị khác nhau cho thuộc tính


6. Tôi cũng đã thêm hai hướng dẫn để xem sự khác biệt chính xác giữa ba. Mỗi dòng này bắt đầu và kết thúc chính xác trên các hướng dẫn này

Dòng bên trái sử dụng tùy chọn


7 mặc định. Bạn sẽ nhận thấy rằng nó được vẽ hoàn toàn phẳng với các hướng dẫn. Thứ hai được đặt để sử dụng tùy chọn
function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
9. Điều này thêm một hộp có chiều rộng bằng và một nửa chiều cao của độ dày đường

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i A 6 by 6 square grid displaying 36 different colors
5

Ảnh chụp màn hìnhMẫu trực tiếp

Phương thức

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i A 6 by 6 square grid displaying 36 different colors
7

Ảnh chụp màn hìnhMẫu trực tiếp

Giống như bất kỳ chương trình vẽ thông thường nào, chúng ta có thể tô và vẽ các hình dạng bằng cách sử dụng các gradient tuyến tính, xuyên tâm và hình nón. Chúng tôi tạo một đối tượng

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
2 hoặc

3

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i 
2 đều có thể chấp nhận đối tượng
function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i A 6 by 6 square grid displaying 36 different colors
03 và
A 6 by 6 square grid displaying 36 different colors
04 cho biết bóng sẽ kéo dài bao xa từ đối tượng theo hướng X và Y; . Sử dụng các giá trị âm để làm cho bóng mở rộng lên hoặc sang trái và các giá trị dương để làm cho bóng kéo dài xuống hoặc sang phải. Cả hai đều là 0 theo mặc định

Thuộc tính

A 6 by 6 square grid displaying 36 different colors
05 cho biết kích thước của hiệu ứng làm mờ; . Giá trị mặc định là 0

Thuộc tính

A 6 by 6 square grid displaying 36 different colors
06 là một giá trị màu CSS tiêu chuẩn cho biết màu của hiệu ứng đổ bóng;

Ghi chú. Bóng chỉ được vẽ cho các hoạt động tổng hợp

A 6 by 6 square grid displaying 36 different colors
07

Ví dụ này vẽ một chuỗi văn bản có hiệu ứng đổ bóng

function draw[] {
  const ctx = document.getElementById["canvas"].getContext["2d"];
  for [let i = 0; i A 6 by 6 square grid displaying 36 different colors
08 và phương thức
A 6 by 6 square grid displaying 36 different colors
09 trong chương tiếp theo về vẽ văn bản.

Khi sử dụng

A 6 by 6 square grid displaying 36 different colors
10 [hoặc
A 6 by 6 square grid displaying 36 different colors
11 và
A 6 by 6 square grid displaying 36 different colors
12], bạn có thể tùy chọn cung cấp thuật toán quy tắc lấp đầy để xác định xem một điểm nằm trong hay ngoài một đường dẫn và do đó liệu nó có được lấp đầy hay không. Điều này hữu ích khi một đường dẫn cắt chính nó hoặc được lồng vào nhau

Chủ Đề