Autor Zpráva
návštěvník
Profil *
Mohl byste mi někdo pomoci jak převést HSB (Používá např. Photoshop) na HSL?

Vzorec je úplně dole:
http://codeitdown.com/hsl-hsb-hsv-color/
ale jednak matematika mi nejde a taky v tom vzorci počítají HSB a já chci HSL. Ve Phototshopu je H(ue) ve stupních 0-360, S(aturatiaon) a B(rightness) je v procentech.
scheras
Profil *
Nejjednodušší je použít nějaký online nástroj.
návštěvník
Profil *
scheras:
Ale já myslím, že tam ten vzorec je:

http://oi61.tinypic.com/x56ssg.jpg


Zkusil jsem ale vychází mi záporné číslo:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  </head>
  <script>
  function HSB2HSL(Hhsb,Shsb,B){
  L = 0.5 * B * (2 - Shsb)
  Shsl = (Shsb*B)/(1-Math.abs(2*L-1) ) 
  return {H:Hhsb, S:Shsl, L:L }
  }  </script>
  <body onload="console.log(HSB2HSL(37, 5, 35))">
  </body>
</html>


vrací Object { H=37, S=-1.6666666666666667, L=-52.5}
1Pupik1989
Profil
Chtělo by to nejdříve dočíst.

B and S values should be in the range [0,1].

{H: 37, S: 0.02564102564102564, L: 0.34125}

function HSV2HSL(h,s,v){
  var l = (2 - s) * v;
  
  return {
    h:h,
    s:(s * v)/((l <= 1) ? l : 2 - l),
    l:l*0.5
  };
};
návštěvník
Profil *
jo to jsem už opravil. Jen jsem zapomněl aktualizovat kód


zde

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0