Add alpha channel support to all color spaces

Introduces a first-class alpha (transparency) channel across every color space: Xyz, Lms, Rgb, LinearRgb, Hsl, Hsv, Hwb, Cmy, and Cmyk. The `ColorSpace` trait gains required `alpha()` and `set_alpha()` methods along with default implementations for opacity helpers, increment/decrement/scale variants, and alpha compositing via `flatten_alpha()` and `flatten_alpha_against()`. Alpha is preserved through all color space conversions, chromatic adaptation transforms, and arithmetic operations. Display formatting appends an opacity percentage when alpha is below 1.0. PartialEq now includes the alpha channel in comparisons. Adds `Rgb::BLACK` and `Rgb::WHITE` associated constants and dedicated `flatten_alpha` / `with_alpha_flattened` methods on `Rgb` for compositing against arbitrary backgrounds.


Author aaronmallen.dev
Date Commit Parent dea740f5 Change ID
+1030 -146
12 changed files
+1030 -146
12 changed files