v2.2.0 — ICC CMYK pipeline (Perceptual intent)
Minor release: an opt-in ICC-based CMYK color pipeline. Additive and back-compatible — the ICC CMYK path is off by default (PdfColorToRgb.UseIccForDeviceCmyk defaults false), so default-configured consumers render byte-identically to 2.1.0.
Added
- CMYK ICC color primitives — bidirectional
DeviceCmykConverter(CMYK↔sRGB) with a pluggableCmykProfileProvider, bundling an unencumbered CC0 default profile (SWOP_TR003_coated_3). Override viaCmykProfileProvider.OverrideProfileBytes(bytes > path > bundled). - ICC-accurate DeviceCMYK / Separation rendering behind
UseIccForDeviceCmyk, using the Perceptual rendering intent (matches how design apps display press CMYK — realistic black point + tone mapping, vs. RelativeColorimetric rendering darks too light).
Changed
DeviceCmykConverterbuilds its ICC transforms with Perceptual intent. Only affects opt-in consumers; the naive-formula default path is unchanged. Falls back to naive CMYK math if the ICC transform cannot be built.
Publishes Lxman.PdfLibrary and Lxman.PdfLibrary.Rendering.Wpf 2.2.0 to NuGet.