Releases: facelessuser/coloraide
Releases · facelessuser/coloraide
0.1.0a21
0.1.0a21
- NEW: Refactor CAT to allow for other CAT methods:
von-kries
,xyz-scaling
,cat02
,cmccat97
,cmccat2000
,
andsharp
. Currently,bradford
is the default and the overall preferred option. - FIX: Fix issues gamut mapping algorithm.
0.1.0a20
0.1.0a20
- FIX: Fix
lab-d65
which was not using the correct white point in all places.
0.1.0a19
0.10a19
- FIX: Ensure that subclassed
Color
objects are normalized when performing operations with more than one color to
prevent issues in case one subclassed object has overridden important functions. - FIX: Spaces like
lab
,lch
, etc., which specify certain channels as percent only should require thecolor()
format to only accept percentages for those channels and output those channels as percentages when converting to a
string.
0.1.0a18
0.10a18
- NEW: Refactor of internals.
- NEW:
interpolate
andsteps
can now accept multiple colors and will return an interpolation function that spans all
specified colors via the range of[0..1]
. - NEW: Better control over piecewise interpolation: setting stops, adjusting options per segment, etc.
- NEW:
compose
can now accept multiple colors and will return a result where all colors are layered on top of each
other. - NEW:
new
method does not need to be aclassmethod
. Make it a normal method on the instance. - NEW: Add Jzazbz and JzCzhz color spaces.
- NEW: Add D65 variants of CIELAB, CIELCH, and XYZ.
- NEW: Add ICtCp color space and Delta E ITP method.
- FIX: Actually make
mix
default tolab
likeinterpolate
and friends do.
0.1.0a17
0.1.0a17
- FIX: Ensure that both the Bradford CAT and the XYZ transformation matrix all use ASTM E308-01 white points. This fixes a number of conversion issues when going to and from D65 to D50 color spaces.
0.1.0a16
0.1.0a16
- NEW: Make
mix
use the same space logic asinterpolate
andstep
. Colors are mixed in CIELAB unlessspace
is set to a different color space. - NEW: Add support for blend modes as specified in [Compositing and Blending Level 1][compositing-level-1].
- NEW: Rename
overlay
tocompose
as all compositing (including blend modes) is done throughcompose
now.overlay
is still present and is deprecated and will be removed at some future point before a stable release.compose
will assumesRGB
space unless a different space is specified, butoverlay
will function as it always did. - FIX: Fix some small internal issues with
in_place
logic.
0.1.0a15
0.1.0a15
- NEW: The adjust parameter on
interpolate
,steps
, andmix
has been dropped. Instead, a general purpose method
has been added to theColor
object to mask one or more channels at a time. This can be used to create a temporary
color with masked channels for the purpose of interpolation. - FIX: Ensure that when
alpha
isNaN
that it is handled inoverlay
. - FIX: When using raw data in the
color()
function, and there is too little data, fill data withNaN
. - FIX: Fix issue where API
interpolate
method does not passout_space
parameter down. - FIX: Disabling or forcing alpha did not work properly for HSL colors via
to_string
. - FIX:
contrast
andluminance
should use XYZ with a D65 white point, not the default XYZ space which uses a D50
white point. - FIX: Fix bug in Delta E 2000 algorithm.
0.1.0a14
0.1.0a14
- NEW: sRGB string output parameter
hex_upper
has been renamed to justupper
. Expose it in documentation as well.
0.1.0a13
0.1.0a13
- FIX: More efficient calculation of CIELAB, following CIE 15.3:2004. Results are still the same, but it makes the math a little simpler.
- FIX: HSV did not always set hue to
NaN
when saturation was0
. - FIX: Give better conversion results by having HWB colors pass through HSV instead of sRGB.
- FIX: Fix slight issue with REC.2020 and ProPhoto color space conversion. Small issue when using
<=
when<
was desired.
0.1.0a12
0.1.0a12
- FIX: More stable saturation calculation for HSL to ensure divide by zero doesn't occur.
2(V - L) / (1 - abs(2 * L - 1))
is likely to yield zero in the denominator whenL
is very small, while the equivalent(V - L) / min(L, 1 - L)
is not.