AddCaretAnnotation
Annotations and hotspot links
Описание
Adds a caret markup annotation (PDF /Subtype /Caret) to the selected page. A caret annotation is a visual symbol that conventionally marks a position in the page where text or content has been inserted, omitted, or otherwise needs reviewer attention. Two symbol shapes are available: a plain caret (None) or a paragraph mark (Paragraph). Color components and opacity are expressed on a 0–1 scale; Transparency is given on a 0–100 scale (0 = fully opaque, 100 = fully transparent). The library bumps the document version to PDF 1.5 when a Caret annotation is emitted under a lower minimum-version lock. Defined in ISO 32000-1 §12.5.6.11.
Синтаксис
Delphi
Function TPDFlib.AddCaretAnnotation(Left, Top, Width, Height: Double; SymbolType: Integer; ColorRed, ColorGreen, ColorBlue: Double; Const Title, Contents: WideString; Transparency: Integer): Integer;
Параметры
Left — горизонтальная координата левого нижнего угла прямоугольника аннотации в текущих единицах
Top — вертикальная координата левого нижнего угла прямоугольника аннотации в текущих единицах
Width — ширина прямоугольника аннотации
Height — высота прямоугольника аннотации
SymbolType — Caret symbol style:
0 = None (plain caret "^")
1 = Paragraph (pilcrow "¶")
Any other value is treated as 0 (None).
ColorRed, ColorGreen, ColorBlue — RGB-составляющие (0–1) цвета каретки, записываемые в /C
Title — имя автора, записываемое в запись /T аннотации; пустая строка пропускает параметр
Contents — текст всплывающей подсказки, связанной с аннотацией; пустая строка пропускает параметр
Transparency — прозрачность в процентах (0–100). Библиотека пересчитывает её в /CA = 1 - Transparency/100 и ограничивает диапазон
Возвращаемое значение
1 в случае успеха, 0 — если документ не выбран или аннотацию не удалось создать
Примечания
Аннотация выдаётся со стандартным набором: /Type /Annot, /Subtype /Caret, /Rect, /Sy (имя символа), /C, /CA, /F = 4 (печатаемая), /M, /CreationDate, /NM, /T, /Contents, /Subj = "Caret" и /P. Необязательное поле /RD (смещение каретки внутри /Rect) не пишется; читалки принимают его за нули, и каретка занимает весь прямоугольник аннотации
Чтобы перезаписать прямоугольник, цвет или содержимое аннотации после её создания, используйте SetAnnotRect, SetAnnotBorderColor и SetAnnotContents.