[Quote]

    AZJIO
  • 17953
  • Longevity: 6 years 1 month
  • Posts: 1269
  • REPUTATION:126

    [+] [-]
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


Display posts:    

Current time is: 17-Apr 09:46

All times are UTC + 3


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum