Я намагаюся оцінити темряву кольору, обраного кольором, щоб побачити, чи він "занадто чорний", і якщо так, встановіть його на білий. Я подумав, що можу використати перші символи шістнадцяткового значення, щоб зняти це. Це працює, але він також перемикає деякі законно "світлі" кольори теж.
У мене є такий код:
if (lightcolor.substring(0,3) == "#00"|| lightcolor.substring(0,3) == "#010"){
lightcolor="#FFFFFF";
color=lightcolor;
}
Має бути більш ефективний спосіб з шестигранною математикою знати, що колір вийшов за межі певного рівня темряви? Як, наприклад, якщо lightcolor + "деяке значення шістнадцятки" <= "деяке шестигранне значення", то встановіть його на білий.
Я додав tinyColor, який може бути корисний для цього, але я не знаю точно.