Changes for version 2.20 - 2026-06-20
- = big feature release: +3 spaces, +8 methods, +7 args, new docs, error handling
- * add methods lighten / darken, saturate / desaturate,
- * add methods tint (white) / shade (black) / tone (grey)
- * new 16 Page doc in GTC::Manual with Reference, Topics, CookBook, CheatSheet
- + spaces: 'OKHSL', 'OKHSV', 'OKHWB'
- + color space property: 'family', 'role'
- + method 'analogous' with args: 'to', 'in', 'steps' and 'tilt'
- + method alias 'tone_curve' for 'apply'
- + argument 'in' to method 'complement' (selectable cylindrical space)
- + argument 'in' to method 'new' disambiguate color spaces
- + argument 'skew' to method 'complement' (move circle along color-target axis)
- + argument 'by' as alias of 'amount' argument for 'mix'
- + reestablish optional Carp error messages + 4 other modes
- + format: 'nested_array'
- ~ change default color space for most methods to 'OKLAB' or 'OKHSL'
- ~ change name and name alias in 'YUV' space now 'YPbPr' space
- ~ change default argument of 'invert' from 'in' to 'only'
- ~ rename method 'apply' to 'tone_curve', keeping 'apply' as alias til 3.0
- ~ amount argument has now 0 .. 1 range, instead of 0 .. 100
- ~ reduce arguments of the 'color' routine to work like the 'color' argument of 'new'
- - reduce arguments of 'is_in_gamut' to 1 ('in') in method mode and 1 as routine ('color')
- ! HSB constraints removal was mistake, constraint was reestablished
Documentation
GTC documentation hub
shape, content and meaning of recurring method arguments
reference of single color calculation methods
GTC keywords at a glance
GTC object creation reference
examples that solve practical issues
deprecated API parts
GTC error handling
shapes of acceptable color definitions
reference of value access or value calculating methods
GTC color name handling
GTC design principles
how to extend GTC
reference of color set creation methods
details about supported color spaces
Modules
calculate color (sets), IO many spaces and formats
store of color constants
Provides
in lib/Graphics/Toolkit/Color/Calculator.pm
in lib/Graphics/Toolkit/Color/Error.pm
in lib/Graphics/Toolkit/Color/Name.pm
in lib/Graphics/Toolkit/Color/Name/Scheme.pm
in lib/Graphics/Toolkit/Color/SetCalculator.pm
in lib/Graphics/Toolkit/Color/Space.pm
in lib/Graphics/Toolkit/Color/Space/Basis.pm
in lib/Graphics/Toolkit/Color/Space/Format.pm
in lib/Graphics/Toolkit/Color/Space/Hub.pm
in lib/Graphics/Toolkit/Color/Space/Instance/AdobeRGB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/AppleRGB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CIELAB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CIELCHab.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CIELCHuv.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CIELUV.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CIERGB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CIEXYZ.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CMY.pm
in lib/Graphics/Toolkit/Color/Space/Instance/CMYK.pm
in lib/Graphics/Toolkit/Color/Space/Instance/DCIP3.pm
in lib/Graphics/Toolkit/Color/Space/Instance/DCIP3Linear.pm
in lib/Graphics/Toolkit/Color/Space/Instance/DisplayP3.pm
in lib/Graphics/Toolkit/Color/Space/Instance/DisplayP3Linear.pm
in lib/Graphics/Toolkit/Color/Space/Instance/HSB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/HSL.pm
in lib/Graphics/Toolkit/Color/Space/Instance/HSV.pm
in lib/Graphics/Toolkit/Color/Space/Instance/HWB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/Helper/OK.pm
in lib/Graphics/Toolkit/Color/Space/Instance/HunterLAB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/NCol.pm
in lib/Graphics/Toolkit/Color/Space/Instance/OKHSL.pm
in lib/Graphics/Toolkit/Color/Space/Instance/OKHSV.pm
in lib/Graphics/Toolkit/Color/Space/Instance/OKHWB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/OKLAB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/OKLCH.pm
in lib/Graphics/Toolkit/Color/Space/Instance/ProPhotoRGB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/RGB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/RGBLinear.pm
in lib/Graphics/Toolkit/Color/Space/Instance/Rec2020.pm
in lib/Graphics/Toolkit/Color/Space/Instance/Rec709.pm
in lib/Graphics/Toolkit/Color/Space/Instance/WideGamutRGB.pm
in lib/Graphics/Toolkit/Color/Space/Instance/YIQ.pm
in lib/Graphics/Toolkit/Color/Space/Instance/YPbPr.pm
in lib/Graphics/Toolkit/Color/Space/Shape.pm
in lib/Graphics/Toolkit/Color/Space/Util.pm
in lib/Graphics/Toolkit/Color/Values.pm