DisplayAnnotation Struct

Definition

An annotation as a display list draws it: where it sits on the page, whether it keeps its size and orientation on screen, and how its appearance is composited with what is below it. A backend receives it in BeginAnnotation(in DisplayAnnotation); the appearance's paints follow, until EndAnnotation().

public readonly record struct DisplayAnnotation : IEquatable<DisplayAnnotation>

Remarks

ISO 32000-2 §12.5.5 (Algorithm "Appearance streams"): the paints between the two calls are the annotation's appearance stream, already placed on Rectangle in default user space (the matrix AA is their transform) and clipped to the appearance's bounding box.

§12.5.3, Table 167: NoZoom and NoRotate ask the backend to pivot the appearance about the upper-left corner of Rectangle (Figure 78) so that it keeps the size it has at a magnification of one device pixel per unit of default user space, and the upright orientation of the unrotated page, whatever the device transform's scale and rotation.

§12.5.5, last paragraphs, and §11.6.6: the appearance is a transparency group (non-isolated and non-knockout unless its Group says otherwise) composited with the page and earlier annotations using the annotation's ca (Opacity; §11.6.4.4: the nonstroking alpha constant applies to a group's result) and BM (BlendMode), with no soft mask. This follows that algorithm over §12.5.2 Table 166's note that CA, ca and BM are not used when an appearance stream exists (owner decision 4 of the Phase 3 plan).

Tip: use kind:method, kind:property, kind:ctor. Press Esc to clear.

Properties (9)