class HexaPDF:: Type:: Annotation
Parent | HexaPDF::Dictionary |
---|---|
Extended With |
HexaPDF::Utils::BitField |
Annotations
are used to associate objects like notes, sounds or movies with a location on a PDF page or allow the user to interact with a PDF document using a keyboard or mouse.
See: PDF2.0 s12.5
Field Definitions
Name | Type/Allowed Values | Required | Default Value |
---|---|---|---|
Type | Symbol | false | :Annot |
Subtype | Symbol | true | nil |
Rect | HexaPDF::Rectangle or Array | true | nil |
Contents | String | false | nil |
P | HexaPDF::Dictionary or Hash | false | nil |
NM | String | false | nil |
M | HexaPDF::DictionaryFields::PDFDate or String or Time or Date or DateTime | false | nil |
F | Integer | false | 0 |
AP | HexaPDF::Type::Annotation::AppearanceDictionary or Hash | false | nil |
AS | Symbol | false | nil |
Border | HexaPDF::PDFArray or Array | false | [0, 0, 1] |
C | HexaPDF::PDFArray or Array | false | nil |
StructParent | Integer | false | nil |
OC | HexaPDF::Dictionary or Hash | false | nil |
AF | HexaPDF::PDFArray or Array | false | nil |
ca | Numeric | false | 1.0 |
CA | Numeric | false | 1.0 |
BM | Symbol | false | nil |
Lang | String | false | nil |
Constants
- Opacity¶
Describes the opacity values
fill_alpha
andstroke_alpha
of an annotation.
Public Instance Methods
Returns the annotation’s appearance stream of the given type (:normal, :rollover, or :down) or nil
if it doesn’t exist.
The appearance state in /AS or the one provided via state_name
is taken into account if necessary.
Returns the AppearanceDictionary
instance associated with the annotation or nil
if none is set.
Returns the text of the annotation when no argument is given. Otherwise sets the text and returns self.
The contents is used differently depending on the annotation type. It is either the text that should be displayed for the annotation or an alternate description of the annotation’s contents.
A value of nil
means deleting the existing contents entry.
Creates an empty appearance stream (a Form
XObject) of the given type (:normal, :rollover, or :down) and returns it. If an appearance stream already exist, it is overwritten.
If there can be multiple appearance streams for the annotation, use the state_name
argument to provide the appearance state name.
Sets the given flags on /F, given as flag names or bit indices. If clear_existing
is true
, all prior flags will be cleared.
See flags
for the list of available flags.
Returns true
if the given flag is set on /F. The argument can either be the flag name or the bit index.
See flags
for the list of available flags.
Returns an array of flag names representing the set bit flags for /F.
The available flags are:
- :invisible or 0
-
Applies only to non-standard annotations. If set, do not render or print the annotation.
- :hidden or 1
-
If set, do not render the annotation or allow interactions.
- :print or 2
-
If set, print the annotation unless the hidden flag is also set. Otherwise never print the annotation.
- :no_zoom or 3
-
If set, do not scale the annotation’s appearance to match the magnification of the page.
- :no_rotate or 4
-
If set, do not rotate the annotation’s appearance to match the rotation of the page.
- :no_view or 5
-
If set, do not render the annotation on the screen or allow interactions.
- :read_only or 6
-
If set, do not allow user interactions.
- :locked or 7
-
If set, do not allow the annotation to be deleted or its properties be modified.
- :toggle_no_view or 8
-
If set, invert the interpretation of the :no_view flag for annotation selection and mouse hovering.
- :locked_contents or 9
-
If set, do not allow the contents of the annotation to be modified.
Returns true
because annotation objects must always be indirect objects.
Returns an Opacity
instance representing the fill and stroke alpha values when no arguments are given. Otherwise sets the provided alpha values and returns self.
The fill and stroke alpha values are used when regenerating the annotation’s appearance stream and determine how opaque drawn elements will be. Note that the fill alpha value applies not just to fill values but to all non-stroking operations (e.g. images, …).
Regenerates the appearance stream of the annotation.
This uses the information stored in the annotation to regenerate the appearance.