## PopplerAnnot PopplerAnnot — Annotations |

## Functions

PopplerAnnotType | poppler_annot_get_annot_type ()
PopplerAnnotFlag | poppler_annot_get_flags ()
void | poppler_annot_set_flags ()
gchar * | poppler_annot_get_name ()
gint | poppler_annot_get_page_index ()
PopplerColor * | poppler_annot_get_color ()
void | poppler_annot_set_color ()
gchar * | poppler_annot_get_contents ()
void | poppler_annot_set_contents ()
gchar * | poppler_annot_get_modified ()
void | poppler_annot_get_rectangle ()
void | poppler_annot_set_rectangle ()
gchar * | poppler_annot_markup_get_label ()
void | poppler_annot_markup_set_label ()
gchar * | poppler_annot_markup_get_subject ()
gdouble | poppler_annot_markup_get_opacity ()
void | poppler_annot_markup_set_opacity ()
gboolean | poppler_annot_markup_has_popup ()
void | poppler_annot_markup_set_popup ()
gboolean | poppler_annot_markup_get_popup_is_open ()
void | poppler_annot_markup_set_popup_is_open ()
gboolean | poppler_annot_markup_get_popup_rectangle ()
void | poppler_annot_markup_set_popup_rectangle ()
GDate * | poppler_annot_markup_get_date ()
PopplerAnnotExternalDataType | poppler_annot_markup_get_external_data ()
PopplerAnnotMarkupReplyType | poppler_annot_markup_get_reply_to ()
PopplerAnnot * | poppler_annot_text_new ()
gchar * | poppler_annot_text_get_icon ()
void | poppler_annot_text_set_icon ()
gboolean | poppler_annot_text_get_is_open ()
void | poppler_annot_text_set_is_open ()
PopplerAnnotTextState | poppler_annot_text_get_state ()
PopplerAnnot * | poppler_annot_text_markup_new_highlight ()
PopplerAnnot * | poppler_annot_text_markup_new_squiggly ()
PopplerAnnot * | poppler_annot_text_markup_new_strikeout ()
PopplerAnnot * | poppler_annot_text_markup_new_underline ()
void | poppler_annot_text_markup_set_quadrilaterals ()
GArray * | poppler_annot_text_markup_get_quadrilaterals ()
PopplerAnnotCalloutLine * | poppler_annot_free_text_get_callout_line ()
PopplerAnnotFreeTextQuadding | poppler_annot_free_text_get_quadding ()
PopplerAttachment * | poppler_annot_file_attachment_get_attachment ()
gchar * | poppler_annot_file_attachment_get_name ()
PopplerAction * | poppler_annot_screen_get_action ()
PopplerMovie * | poppler_annot_movie_get_movie ()
gchar * | poppler_annot_movie_get_title ()
PopplerAnnotCalloutLine * | poppler_annot_callout_line_new ()
PopplerAnnotCalloutLine * | poppler_annot_callout_line_copy ()
void | poppler_annot_callout_line_free ()
PopplerAnnot * | poppler_annot_circle_new ()
PopplerColor * | poppler_annot_circle_get_interior_color ()
void | poppler_annot_circle_set_interior_color ()
PopplerAnnot * | poppler_annot_line_new ()
void | poppler_annot_line_set_vertices ()
PopplerAnnot * | poppler_annot_square_new ()
PopplerColor * | poppler_annot_square_get_interior_color ()
void | poppler_annot_square_set_interior_color ()
PopplerPoint * | poppler_point_new ()
PopplerPoint * | poppler_point_copy ()
void | poppler_point_free ()
PopplerQuadrilateral * | poppler_quadrilateral_new ()
PopplerQuadrilateral * | poppler_quadrilateral_copy ()
void | poppler_quadrilateral_free ()

## Types and Values

| PopplerAnnot
| PopplerAnnotMarkup
| PopplerAnnotCircle
| PopplerAnnotText
| PopplerAnnotTextMarkup
| PopplerAnnotFreeText
| PopplerAnnotFileAttachment
| PopplerAnnotLine
| PopplerAnnotMovie
| PopplerAnnotScreen
enum | PopplerAnnotType
enum | PopplerAnnotFlag
enum | PopplerAnnotExternalDataType
enum | PopplerAnnotMarkupReplyType
enum | PopplerAnnotTextState
| PopplerAnnotCalloutLine
enum | PopplerAnnotFreeTextQuadding
| PopplerAnnotSquare
| PopplerPoint
| PopplerQuadrilateral
#define | POPPLER_ANNOT_TEXT_ICON_NOTE
#define | POPPLER_ANNOT_TEXT_ICON_COMMENT
#define | POPPLER_ANNOT_TEXT_ICON_KEY
#define | POPPLER_ANNOT_TEXT_ICON_HELP
#define | POPPLER_ANNOT_TEXT_ICON_NEW_PARAGRAPH
#define | POPPLER_ANNOT_TEXT_ICON_PARAGRAPH
#define | POPPLER_ANNOT_TEXT_ICON_INSERT
#define | POPPLER_ANNOT_TEXT_ICON_CROSS
#define | POPPLER_ANNOT_TEXT_ICON_CIRCLE

## Object Hierarchy

        GObject
        ╰── PopplerAnnot

## Includes

    #include <poppler.h>

## Description

## Functions

### poppler_annot_get_annot_type ()

    PopplerAnnotType
    poppler_annot_get_annot_type (PopplerAnnot *poppler_annot);

Gets the type of `poppler_annot`

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

PopplerAnnotType of `poppler_annot` .

### poppler_annot_get_flags ()

    PopplerAnnotFlag
    poppler_annot_get_flags (PopplerAnnot *poppler_annot);

Retrieves the flag field specifying various characteristics of the `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

the flag field of `poppler_annot` .

### poppler_annot_set_flags ()

    void
    poppler_annot_set_flags (PopplerAnnot *poppler_annot,
                             PopplerAnnotFlag flags);

Sets the flag field specifying various characteristics of the `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnot |
flags | a PopplerAnnotFlag |

Since 0.22

### poppler_annot_get_name ()

    gchar *
    poppler_annot_get_name (PopplerAnnot *poppler_annot);

Retrieves the name of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

a new allocated string with the name of `poppler_annot` . It must be freed with `g_free()` when done.

### poppler_annot_get_page_index ()

    gint
    poppler_annot_get_page_index (PopplerAnnot *poppler_annot);

Returns the page index to which `poppler_annot` is associated, or -1 if unknown

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

page index or -1

Since 0.14

### poppler_annot_get_color ()

    PopplerColor *
    poppler_annot_get_color (PopplerAnnot *poppler_annot);

Retrieves the color of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

a new allocated PopplerColor with the color values of `poppler_annot` , or `NULL`. It must be freed with `g_free()` when done.

### poppler_annot_set_color ()

    void
    poppler_annot_set_color (PopplerAnnot *poppler_annot,
                             PopplerColor *poppler_color);

Sets the color of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnot |
poppler_color | a PopplerColor, or `NULL`. | [allow-none]

Since 0.16

### poppler_annot_get_contents ()

    gchar *
    poppler_annot_get_contents (PopplerAnnot *poppler_annot);

Retrieves the contents of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

a new allocated string with the contents of `poppler_annot` . It must be freed with `g_free()` when done.

### poppler_annot_set_contents ()

    void
    poppler_annot_set_contents (PopplerAnnot *poppler_annot,
                                const gchar *contents);

Sets the contents of `poppler_annot` to the given value, replacing the current contents.

#### Parameters

poppler_annot | a PopplerAnnot |
contents | a text string containing the new contents |

Since 0.12

### poppler_annot_get_modified ()

    gchar *
    poppler_annot_get_modified (PopplerAnnot *poppler_annot);

Retrieves the last modification data of `poppler_annot` . The returned string will be either a PDF format date or a text string. See also `poppler_date_parse()`

#### Parameters

poppler_annot | a PopplerAnnot |

#### Returns

a new allocated string with the last modification data of `poppler_annot` . It must be freed with `g_free()` when done.

### poppler_annot_get_rectangle ()

    void
    poppler_annot_get_rectangle (PopplerAnnot *poppler_annot,
                                 PopplerRectangle *poppler_rect);

Retrieves the rectangle representing the page coordinates where the annotation `poppler_annot` is placed.

#### Parameters

poppler_annot | a PopplerAnnot |
poppler_rect | a PopplerRectangle to store the annotation's coordinates. | [out]

Since 0.26

### poppler_annot_set_rectangle ()

    void
    poppler_annot_set_rectangle (PopplerAnnot *poppler_annot,
                                 PopplerRectangle *poppler_rect);

Move the annotation to the rectangle representing the page coordinates where the annotation `poppler_annot` should be placed.

#### Parameters

poppler_annot | a PopplerAnnot |
poppler_rect | a PopplerRectangle with the new annotation's coordinates |

Since 0.26

### poppler_annot_markup_get_label ()

    gchar *
    poppler_annot_markup_get_label (PopplerAnnotMarkup *poppler_annot);

Retrieves the label text of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

the label text of `poppler_annot` .

### poppler_annot_markup_set_label ()

    void
    poppler_annot_markup_set_label (PopplerAnnotMarkup *poppler_annot,
                                    const gchar *label);

Sets the label text of `poppler_annot` , replacing the current one

#### Parameters

poppler_annot | a PopplerAnnotMarkup |
label | a text string containing the new label, or `NULL`. | [allow-none]

Since 0.16

### poppler_annot_markup_get_subject ()

    gchar *
    poppler_annot_markup_get_subject (PopplerAnnotMarkup *poppler_annot);

Retrives the subject text of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

the subject text of `poppler_annot` .

### poppler_annot_markup_get_opacity ()

    gdouble
    poppler_annot_markup_get_opacity (PopplerAnnotMarkup *poppler_annot);

Retrieves the opacity value of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

the opacity value of `poppler_annot` , between 0 (transparent) and 1 (opaque)

### poppler_annot_markup_set_opacity ()

    void
    poppler_annot_markup_set_opacity (PopplerAnnotMarkup *poppler_annot,
                                      gdouble opacity);

Sets the opacity of `poppler_annot` . This value applies to all visible elements of `poppler_annot` in its closed state, but not to the pop-up window that appears when it's openened

#### Parameters

poppler_annot | a PopplerAnnotMarkup |
opacity | a constant opacity value, between 0 (transparent) and 1 (opaque) |

Since 0.16

### poppler_annot_markup_has_popup ()

    gboolean
    poppler_annot_markup_has_popup (PopplerAnnotMarkup *poppler_annot);

Return `TRUE` if the markup annotation has a popup window associated

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

`TRUE`, if `poppler_annot` has popup, `FALSE` otherwise

Since 0.12

### poppler_annot_markup_set_popup ()

    void
    poppler_annot_markup_set_popup (PopplerAnnotMarkup *poppler_annot,
                                    PopplerRectangle *popup_rect);

Associates a new popup window for editing contents of `poppler_annot` . Popup window shall be displayed by viewers at `popup_rect` on the page.

#### Parameters

poppler_annot | a PopplerAnnotMarkup |
popup_rect | a PopplerRectangle |

Since 0.16

### poppler_annot_markup_get_popup_is_open ()

    gboolean
    poppler_annot_markup_get_popup_is_open
                                   (PopplerAnnotMarkup *poppler_annot);

Retrieves the state of the popup window related to `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

the state of `poppler_annot` . `TRUE` if it's open, `FALSE` in other case.

### poppler_annot_markup_set_popup_is_open ()

    void
    poppler_annot_markup_set_popup_is_open
                                   (PopplerAnnotMarkup *poppler_annot,
                                    gboolean is_open);

Sets the state of the popup window related to `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |
is_open | whether popup window should initially be displayed open |

Since 0.16

### poppler_annot_markup_get_popup_rectangle ()

    gboolean
    poppler_annot_markup_get_popup_rectangle
                                   (PopplerAnnotMarkup *poppler_annot,
                                    PopplerRectangle *poppler_rect);

Retrieves the rectangle of the popup window related to `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |
poppler_rect | a PopplerRectangle to store the popup rectangle. | [out]

#### Returns

`TRUE` if PopplerRectangle was correctly filled, `FALSE` otherwise

Since 0.12

### poppler_annot_markup_set_popup_rectangle ()

    void
    poppler_annot_markup_set_popup_rectangle
                                   (PopplerAnnotMarkup *poppler_annot,
                                    PopplerRectangle *poppler_rect);

Sets the rectangle of the popup window related to `poppler_annot` . This doesn't have any effect if `poppler_annot` doesn't have a popup associated, use `poppler_annot_markup_set_popup()` to associate a popup window to a PopplerAnnotMarkup.

#### Parameters

poppler_annot | a PopplerAnnotMarkup |
poppler_rect | a PopplerRectangle to set |

Since 0.33

### poppler_annot_markup_get_date ()

    GDate *
    poppler_annot_markup_get_date (PopplerAnnotMarkup *poppler_annot);

Returns the date and time when the annotation was created

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

a GDate representing the date and time when the annotation was created, or `NULL`.

[transfer full]

### poppler_annot_markup_get_external_data ()

    PopplerAnnotExternalDataType
    poppler_annot_markup_get_external_data
                                   (PopplerAnnotMarkup *poppler_annot);

Gets the external data type of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

PopplerAnnotExternalDataType of `poppler_annot` .

### poppler_annot_markup_get_reply_to ()

    PopplerAnnotMarkupReplyType
    poppler_annot_markup_get_reply_to (PopplerAnnotMarkup *poppler_annot);

Gets the reply type of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMarkup |

#### Returns

PopplerAnnotMarkupReplyType of `poppler_annot` .

### poppler_annot_text_new ()

    PopplerAnnot *
    poppler_annot_text_new (PopplerDocument *doc,
                            PopplerRectangle *rect);

Creates a new Text annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |

#### Returns

A newly created PopplerAnnotText annotation

Since 0.16

### poppler_annot_text_get_icon ()

    gchar *
    poppler_annot_text_get_icon (PopplerAnnotText *poppler_annot);

Gets name of the icon of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotText |

#### Returns

a new allocated string containing the icon name

### poppler_annot_text_set_icon ()

    void
    poppler_annot_text_set_icon (PopplerAnnotText *poppler_annot,
                                 const gchar *icon);

Sets the icon of `poppler_annot` . The following predefined icons are currently supported:

POPPLER_ANNOT_TEXT_ICON_NOTE |
POPPLER_ANNOT_TEXT_ICON_COMMENT |
POPPLER_ANNOT_TEXT_ICON_KEY |
POPPLER_ANNOT_TEXT_ICON_HELP |
POPPLER_ANNOT_TEXT_ICON_NEW_PARAGRAPH |
POPPLER_ANNOT_TEXT_ICON_PARAGRAPH |
POPPLER_ANNOT_TEXT_ICON_INSERT |
POPPLER_ANNOT_TEXT_ICON_CROSS |
POPPLER_ANNOT_TEXT_ICON_CIRCLE |

#### Parameters

poppler_annot | a PopplerAnnotText |
icon | the name of an icon |

Since 0.16

### poppler_annot_text_get_is_open ()

    gboolean
    poppler_annot_text_get_is_open (PopplerAnnotText *poppler_annot);

Retrieves the state of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotText |

#### Returns

the state of `poppler_annot` . `TRUE` if it's open, `FALSE` in other case.

### poppler_annot_text_set_is_open ()

    void
    poppler_annot_text_set_is_open (PopplerAnnotText *poppler_annot,
                                    gboolean is_open);

Sets whether `poppler_annot` should initially be displayed open

#### Parameters

poppler_annot | a PopplerAnnotText |
is_open | whether annotation should initially be displayed open |

Since 0.16

### poppler_annot_text_get_state ()

    PopplerAnnotTextState
    poppler_annot_text_get_state (PopplerAnnotText *poppler_annot);

Retrieves the state of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotText |

#### Returns

PopplerAnnotTextState of `poppler_annot` .

### poppler_annot_text_markup_new_highlight ()

    PopplerAnnot *
    poppler_annot_text_markup_new_highlight
                                   (PopplerDocument *doc,
                                    PopplerRectangle *rect,
                                    GArray *quadrilaterals);

Creates a new Highlight Text annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |
quadrilaterals | A GArray of PopplerQuadrilaterals. | [element-type PopplerQuadrilateral]

#### Returns

A newly created PopplerAnnotTextMarkup annotation.

[transfer full]

Since 0.26

### poppler_annot_text_markup_new_squiggly ()

    PopplerAnnot *
    poppler_annot_text_markup_new_squiggly
                                   (PopplerDocument *doc,
                                    PopplerRectangle *rect,
                                    GArray *quadrilaterals);

Creates a new Squiggly Text annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |
quadrilaterals | A GArray of PopplerQuadrilaterals. | [element-type PopplerQuadrilateral]

#### Returns

A newly created PopplerAnnotTextMarkup annotation.

[transfer full]

Since 0.26

### poppler_annot_text_markup_new_strikeout ()

    PopplerAnnot *
    poppler_annot_text_markup_new_strikeout
                                   (PopplerDocument *doc,
                                    PopplerRectangle *rect,
                                    GArray *quadrilaterals);

Creates a new Strike Out Text annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |
quadrilaterals | A GArray of PopplerQuadrilaterals. | [element-type PopplerQuadrilateral]

#### Returns

A newly created PopplerAnnotTextMarkup annotation.

[transfer full]

Since 0.26

### poppler_annot_text_markup_new_underline ()

    PopplerAnnot *
    poppler_annot_text_markup_new_underline
                                   (PopplerDocument *doc,
                                    PopplerRectangle *rect,
                                    GArray *quadrilaterals);

Creates a new Underline Text annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |
quadrilaterals | A GArray of PopplerQuadrilaterals. | [element-type PopplerQuadrilateral]

#### Returns

A newly created PopplerAnnotTextMarkup annotation.

[transfer full]

Since 0.26

### poppler_annot_text_markup_set_quadrilaterals ()

    void
    poppler_annot_text_markup_set_quadrilaterals
                                   (PopplerAnnotTextMarkup *poppler_annot,
                                    GArray *quadrilaterals);

Set the regions (Quadrilaterals) to apply the text markup in `poppler_annot` .

#### Parameters

poppler_annot | A PopplerAnnotTextMarkup |
quadrilaterals | A GArray of PopplerQuadrilaterals. | [element-type PopplerQuadrilateral]

Since 0.26

### poppler_annot_text_markup_get_quadrilaterals ()

    GArray *
    poppler_annot_text_markup_get_quadrilaterals
                                   (PopplerAnnotTextMarkup *poppler_annot);

Returns a GArray of PopplerQuadrilateral items that map from a location on `page` to a PopplerAnnotTextMarkup. This array must be freed when done.

#### Parameters

poppler_annot | A PopplerAnnotTextMarkup |

#### Returns

A GArray of PopplerQuadrilateral.

[element-type PopplerQuadrilateral][transfer full]

Since 0.26

### poppler_annot_free_text_get_callout_line ()

    PopplerAnnotCalloutLine *
    poppler_annot_free_text_get_callout_line
                                   (PopplerAnnotFreeText *poppler_annot);

Retrieves a PopplerAnnotCalloutLine of four or six numbers specifying a callout line attached to the `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotFreeText |

#### Returns

a new allocated PopplerAnnotCalloutLine if the annot has a callout line, `NULL` in other case. It must be freed with `g_free()` when done.

### poppler_annot_free_text_get_quadding ()

    PopplerAnnotFreeTextQuadding
    poppler_annot_free_text_get_quadding (PopplerAnnotFreeText *poppler_annot);

Retrieves the justification of the text of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotFreeText |

#### Returns

PopplerAnnotFreeTextQuadding of `poppler_annot` .

### poppler_annot_file_attachment_get_attachment ()

    PopplerAttachment *
    poppler_annot_file_attachment_get_attachment
                                   (PopplerAnnotFileAttachment *poppler_annot);

Creates a PopplerAttachment for the file of the file attachment annotation `annot` . The PopplerAttachment must be unrefed with g_object_unref by the caller.

#### Parameters

poppler_annot | a PopplerAnnotFileAttachment |

#### Returns

`PopplerAttachment` .

[transfer full]

Since 0.14

### poppler_annot_file_attachment_get_name ()

    gchar *
    poppler_annot_file_attachment_get_name
                                   (PopplerAnnotFileAttachment *poppler_annot);

Retrieves the name of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotFileAttachment |

#### Returns

a new allocated string with the name of `poppler_annot` . It must be freed with `g_free()` when done.

Since 0.14

### poppler_annot_screen_get_action ()

    PopplerAction *
    poppler_annot_screen_get_action (PopplerAnnotScreen *poppler_annot);

Retrieves the action (PopplerAction) that shall be performed when `poppler_annot` is activated

#### Parameters

poppler_annot | a PopplerAnnotScreen |

#### Returns

the action to perform. The returned object is owned by `poppler_annot` and should not be freed.

[transfer none]

Since 0.14

### poppler_annot_movie_get_movie ()

    PopplerMovie *
    poppler_annot_movie_get_movie (PopplerAnnotMovie *poppler_annot);

Retrieves the movie object (PopplerMovie) stored in the `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMovie |

#### Returns

the movie object stored in the `poppler_annot` . The returned object is owned by PopplerAnnotMovie and should not be freed.

[transfer none]

Since 0.14

### poppler_annot_movie_get_title ()

    gchar *
    poppler_annot_movie_get_title (PopplerAnnotMovie *poppler_annot);

Retrieves the movie title of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotMovie |

#### Returns

the title text of `poppler_annot` .

Since 0.14

### poppler_annot_callout_line_new ()

    PopplerAnnotCalloutLine *
    poppler_annot_callout_line_new (void);

Creates a new empty PopplerAnnotCalloutLine.

#### Returns

a new allocated PopplerAnnotCalloutLine, `NULL` in other case. It must be freed when done.

### poppler_annot_callout_line_copy ()

    PopplerAnnotCalloutLine *
    poppler_annot_callout_line_copy (PopplerAnnotCalloutLine *callout);

It does copy `callout` to a new PopplerAnnotCalloutLine.

#### Parameters

callout | the PopplerAnnotCalloutLine to be copied. |

#### Returns

a new allocated PopplerAnnotCalloutLine as exact copy of `callout` , `NULL` in other case. It must be freed when done.

### poppler_annot_callout_line_free ()

    void
    poppler_annot_callout_line_free (PopplerAnnotCalloutLine *callout);

Frees the memory used by PopplerAnnotCalloutLine.

#### Parameters

callout | a PopplerAnnotCalloutLine |

### poppler_annot_circle_new ()

    PopplerAnnot *
    poppler_annot_circle_new (PopplerDocument *doc,
                              PopplerRectangle *rect);

Creates a new Circle annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |

#### Returns

a newly created PopplerAnnotCircle annotation

Since 0.26

### poppler_annot_circle_get_interior_color ()

    PopplerColor *
    poppler_annot_circle_get_interior_color
                                   (PopplerAnnotCircle *poppler_annot);

Retrieves the interior color of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotCircle |

#### Returns

a new allocated PopplerColor with the color values of `poppler_annot` , or `NULL`. It must be freed with `g_free()` when done.

Since 0.26

### poppler_annot_circle_set_interior_color ()

    void
    poppler_annot_circle_set_interior_color
                                   (PopplerAnnotCircle *poppler_annot,
                                    PopplerColor *poppler_color);

Sets the interior color of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotCircle |
poppler_color | a PopplerColor, or `NULL`. | [allow-none]

Since 0.26

### poppler_annot_line_new ()

    PopplerAnnot *
    poppler_annot_line_new (PopplerDocument *doc,
                            PopplerRectangle *rect,
                            PopplerPoint *start,
                            PopplerPoint *end);

Creates a new Line annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |
start | a PopplerPoint of the starting vertice |
end | a PopplerPoint of the ending vertice |

#### Returns

A newly created PopplerAnnotLine annotation

Since 0.26

### poppler_annot_line_set_vertices ()

    void
    poppler_annot_line_set_vertices (PopplerAnnotLine *poppler_annot,
                                     PopplerPoint *start,
                                     PopplerPoint *end);

Set the coordinate points where the `poppler_annot` starts and ends.

#### Parameters

poppler_annot | a PopplerAnnotLine |
start | a PopplerPoint of the starting vertice |
end | a PopplerPoint of the ending vertice |

Since 0.26

### poppler_annot_square_new ()

    PopplerAnnot *
    poppler_annot_square_new (PopplerDocument *doc,
                              PopplerRectangle *rect);

Creates a new Square annotation that will be located on `rect` when added to a page. See `poppler_page_add_annot()`

#### Parameters

doc | a PopplerDocument |
rect | a PopplerRectangle |

#### Returns

a newly created PopplerAnnotSquare annotation

Since 0.26

### poppler_annot_square_get_interior_color ()

    PopplerColor *
    poppler_annot_square_get_interior_color
                                   (PopplerAnnotSquare *poppler_annot);

Retrieves the interior color of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotSquare |

#### Returns

a new allocated PopplerColor with the color values of `poppler_annot` , or `NULL`. It must be freed with `g_free()` when done.

Since 0.26

### poppler_annot_square_set_interior_color ()

    void
    poppler_annot_square_set_interior_color
                                   (PopplerAnnotSquare *poppler_annot,
                                    PopplerColor *poppler_color);

Sets the interior color of `poppler_annot` .

#### Parameters

poppler_annot | a PopplerAnnotSquare |
poppler_color | a PopplerColor, or `NULL`. | [allow-none]

Since 0.26

### poppler_point_new ()

    PopplerPoint *
    poppler_point_new (void);

Creates a new PopplerPoint. It must be freed with `poppler_point_free()` after use.

#### Returns

a new PopplerPoint

Since 0.26

### poppler_point_copy ()

    PopplerPoint *
    poppler_point_copy (PopplerPoint *point);

Creates a copy of `point` . The copy must be freed with `poppler_point_free()` after use.

#### Parameters

point | a PopplerPoint to copy |

#### Returns

a new allocated copy of `point`

Since 0.26

### poppler_point_free ()

    void
    poppler_point_free (PopplerPoint *point);

Frees the memory used by `point`

#### Parameters

point | a PopplerPoint |

Since 0.26

### poppler_quadrilateral_new ()

    PopplerQuadrilateral *
    poppler_quadrilateral_new (void);

Creates a new PopplerQuadrilateral. It must be freed with `poppler_quadrilateral_free()` after use.

#### Returns

a new PopplerQuadrilateral.

Since 0.26

### poppler_quadrilateral_copy ()

    PopplerQuadrilateral *
    poppler_quadrilateral_copy (PopplerQuadrilateral *quad);

Creates a copy of `quad` . The copy must be freed with `poppler_quadrilateral_free()` after use.

#### Parameters

quad | a PopplerQuadrilateral to copy |

#### Returns

a new allocated copy of `quad`

Since 0.26

### poppler_quadrilateral_free ()

    void
    poppler_quadrilateral_free (PopplerQuadrilateral *quad);

Frees the memory used by `quad`

#### Parameters

quad | a PopplerQuadrilateral |

Since 0.26

## Types and Values

### PopplerAnnot

    typedef struct _PopplerAnnot PopplerAnnot;

### PopplerAnnotMarkup

    typedef struct _PopplerAnnotMarkup PopplerAnnotMarkup;

### PopplerAnnotCircle

    typedef struct _PopplerAnnotCircle PopplerAnnotCircle;

### PopplerAnnotText

    typedef struct _PopplerAnnotText PopplerAnnotText;

### PopplerAnnotTextMarkup

    typedef struct _PopplerAnnotTextMarkup PopplerAnnotTextMarkup;

### PopplerAnnotFreeText

    typedef struct _PopplerAnnotFreeText PopplerAnnotFreeText;

### PopplerAnnotFileAttachment

    typedef struct _PopplerAnnotFileAttachment PopplerAnnotFileAttachment;

### PopplerAnnotLine

    typedef struct _PopplerAnnotLine PopplerAnnotLine;

### PopplerAnnotMovie

    typedef struct _PopplerAnnotMovie PopplerAnnotMovie;

### PopplerAnnotScreen

    typedef struct _PopplerAnnotScreen PopplerAnnotScreen;

### enum PopplerAnnotType

#### Members

POPPLER_ANNOT_UNKNOWN |  |
POPPLER_ANNOT_TEXT |  |
POPPLER_ANNOT_LINK |  |
POPPLER_ANNOT_FREE_TEXT |  |
POPPLER_ANNOT_LINE |  |
POPPLER_ANNOT_SQUARE |  |
POPPLER_ANNOT_CIRCLE |  |
POPPLER_ANNOT_POLYGON |  |
POPPLER_ANNOT_POLY_LINE |  |
POPPLER_ANNOT_HIGHLIGHT |  |
POPPLER_ANNOT_UNDERLINE |  |
POPPLER_ANNOT_SQUIGGLY |  |
POPPLER_ANNOT_STRIKE_OUT |  |
POPPLER_ANNOT_STAMP |  |
POPPLER_ANNOT_CARET |  |
POPPLER_ANNOT_INK |  |
POPPLER_ANNOT_POPUP |  |
POPPLER_ANNOT_FILE_ATTACHMENT |  |
POPPLER_ANNOT_SOUND |  |
POPPLER_ANNOT_MOVIE |  |
POPPLER_ANNOT_WIDGET |  |
POPPLER_ANNOT_SCREEN |  |
POPPLER_ANNOT_PRINTER_MARK |  |
POPPLER_ANNOT_TRAP_NET |  |
POPPLER_ANNOT_WATERMARK |  |
POPPLER_ANNOT_3D |  |

### enum PopplerAnnotFlag

#### Members

POPPLER_ANNOT_FLAG_UNKNOWN |  |
POPPLER_ANNOT_FLAG_INVISIBLE |  |
POPPLER_ANNOT_FLAG_HIDDEN |  |
POPPLER_ANNOT_FLAG_PRINT |  |
POPPLER_ANNOT_FLAG_NO_ZOOM |  |
POPPLER_ANNOT_FLAG_NO_ROTATE |  |
POPPLER_ANNOT_FLAG_NO_VIEW |  |
POPPLER_ANNOT_FLAG_READ_ONLY |  |
POPPLER_ANNOT_FLAG_LOCKED |  |
POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW |  |
POPPLER_ANNOT_FLAG_LOCKED_CONTENTS |  |

### enum PopplerAnnotExternalDataType

#### Members

POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D |  |
POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN |  |

### enum PopplerAnnotMarkupReplyType

#### Members

POPPLER_ANNOT_MARKUP_REPLY_TYPE_R |  |
POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP |  |

### enum PopplerAnnotTextState

#### Members

POPPLER_ANNOT_TEXT_STATE_MARKED |  |
POPPLER_ANNOT_TEXT_STATE_UNMARKED |  |
POPPLER_ANNOT_TEXT_STATE_ACCEPTED |  |
POPPLER_ANNOT_TEXT_STATE_REJECTED |  |
POPPLER_ANNOT_TEXT_STATE_CANCELLED |  |
POPPLER_ANNOT_TEXT_STATE_COMPLETED |  |
POPPLER_ANNOT_TEXT_STATE_NONE |  |
POPPLER_ANNOT_TEXT_STATE_UNKNOWN |  |

### PopplerAnnotCalloutLine

    typedef struct {
      gboolean multiline;
      gdouble  x1;
      gdouble  y1;
      gdouble  x2;
      gdouble  y2;
      gdouble  x3;
      gdouble  y3;
    } PopplerAnnotCalloutLine;

### enum PopplerAnnotFreeTextQuadding

#### Members

POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED |  |
POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED |  |
POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED |  |

### PopplerAnnotSquare

    typedef struct _PopplerAnnotSquare PopplerAnnotSquare;

### PopplerPoint

    typedef struct {
      gdouble x;
      gdouble y;
    } PopplerPoint;

A PopplerPoint is used to describe a location point on a page

#### Members

gdouble `x`; | x coordinate |
gdouble `y`; | y coordinate |

### PopplerQuadrilateral

    typedef struct {
      PopplerPoint p1;
      PopplerPoint p2;
      PopplerPoint p3;
      PopplerPoint p4;
    } PopplerQuadrilateral;

A PopplerQuadrilateral is used to describe rectangle-like polygon with arbitrary inclination on a page.

#### Members

PopplerPoint `p1`; | a PopplerPoint with the first vertex coordinates |
PopplerPoint `p2`; | a PopplerPoint with the second vertex coordinates |
PopplerPoint `p3`; | a PopplerPoint with the third vertex coordinates |
PopplerPoint `p4`; | a PopplerPoint with the fourth vertex coordinates |

Since 0.26

### POPPLER_ANNOT_TEXT_ICON_NOTE

    #define POPPLER_ANNOT_TEXT_ICON_NOTE          "Note"

### POPPLER_ANNOT_TEXT_ICON_COMMENT

    #define POPPLER_ANNOT_TEXT_ICON_COMMENT       "Comment"

### POPPLER_ANNOT_TEXT_ICON_KEY

    #define POPPLER_ANNOT_TEXT_ICON_KEY           "Key"

### POPPLER_ANNOT_TEXT_ICON_HELP

    #define POPPLER_ANNOT_TEXT_ICON_HELP          "Help"

### POPPLER_ANNOT_TEXT_ICON_NEW_PARAGRAPH

    #define POPPLER_ANNOT_TEXT_ICON_NEW_PARAGRAPH "NewParagraph"

### POPPLER_ANNOT_TEXT_ICON_PARAGRAPH

    #define POPPLER_ANNOT_TEXT_ICON_PARAGRAPH     "Paragraph"

### POPPLER_ANNOT_TEXT_ICON_INSERT

    #define POPPLER_ANNOT_TEXT_ICON_INSERT        "Insert"

### POPPLER_ANNOT_TEXT_ICON_CROSS

    #define POPPLER_ANNOT_TEXT_ICON_CROSS         "Cross"

### POPPLER_ANNOT_TEXT_ICON_CIRCLE

    #define POPPLER_ANNOT_TEXT_ICON_CIRCLE        "Circle"