An ICC colour profile read for conversion: its header, its computational model and the tags that model uses.
public sealed class IccProfile
ICC.1:2022 §7.2 (header, read by IccProfileHeader), §7.3 (tag table), §9.2 (the tags), §10.6, §10.18 and §10.31
(curveType, parametricCurveType and XYZType), §10.10 to §10.13 (lut16Type, lut8Type, lutAToBType and lutBToAType), §10.22
(s15Fixed16ArrayType, the chad tag) and Annex F.2 and F.3 (the monochrome and three-component matrix-based models).
Version 2 and version 4 profiles read alike.
The tags for a rendering intent are chosen by §8.10.2: the AToB (or BToA) tag of the intent (Table 25: AToB0 perceptual,
AToB1 media-relative and ICC-absolute colorimetric, AToB2 saturation), else AToB0, else the matrix/TRC or gray
TRC tags. The DToB and BToD tags of §8.10.2 a) (multiProcessElementsType) are not supported, so b) to d) apply.
Reading is lenient where the deviation does not matter to the conversion: tag table entries that point outside the data are
treated as missing tags, and a missing or unusable wtpt reads as the header's PCS illuminant. An AToB tag that cannot be
used (malformed, or with channel counts that do not match the header) is passed over for the next tag of the precedence order;
when that leaves a gray, RGB or CMYK profile with nothing to convert by, the profile is refused. An unusable BToA tag is treated
as missing.
kind:method, kind:property, kind:ctor. Press Esc to clear.ChromaticAdaptationGets the chromatic adaptation matrix (chad), nine values row by row, or null when the profile has no usable one.HeaderGets the profile header.MediaWhitePointGets the media white point (wtpt), or the header's PCS illuminant when the tag is missing or unusable.ModelGets the computational model the profile's tags describe.SrgbGets Broadside's own sRGB profile, the ICC engine's default RGB target.CreateSrgbProfileData()Returns the bytes of Srgb.TryConvertFromConnectionSpace(ReadOnlySpan<Single>, Span<Single>, RenderingIntent)Converts one colour in the profile connection space to the profile's device colour, through its BToA tags.TryConvertToConnectionSpace(ReadOnlySpan<Single>, Span<Single>, RenderingIntent)Converts one device colour to the profile connection space.TryParse(ReadOnlySpan<Byte>, out IccProfile?, out String?)Reads a profile.