Я использую jquery colors , чтобы преобразовать цвет из шестнадцатеричного в hsl, изменить его оттенок, добавив к нему число от 0 до 360, а затем выполнить мод 360, чтобы получить новое значение оттенка, котороеЯ действительно заинтересован в получении
Проблема в том, что я не могу понять, как правильно преобразовать его обратно в RGB
Учитывая следующий пример (вы можете протестировать его на jsfiddle здесь), почему hslAfter
имеет значение, отличное от hsl
?
Из того, что я вижу, я просто преобразовываю originalColor
, который находится в HEX, в массив значений HSLзатем, пытаясь сделать из него строку, в hslAfter
.
function testHue() {
var originalColor = $.colors($("#originalColor").val());
var hsl = $.colors(originalColor).model('HSL').get();
var hslAfter = $.colors(hsl).toString('hsl');
var hex = $.colors(hsl).toString('hex');
}
не должны ли hslAfter
иметь те же значения, что и hsl
?(Я даже не упоминаю новое шестнадцатеричное значение здесь, которое, в свою очередь, должно совпадать с исходным шестнадцатеричным цветом)
Я что-то здесь упускаю (в любом случае, чтобы это исправить)?