AZJIO
- Стаж: 6 лет 8 месяцев
- Сообщений: 1322
- Репутация:127[+] [-]
|
color_converter Утилита для преобразования цвета Скачать yandex.ruОписание ini-файла[process] invert=1 - инвертирует цвет, то есть 255-цвет=новый, вычитает цвет от 255 получая новое значение. bgr=0 - меняет красный на синий и наоборот. То есть RGB становится BGR и наоборот, или 445566 становится 665544 hsb_h_shift=180 - выполняет сдвиг тона цвета, например краный может стать зелёным или желтым или розовым, полный круг 360, а 180 тоже что инвертировать, но без изменения яркости и цветности. hsb_s=36 - Насыщенность. Если преобразуется в чёрную тему, то насыщенность цвета лучше убавить до 36-50, если в белую то лучше 80 hsb_b=100 - Яркость. Здесь 0 делает цвет чёрным, а 100 максимально ярким. Уменьшение яркости также делает цвет менее насыщенным, менее цветным, сероватым. hsb_h_g_shift=90 - сдвиг тона для серого цвета, имеет значение если следующий параметр отличается от нуля hsb_s_g=0 - оставляет серые цвета серыми, иначе если не 0, то придаёт им начальный цвет, начиная от красного если нет сдвига тона. Позволяет серые цвета (808080, 404040 и т.д.) по умолчанию сделать иными. background=FFFFFF - принудительно задать фон (поиск bgColor="цвет", используется в Notepad++) regexp=(?<=fgColor=")[\da-z]{6}(?=") - регулярное выражение для поиска цвета, если конфиг имеет иные префиксы в отличии от конфига Notepad++ [set] font=Arial - задаёт шрифт, чтобы каждый раз не изменять его вручную (поиск fontName="шрифт", используется в Notepad++).ОписаниеС помощью регулярного выражения утилита захватывает все цвета в файле, далее преобразует их по заданным параметрам указанным в ini-файл и делает поиск и замену на новые цвета. Это позволяет преобразовать белую тему в чёрную и наоборот. Инвертирование и сдвиг на 180 градусов это тоже что преобразовать яркость, то есть в чёрной теме яркие цвета текста текста, а в белой тёмные. То есть задача из ярко-красного сделать тёмно-красный и наоборот и так для всех цветов. Например 20% яркости нужно для белой темы, а для чёрной наоборот 80% яркости. Возьмём 20% красного текущим в белой теме и преобразуем в 80% для чёрной. Когда мы делаем вычитание цвета 100 - 20% = 80, это делается при инвертировании для каждого цвета, но цвет из красного превращается в яркий, но синий, но делаем цветовой сдвиг тона и снова возвращается к красному, но уже яркому - 80%. Также можно попробовать следующий метод: экспортировать код в HTML, открыть в браузере и применить плагин "Dark Reader". Полученные цвета использовать в качестве замены.ПланПлан на отдалённое будущее 1. Можно было бы для некоторых стандартных цветов задать жёсткие инвертированные аналоги цвета. То есть не вычислять а заменять идеальным решением, так как вычисление не всегда является корректным, потому что в чёрных цветах разница менее заметна чем в белых, то есть числовое не является линейным по сравнению с чувствительностью глаза, то есть условно между 10 и 20 почти не будет разницы, а между 220 и 230 будет более заметная разница, поэтому числовое преобразование не всегда идеальное. Или цвет в неком диапазоне приравнять к жёстко заданному 2. Сделать экспорт всех найденных цветов в html и их преобразованные значение, чтобы пользователь визуально оценил все цвета и подкорректировал, так как подсветка текущего кода не отображает все цвета, а только для текущего языка программирования. Без этого можно столкнуться, что цвет плохо виден в текущей теме для других языков. 3. Задать диапазон серых цветов, например если после преобразования текст едва виден, то нижняя граница, например 606060 для черного была бы нижней границей яркости, а для белого например верхняя граница 999999
|