#python #terminal #ascii-art #asciimatics
#python #терминал #ascii-art #asciimatics
Вопрос:
Я понимаю, что невозможно указать asciimatics использовать текущую цветовую схему терминала (поскольку asciimatics
нет возможности запрашивать терминал). Но я хотел бы, по крайней мере, иметь некоторый контроль и иметь возможность самостоятельно выбирать цветовую схему.
Я нигде не могу найти в документации, как изменить цвет переднего плана / фона по умолчанию.
Я использую стандартную демонстрацию:
from asciimatics.screen import Screen
from asciimatics.scene import Scene
from asciimatics.effects import Cycle, Stars
from asciimatics.renderers import FigletText
def demo(screen):
effects = [
Cycle(
screen,
FigletText("ASCIIMATICS", font='big'),
screen.height // 2 - 8),
Cycle(
screen,
FigletText("ROCKS!", font='big'),
screen.height // 2 3),
Stars(screen, (screen.width screen.height) // 2)
]
screen.play([Scene(effects, 500)])
Screen.wrapper(demo)
Я хочу, чтобы фон был желтым. Не фон текстовых элементов, а весь фон ( Screen
я бы сказал, фон)
Как мне это сделать?
Ответ №1:
Короткий ответ на ваш вопрос — добавить Background
эффект к вашему Scene
. Как описано здесь, вы можете установить любой цвет фона.
Однако некоторые эффекты старше других и предшествуют поддержке цвета backvround. К сожалению, Cycle
и Stars
находятся в этом списке и поэтому не имеют эквивалентной bg
настройки, поэтому потребуется обновление, чтобы работать должным образом с этим изменением. Я подозреваю, что их также необходимо будет настроить, чтобы ожидать полного обновления, которое будет выполняться фоном. Зайдите на канал asciimatics gitter, если вам нужно, чтобы это работало.