Bot releases are hidden (Show)
Published by facelessuser over 3 years ago
lab-d65
which was not using the correct white point in all places.Published by facelessuser over 3 years ago
Color
objects are normalized when performing operations with more than one color tolab
, lch
, etc., which specify certain channels as percent only should require the color()
Published by facelessuser over 3 years ago
interpolate
and steps
can now accept multiple colors and will return an interpolation function that spans all[0..1]
.compose
can now accept multiple colors and will return a result where all colors are layered on top of eachnew
method does not need to be a classmethod
. Make it a normal method on the instance.mix
default to lab
like interpolate
and friends do.Published by facelessuser over 3 years ago
Published by facelessuser over 3 years ago
mix
use the same space logic as interpolate
and step
. Colors are mixed in CIELAB unless space
is set to a different color space.overlay
to compose
as all compositing (including blend modes) is done through compose
now.overlay
is still present and is deprecated and will be removed at some future point before a stable release. compose
will assume sRGB
space unless a different space is specified, but overlay
will function as it always did.in_place
logic.Published by facelessuser over 3 years ago
interpolate
, steps
, and mix
has been dropped. Instead, a general purpose methodColor
object to mask one or more channels at a time. This can be used to create a temporaryalpha
is NaN
that it is handled in overlay
.color()
function, and there is too little data, fill data with NaN
.interpolate
method does not pass out_space
parameter down.to_string
.contrast
and luminance
should use XYZ with a D65 white point, not the default XYZ space which uses a D50Published by facelessuser over 3 years ago
hex_upper
has been renamed to just upper
. Expose it in documentation as well.Published by facelessuser over 3 years ago
NaN
when saturation was 0
.<=
when <
was desired.Published by facelessuser over 3 years ago
2(V - L) / (1 - abs(2 * L - 1))
is likely to yield zero in the denominator when L
is very small, while the equivalent (V - L) / min(L, 1 - L)
is not.Published by facelessuser over 3 years ago
hex
, compress
, and names
is enabled in to_string
for srgb
that colors will still match the color name if the color can be compressed.Published by facelessuser over 3 years ago
1
or 0
.Published by facelessuser over 3 years ago
Published by facelessuser over 3 years ago
NaN
.Published by facelessuser over 3 years ago
Published by facelessuser over 3 years ago
steps
. Ensure they are wrapped with a Color
object on return.Published by facelessuser over 3 years ago
update
can fail due to a color space detached from a parent.in_gmaut
in relation toHSL
as saturation
can be wildly out of range for an sRGB
color that is only slightly out of gamut.in_gamut
handles NaN
properly.Published by facelessuser over 3 years ago
NaN
to track undefined hues.is_hue_null
and add new API function is_nan
to test if any channel is currently set to NaN
.get_default
from the Color
class and instead allow properties that can be overridden whenColor
object.Published by facelessuser over 3 years ago
premultiplied
argument.Published by facelessuser over 3 years ago
srgb-linear
color space. This is mainly for development and testing and not listed in docs currently.overlay
can now request to be overlaid in a different space. This is because alpha composition does not work well in cylindrical spaces. HSL, HSV, and HWB will now request overlay
to be done in sRGB, and LCH will request overlay to be done in LAB.premultiplied
option.Published by facelessuser over 3 years ago