Как я могу получить больше цветов для консоли node.js - PullRequest
0 голосов
/ 31 августа 2018

В этом ответе пользователи подробно описывают, как окрашивать текст в консоли при использовании node.js. Официальная документация даже размещена в комментарии к ответу.

К сожалению, это только показывает нам, как использовать 8 цветов для текста и те же 8 цветов для фона. В целом, поскольку любой текст будет невидимым на том же цвете фона, это означает, что мы можем использовать только 7 цветов, если не хотим часто менять фон.

FgBlack = "\x1b[30m"
FgRed = "\x1b[31m"
FgGreen = "\x1b[32m"
FgYellow = "\x1b[33m"
FgBlue = "\x1b[34m"
FgMagenta = "\x1b[35m"
FgCyan = "\x1b[36m"
FgWhite = "\x1b[37m"

То, что я ищу, это способ получить больше цветов для консоли. Может быть с внешним модулем или библиотекой, может быть официальным или нет и т. Д.

В частности, цвета Оранжевый, Фиолетовый, Розовый и Коричневый очень распространены, и я предполагаю, что есть какой-то способ их получить.

Конечно, идеальная ситуация - это какой-то способ предоставить RGB напрямую, поэтому я тоже могу создавать свои собственные оттенки цветов, но я приму любой ответ, предоставляющий доступ по крайней мере еще к 4 цветам, потому что мне нужно 11-12 минимум для того, что я делаю.

Как получить больше цветов для консоли в Node.Js?

1 Ответ

0 голосов
/ 06 сентября 2018

Вы можете использовать мел для этого:

Сначала убедитесь, что вы включили Truecolor для мела, чтобы вы могли использовать все цвета, которые вы хотите использовать:

const chalk = require("chalk"),
      ctx = new chalk.constructor({level: 3}); // 3 for Truecolor: https://github.com/chalk/chalk#chalklevel

После этого вы можете использовать расширенные цвета из CSS, такие как оранжевый, фиолетовый, розовый и коричневый:

console.log(ctx.keyword('orange')('Orange!'))
console.log(ctx.keyword('purple')('Purple!'))
console.log(ctx.keyword('pink')('Pink!'))
console.log(ctx.keyword('brown')('Brown ?'))

Запуск этого в консоли, которая также поддерживает Truecolor, приводит к этому:

enter image description here

Вы также можете указать строку RGB с помощью функции rgb():

console.log(ctx.rgb(255, 136, 0)('Orange!'))
...