#[non_exhaustive]pub enum AnnotationSubtype {
Link {
target: Option<AnnotationTarget>,
highlight: Option<LinkHighlight>,
},
Text {
open: bool,
icon: TextAnnotationIcon,
},
FreeText {
default_appearance: Option<String>,
quadding: Option<u32>,
},
Widget(WidgetAnnotation),
}Expand description
Per-subtype annotation payload. Each variant carries the keys
specific to that subtype; shared keys (rect, color, border, title,
contents, page) live on the parent AnnotationRecord.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Link
/Subtype /Link — clickable region. Target is an action,
explicit page+view, or a named destination; exactly one of the
three is expected.
Fields
target: Option<AnnotationTarget>highlight: Option<LinkHighlight>/H highlight mode: /N (none), /I (invert), /O
(outline), /P (push). Optional.
Text
/Subtype /Text — sticky-note annotation.
Fields
icon: TextAnnotationIcon/Name icon — /Comment, /Note (default), /Key, /Help,
/NewParagraph, /Paragraph, /Insert.
FreeText
/Subtype /FreeText — free-floating text annotation rendered
directly on the page.
Fields
Widget(WidgetAnnotation)
/Subtype /Widget — interactive form field. Author-only: stet
doesn’t render or run forms interactively, but it emits the
PDF AcroForm structure so downstream viewers (Acrobat, Okular,
pdf.js) can. The widget annotation and its leaf field dict are
merged into a single PDF object — common when a field has
exactly one widget — and the field-tree builder in
crates/stet-pdf/src/form_fields.rs handles the multi-widget
(radio group) and dotted-name parent cases.
Trait Implementations§
Source§impl Clone for AnnotationSubtype
impl Clone for AnnotationSubtype
Source§fn clone(&self) -> AnnotationSubtype
fn clone(&self) -> AnnotationSubtype
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more