ColorSpace
Colour-space resolution + sample-to-RGB conversion (ISO 32000-1 §8.6).
Supported families:
DeviceGray / DeviceRGB / DeviceCMYK (the device families)
Indexed (palette lookup; base is one of the device families)
ICCBased — falls back to DeviceRGB / DeviceCMYK / DeviceGray based on
/Ncomponent count (the ICC profile is not applied).CalGray, CalRGB, Lab — treated as their device equivalent (no gamma / whitepoint correction); good enough for visual approximation.
Not yet handled: DeviceN, Separation, Pattern. Those degrade to grey for stroke / fill operands.
Conversion always lands in RgbColor for the renderer; sRGB component values 0..1. Out-of-gamut colours are clamped, never thrown.
Inheritors
Types
Indexed colour space. Each sample is a single byte 0..hival that indexes into palette; the palette stores base.componentCount bytes per entry.
Fallback for spaces we don't fully model. Routes to grey.