Skip to content

2.14

Compare
Choose a tag to compare
@facelessuser facelessuser released this 16 Dec 23:11
· 130 commits to main since this release

2.14

  • NEW: normalize() will now also normalize a cylindrical color model with negative chroma/saturation to its
    positive chroma/saturation form, assuming one exists.
  • NEW: Gamut clipping is performed on a cylindrical color's normalized form ensuring that a color which is in
    gamut but has a negative chroma/saturation will be mapped more correctly.
  • NEW: Do not clamp user input of lightness and chroma in various spaces. Clamping will only occur during
    conversion if the algorithm requires it.
  • NEW: Channels can be accessed by get and set using their numerical value (as a string input).
  • NEW: Color space plugins that specify the gamut space via GAMUT_CHECK must use that color space as a
    reference when when gamut mapping or clipping by default.
  • NEW: New color space plugin attribute CLIP_SPACE added which will override the space specified by
    GAMUT_CHECK to force clipping in the origin space even if a gamut mapping space is defined. This is only used when
    it is advantageous to clip in the origin space, e.g. when faster and still practical.
  • NEW: Deprecate non-standard CAM16 (Jab) space. People should use the standard CAM16 JMh or the CAM16 UCS, SCD,
    or LCD Jab spaces. The non-standard Jab is still available via coloraide.spaces.cam16.CAM16, but it is no longer
    available in coloraide.everything and will be removed at a future time.
  • NEW: Add new channel aliases: j for jz in Jzazbz and JzCzhz. Also add c for cz and h for hz in
    JzCzhz.
  • NEW: HSL will now always return positive saturation for wide gamut colors via its conversion.
  • FIX: Fix a an issue with the CAM16 model's transformation that prevented good round trip with negative
    lightness.
  • FIX: Ensure that when harmony auto creates a cylindrical space from a rectangular space that it checks
    achromatic status in the original color space.
  • FIX: ∆E HCT should use colorfulness, not chroma, in the calculation.
  • FIX: Don't return scientific notation when serializing colors.
  • FIX: Small fix for Rec. 2100 PQ conversion algorithm.
  • FIX: The oRGB color space should be gamut mapped in srgb as it is a transform of the sRGB space.
  • FIX: Because Okhsl and Okhsv have a rough sRGB approximation and not precise, they are instead gamut mapped to
    their own gamut by default.
  • FIX: Much more accurate ICtCp matrices.
  • FIX: Fix typing of deeply nested arrays in algebra.
  • FIX: Fix issue with HCT undefined channel resolver.
  • FIX: Proper handling of negative lightness for DIN99o.
  • FIX: Circular mean should return positive values.