poppler_sys/
lib.rs

1// Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf)
2// from
3// from gir-files (https://github.com/gtk-rs/gir-files @ 5c1e490fe50a)
4// DO NOT EDIT
5
6#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8    clippy::approx_constant,
9    clippy::type_complexity,
10    clippy::unreadable_literal,
11    clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use cairo_sys as cairo;
16use gio_sys as gio;
17use glib_sys as glib;
18use gobject_sys as gobject;
19
20#[cfg(unix)]
21#[allow(unused_imports)]
22use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
23#[allow(unused_imports)]
24use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
25#[allow(unused_imports)]
26use std::ffi::{
27    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
28};
29
30#[allow(unused_imports)]
31use glib::{gboolean, gconstpointer, gpointer, GType};
32
33// Enums
34pub type PopplerActionLayerAction = c_int;
35pub const POPPLER_ACTION_LAYER_ON: PopplerActionLayerAction = 0;
36pub const POPPLER_ACTION_LAYER_OFF: PopplerActionLayerAction = 1;
37pub const POPPLER_ACTION_LAYER_TOGGLE: PopplerActionLayerAction = 2;
38
39pub type PopplerActionMovieOperation = c_int;
40pub const POPPLER_ACTION_MOVIE_PLAY: PopplerActionMovieOperation = 0;
41pub const POPPLER_ACTION_MOVIE_PAUSE: PopplerActionMovieOperation = 1;
42pub const POPPLER_ACTION_MOVIE_RESUME: PopplerActionMovieOperation = 2;
43pub const POPPLER_ACTION_MOVIE_STOP: PopplerActionMovieOperation = 3;
44
45pub type PopplerActionType = c_int;
46pub const POPPLER_ACTION_UNKNOWN: PopplerActionType = 0;
47pub const POPPLER_ACTION_NONE: PopplerActionType = 1;
48pub const POPPLER_ACTION_GOTO_DEST: PopplerActionType = 2;
49pub const POPPLER_ACTION_GOTO_REMOTE: PopplerActionType = 3;
50pub const POPPLER_ACTION_LAUNCH: PopplerActionType = 4;
51pub const POPPLER_ACTION_URI: PopplerActionType = 5;
52pub const POPPLER_ACTION_NAMED: PopplerActionType = 6;
53pub const POPPLER_ACTION_MOVIE: PopplerActionType = 7;
54pub const POPPLER_ACTION_RENDITION: PopplerActionType = 8;
55pub const POPPLER_ACTION_OCG_STATE: PopplerActionType = 9;
56pub const POPPLER_ACTION_JAVASCRIPT: PopplerActionType = 10;
57pub const POPPLER_ACTION_RESET_FORM: PopplerActionType = 11;
58
59pub type PopplerAdditionalActionType = c_int;
60pub const POPPLER_ADDITIONAL_ACTION_FIELD_MODIFIED: PopplerAdditionalActionType = 0;
61pub const POPPLER_ADDITIONAL_ACTION_FORMAT_FIELD: PopplerAdditionalActionType = 1;
62pub const POPPLER_ADDITIONAL_ACTION_VALIDATE_FIELD: PopplerAdditionalActionType = 2;
63pub const POPPLER_ADDITIONAL_ACTION_CALCULATE_FIELD: PopplerAdditionalActionType = 3;
64
65pub type PopplerAnnotExternalDataType = c_int;
66pub const POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D: PopplerAnnotExternalDataType = 0;
67pub const POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN: PopplerAnnotExternalDataType = 1;
68
69pub type PopplerAnnotFreeTextQuadding = c_int;
70pub const POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED: PopplerAnnotFreeTextQuadding = 0;
71pub const POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED: PopplerAnnotFreeTextQuadding = 1;
72pub const POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED: PopplerAnnotFreeTextQuadding = 2;
73
74pub type PopplerAnnotMarkupReplyType = c_int;
75pub const POPPLER_ANNOT_MARKUP_REPLY_TYPE_R: PopplerAnnotMarkupReplyType = 0;
76pub const POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP: PopplerAnnotMarkupReplyType = 1;
77
78pub type PopplerAnnotStampIcon = c_int;
79pub const POPPLER_ANNOT_STAMP_ICON_UNKNOWN: PopplerAnnotStampIcon = 0;
80pub const POPPLER_ANNOT_STAMP_ICON_APPROVED: PopplerAnnotStampIcon = 1;
81pub const POPPLER_ANNOT_STAMP_ICON_AS_IS: PopplerAnnotStampIcon = 2;
82pub const POPPLER_ANNOT_STAMP_ICON_CONFIDENTIAL: PopplerAnnotStampIcon = 3;
83pub const POPPLER_ANNOT_STAMP_ICON_FINAL: PopplerAnnotStampIcon = 4;
84pub const POPPLER_ANNOT_STAMP_ICON_EXPERIMENTAL: PopplerAnnotStampIcon = 5;
85pub const POPPLER_ANNOT_STAMP_ICON_EXPIRED: PopplerAnnotStampIcon = 6;
86pub const POPPLER_ANNOT_STAMP_ICON_NOT_APPROVED: PopplerAnnotStampIcon = 7;
87pub const POPPLER_ANNOT_STAMP_ICON_NOT_FOR_PUBLIC_RELEASE: PopplerAnnotStampIcon = 8;
88pub const POPPLER_ANNOT_STAMP_ICON_SOLD: PopplerAnnotStampIcon = 9;
89pub const POPPLER_ANNOT_STAMP_ICON_DEPARTMENTAL: PopplerAnnotStampIcon = 10;
90pub const POPPLER_ANNOT_STAMP_ICON_FOR_COMMENT: PopplerAnnotStampIcon = 11;
91pub const POPPLER_ANNOT_STAMP_ICON_FOR_PUBLIC_RELEASE: PopplerAnnotStampIcon = 12;
92pub const POPPLER_ANNOT_STAMP_ICON_TOP_SECRET: PopplerAnnotStampIcon = 13;
93pub const POPPLER_ANNOT_STAMP_ICON_NONE: PopplerAnnotStampIcon = 14;
94
95pub type PopplerAnnotTextState = c_int;
96pub const POPPLER_ANNOT_TEXT_STATE_MARKED: PopplerAnnotTextState = 0;
97pub const POPPLER_ANNOT_TEXT_STATE_UNMARKED: PopplerAnnotTextState = 1;
98pub const POPPLER_ANNOT_TEXT_STATE_ACCEPTED: PopplerAnnotTextState = 2;
99pub const POPPLER_ANNOT_TEXT_STATE_REJECTED: PopplerAnnotTextState = 3;
100pub const POPPLER_ANNOT_TEXT_STATE_CANCELLED: PopplerAnnotTextState = 4;
101pub const POPPLER_ANNOT_TEXT_STATE_COMPLETED: PopplerAnnotTextState = 5;
102pub const POPPLER_ANNOT_TEXT_STATE_NONE: PopplerAnnotTextState = 6;
103pub const POPPLER_ANNOT_TEXT_STATE_UNKNOWN: PopplerAnnotTextState = 7;
104
105pub type PopplerAnnotType = c_int;
106pub const POPPLER_ANNOT_UNKNOWN: PopplerAnnotType = 0;
107pub const POPPLER_ANNOT_TEXT: PopplerAnnotType = 1;
108pub const POPPLER_ANNOT_LINK: PopplerAnnotType = 2;
109pub const POPPLER_ANNOT_FREE_TEXT: PopplerAnnotType = 3;
110pub const POPPLER_ANNOT_LINE: PopplerAnnotType = 4;
111pub const POPPLER_ANNOT_SQUARE: PopplerAnnotType = 5;
112pub const POPPLER_ANNOT_CIRCLE: PopplerAnnotType = 6;
113pub const POPPLER_ANNOT_POLYGON: PopplerAnnotType = 7;
114pub const POPPLER_ANNOT_POLY_LINE: PopplerAnnotType = 8;
115pub const POPPLER_ANNOT_HIGHLIGHT: PopplerAnnotType = 9;
116pub const POPPLER_ANNOT_UNDERLINE: PopplerAnnotType = 10;
117pub const POPPLER_ANNOT_SQUIGGLY: PopplerAnnotType = 11;
118pub const POPPLER_ANNOT_STRIKE_OUT: PopplerAnnotType = 12;
119pub const POPPLER_ANNOT_STAMP: PopplerAnnotType = 13;
120pub const POPPLER_ANNOT_CARET: PopplerAnnotType = 14;
121pub const POPPLER_ANNOT_INK: PopplerAnnotType = 15;
122pub const POPPLER_ANNOT_POPUP: PopplerAnnotType = 16;
123pub const POPPLER_ANNOT_FILE_ATTACHMENT: PopplerAnnotType = 17;
124pub const POPPLER_ANNOT_SOUND: PopplerAnnotType = 18;
125pub const POPPLER_ANNOT_MOVIE: PopplerAnnotType = 19;
126pub const POPPLER_ANNOT_WIDGET: PopplerAnnotType = 20;
127pub const POPPLER_ANNOT_SCREEN: PopplerAnnotType = 21;
128pub const POPPLER_ANNOT_PRINTER_MARK: PopplerAnnotType = 22;
129pub const POPPLER_ANNOT_TRAP_NET: PopplerAnnotType = 23;
130pub const POPPLER_ANNOT_WATERMARK: PopplerAnnotType = 24;
131pub const POPPLER_ANNOT_3D: PopplerAnnotType = 25;
132
133pub type PopplerBackend = c_int;
134pub const POPPLER_BACKEND_UNKNOWN: PopplerBackend = 0;
135pub const POPPLER_BACKEND_SPLASH: PopplerBackend = 1;
136pub const POPPLER_BACKEND_CAIRO: PopplerBackend = 2;
137
138pub type PopplerCertificateStatus = c_int;
139pub const POPPLER_CERTIFICATE_TRUSTED: PopplerCertificateStatus = 0;
140pub const POPPLER_CERTIFICATE_UNTRUSTED_ISSUER: PopplerCertificateStatus = 1;
141pub const POPPLER_CERTIFICATE_UNKNOWN_ISSUER: PopplerCertificateStatus = 2;
142pub const POPPLER_CERTIFICATE_REVOKED: PopplerCertificateStatus = 3;
143pub const POPPLER_CERTIFICATE_EXPIRED: PopplerCertificateStatus = 4;
144pub const POPPLER_CERTIFICATE_GENERIC_ERROR: PopplerCertificateStatus = 5;
145pub const POPPLER_CERTIFICATE_NOT_VERIFIED: PopplerCertificateStatus = 6;
146
147pub type PopplerDestType = c_int;
148pub const POPPLER_DEST_UNKNOWN: PopplerDestType = 0;
149pub const POPPLER_DEST_XYZ: PopplerDestType = 1;
150pub const POPPLER_DEST_FIT: PopplerDestType = 2;
151pub const POPPLER_DEST_FITH: PopplerDestType = 3;
152pub const POPPLER_DEST_FITV: PopplerDestType = 4;
153pub const POPPLER_DEST_FITR: PopplerDestType = 5;
154pub const POPPLER_DEST_FITB: PopplerDestType = 6;
155pub const POPPLER_DEST_FITBH: PopplerDestType = 7;
156pub const POPPLER_DEST_FITBV: PopplerDestType = 8;
157pub const POPPLER_DEST_NAMED: PopplerDestType = 9;
158
159pub type PopplerError = c_int;
160pub const POPPLER_ERROR_INVALID: PopplerError = 0;
161pub const POPPLER_ERROR_ENCRYPTED: PopplerError = 1;
162pub const POPPLER_ERROR_OPEN_FILE: PopplerError = 2;
163pub const POPPLER_ERROR_BAD_CATALOG: PopplerError = 3;
164pub const POPPLER_ERROR_DAMAGED: PopplerError = 4;
165pub const POPPLER_ERROR_SIGNING: PopplerError = 5;
166
167pub type PopplerFontType = c_int;
168pub const POPPLER_FONT_TYPE_UNKNOWN: PopplerFontType = 0;
169pub const POPPLER_FONT_TYPE_TYPE1: PopplerFontType = 1;
170pub const POPPLER_FONT_TYPE_TYPE1C: PopplerFontType = 2;
171pub const POPPLER_FONT_TYPE_TYPE1COT: PopplerFontType = 3;
172pub const POPPLER_FONT_TYPE_TYPE3: PopplerFontType = 4;
173pub const POPPLER_FONT_TYPE_TRUETYPE: PopplerFontType = 5;
174pub const POPPLER_FONT_TYPE_TRUETYPEOT: PopplerFontType = 6;
175pub const POPPLER_FONT_TYPE_CID_TYPE0: PopplerFontType = 7;
176pub const POPPLER_FONT_TYPE_CID_TYPE0C: PopplerFontType = 8;
177pub const POPPLER_FONT_TYPE_CID_TYPE0COT: PopplerFontType = 9;
178pub const POPPLER_FONT_TYPE_CID_TYPE2: PopplerFontType = 10;
179pub const POPPLER_FONT_TYPE_CID_TYPE2OT: PopplerFontType = 11;
180
181pub type PopplerFormButtonType = c_int;
182pub const POPPLER_FORM_BUTTON_PUSH: PopplerFormButtonType = 0;
183pub const POPPLER_FORM_BUTTON_CHECK: PopplerFormButtonType = 1;
184pub const POPPLER_FORM_BUTTON_RADIO: PopplerFormButtonType = 2;
185
186pub type PopplerFormChoiceType = c_int;
187pub const POPPLER_FORM_CHOICE_COMBO: PopplerFormChoiceType = 0;
188pub const POPPLER_FORM_CHOICE_LIST: PopplerFormChoiceType = 1;
189
190pub type PopplerFormFieldType = c_int;
191pub const POPPLER_FORM_FIELD_UNKNOWN: PopplerFormFieldType = 0;
192pub const POPPLER_FORM_FIELD_BUTTON: PopplerFormFieldType = 1;
193pub const POPPLER_FORM_FIELD_TEXT: PopplerFormFieldType = 2;
194pub const POPPLER_FORM_FIELD_CHOICE: PopplerFormFieldType = 3;
195pub const POPPLER_FORM_FIELD_SIGNATURE: PopplerFormFieldType = 4;
196
197pub type PopplerFormTextType = c_int;
198pub const POPPLER_FORM_TEXT_NORMAL: PopplerFormTextType = 0;
199pub const POPPLER_FORM_TEXT_MULTILINE: PopplerFormTextType = 1;
200pub const POPPLER_FORM_TEXT_FILE_SELECT: PopplerFormTextType = 2;
201
202pub type PopplerMoviePlayMode = c_int;
203pub const POPPLER_MOVIE_PLAY_MODE_ONCE: PopplerMoviePlayMode = 0;
204pub const POPPLER_MOVIE_PLAY_MODE_OPEN: PopplerMoviePlayMode = 1;
205pub const POPPLER_MOVIE_PLAY_MODE_REPEAT: PopplerMoviePlayMode = 2;
206pub const POPPLER_MOVIE_PLAY_MODE_PALINDROME: PopplerMoviePlayMode = 3;
207
208pub type PopplerPDFConformance = c_int;
209pub const POPPLER_PDF_SUBTYPE_CONF_UNSET: PopplerPDFConformance = 0;
210pub const POPPLER_PDF_SUBTYPE_CONF_A: PopplerPDFConformance = 1;
211pub const POPPLER_PDF_SUBTYPE_CONF_B: PopplerPDFConformance = 2;
212pub const POPPLER_PDF_SUBTYPE_CONF_G: PopplerPDFConformance = 3;
213pub const POPPLER_PDF_SUBTYPE_CONF_N: PopplerPDFConformance = 4;
214pub const POPPLER_PDF_SUBTYPE_CONF_P: PopplerPDFConformance = 5;
215pub const POPPLER_PDF_SUBTYPE_CONF_PG: PopplerPDFConformance = 6;
216pub const POPPLER_PDF_SUBTYPE_CONF_U: PopplerPDFConformance = 7;
217pub const POPPLER_PDF_SUBTYPE_CONF_NONE: PopplerPDFConformance = 8;
218
219pub type PopplerPDFPart = c_int;
220pub const POPPLER_PDF_SUBTYPE_PART_UNSET: PopplerPDFPart = 0;
221pub const POPPLER_PDF_SUBTYPE_PART_1: PopplerPDFPart = 1;
222pub const POPPLER_PDF_SUBTYPE_PART_2: PopplerPDFPart = 2;
223pub const POPPLER_PDF_SUBTYPE_PART_3: PopplerPDFPart = 3;
224pub const POPPLER_PDF_SUBTYPE_PART_4: PopplerPDFPart = 4;
225pub const POPPLER_PDF_SUBTYPE_PART_5: PopplerPDFPart = 5;
226pub const POPPLER_PDF_SUBTYPE_PART_6: PopplerPDFPart = 6;
227pub const POPPLER_PDF_SUBTYPE_PART_7: PopplerPDFPart = 7;
228pub const POPPLER_PDF_SUBTYPE_PART_8: PopplerPDFPart = 8;
229pub const POPPLER_PDF_SUBTYPE_PART_NONE: PopplerPDFPart = 9;
230
231pub type PopplerPDFSubtype = c_int;
232pub const POPPLER_PDF_SUBTYPE_UNSET: PopplerPDFSubtype = 0;
233pub const POPPLER_PDF_SUBTYPE_PDF_A: PopplerPDFSubtype = 1;
234pub const POPPLER_PDF_SUBTYPE_PDF_E: PopplerPDFSubtype = 2;
235pub const POPPLER_PDF_SUBTYPE_PDF_UA: PopplerPDFSubtype = 3;
236pub const POPPLER_PDF_SUBTYPE_PDF_VT: PopplerPDFSubtype = 4;
237pub const POPPLER_PDF_SUBTYPE_PDF_X: PopplerPDFSubtype = 5;
238pub const POPPLER_PDF_SUBTYPE_NONE: PopplerPDFSubtype = 6;
239
240pub type PopplerPageLayout = c_int;
241pub const POPPLER_PAGE_LAYOUT_UNSET: PopplerPageLayout = 0;
242pub const POPPLER_PAGE_LAYOUT_SINGLE_PAGE: PopplerPageLayout = 1;
243pub const POPPLER_PAGE_LAYOUT_ONE_COLUMN: PopplerPageLayout = 2;
244pub const POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT: PopplerPageLayout = 3;
245pub const POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT: PopplerPageLayout = 4;
246pub const POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT: PopplerPageLayout = 5;
247pub const POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT: PopplerPageLayout = 6;
248
249pub type PopplerPageMode = c_int;
250pub const POPPLER_PAGE_MODE_UNSET: PopplerPageMode = 0;
251pub const POPPLER_PAGE_MODE_NONE: PopplerPageMode = 1;
252pub const POPPLER_PAGE_MODE_USE_OUTLINES: PopplerPageMode = 2;
253pub const POPPLER_PAGE_MODE_USE_THUMBS: PopplerPageMode = 3;
254pub const POPPLER_PAGE_MODE_FULL_SCREEN: PopplerPageMode = 4;
255pub const POPPLER_PAGE_MODE_USE_OC: PopplerPageMode = 5;
256pub const POPPLER_PAGE_MODE_USE_ATTACHMENTS: PopplerPageMode = 6;
257
258pub type PopplerPageTransitionAlignment = c_int;
259pub const POPPLER_PAGE_TRANSITION_HORIZONTAL: PopplerPageTransitionAlignment = 0;
260pub const POPPLER_PAGE_TRANSITION_VERTICAL: PopplerPageTransitionAlignment = 1;
261
262pub type PopplerPageTransitionDirection = c_int;
263pub const POPPLER_PAGE_TRANSITION_INWARD: PopplerPageTransitionDirection = 0;
264pub const POPPLER_PAGE_TRANSITION_OUTWARD: PopplerPageTransitionDirection = 1;
265
266pub type PopplerPageTransitionType = c_int;
267pub const POPPLER_PAGE_TRANSITION_REPLACE: PopplerPageTransitionType = 0;
268pub const POPPLER_PAGE_TRANSITION_SPLIT: PopplerPageTransitionType = 1;
269pub const POPPLER_PAGE_TRANSITION_BLINDS: PopplerPageTransitionType = 2;
270pub const POPPLER_PAGE_TRANSITION_BOX: PopplerPageTransitionType = 3;
271pub const POPPLER_PAGE_TRANSITION_WIPE: PopplerPageTransitionType = 4;
272pub const POPPLER_PAGE_TRANSITION_DISSOLVE: PopplerPageTransitionType = 5;
273pub const POPPLER_PAGE_TRANSITION_GLITTER: PopplerPageTransitionType = 6;
274pub const POPPLER_PAGE_TRANSITION_FLY: PopplerPageTransitionType = 7;
275pub const POPPLER_PAGE_TRANSITION_PUSH: PopplerPageTransitionType = 8;
276pub const POPPLER_PAGE_TRANSITION_COVER: PopplerPageTransitionType = 9;
277pub const POPPLER_PAGE_TRANSITION_UNCOVER: PopplerPageTransitionType = 10;
278pub const POPPLER_PAGE_TRANSITION_FADE: PopplerPageTransitionType = 11;
279
280pub type PopplerPrintDuplex = c_int;
281pub const POPPLER_PRINT_DUPLEX_NONE: PopplerPrintDuplex = 0;
282pub const POPPLER_PRINT_DUPLEX_SIMPLEX: PopplerPrintDuplex = 1;
283pub const POPPLER_PRINT_DUPLEX_DUPLEX_FLIP_SHORT_EDGE: PopplerPrintDuplex = 2;
284pub const POPPLER_PRINT_DUPLEX_DUPLEX_FLIP_LONG_EDGE: PopplerPrintDuplex = 3;
285
286pub type PopplerPrintScaling = c_int;
287pub const POPPLER_PRINT_SCALING_APP_DEFAULT: PopplerPrintScaling = 0;
288pub const POPPLER_PRINT_SCALING_NONE: PopplerPrintScaling = 1;
289
290pub type PopplerSelectionStyle = c_int;
291pub const POPPLER_SELECTION_GLYPH: PopplerSelectionStyle = 0;
292pub const POPPLER_SELECTION_WORD: PopplerSelectionStyle = 1;
293pub const POPPLER_SELECTION_LINE: PopplerSelectionStyle = 2;
294
295pub type PopplerSignatureStatus = c_int;
296pub const POPPLER_SIGNATURE_VALID: PopplerSignatureStatus = 0;
297pub const POPPLER_SIGNATURE_INVALID: PopplerSignatureStatus = 1;
298pub const POPPLER_SIGNATURE_DIGEST_MISMATCH: PopplerSignatureStatus = 2;
299pub const POPPLER_SIGNATURE_DECODING_ERROR: PopplerSignatureStatus = 3;
300pub const POPPLER_SIGNATURE_GENERIC_ERROR: PopplerSignatureStatus = 4;
301pub const POPPLER_SIGNATURE_NOT_FOUND: PopplerSignatureStatus = 5;
302pub const POPPLER_SIGNATURE_NOT_VERIFIED: PopplerSignatureStatus = 6;
303
304pub type PopplerStretch = c_int;
305pub const POPPLER_STRETCH_ULTRA_CONDENSED: PopplerStretch = 0;
306pub const POPPLER_STRETCH_EXTRA_CONDENSED: PopplerStretch = 1;
307pub const POPPLER_STRETCH_CONDENSED: PopplerStretch = 2;
308pub const POPPLER_STRETCH_SEMI_CONDENSED: PopplerStretch = 3;
309pub const POPPLER_STRETCH_NORMAL: PopplerStretch = 4;
310pub const POPPLER_STRETCH_SEMI_EXPANDED: PopplerStretch = 5;
311pub const POPPLER_STRETCH_EXPANDED: PopplerStretch = 6;
312pub const POPPLER_STRETCH_EXTRA_EXPANDED: PopplerStretch = 7;
313pub const POPPLER_STRETCH_ULTRA_EXPANDED: PopplerStretch = 8;
314
315pub type PopplerStructureBlockAlign = c_int;
316pub const POPPLER_STRUCTURE_BLOCK_ALIGN_BEFORE: PopplerStructureBlockAlign = 0;
317pub const POPPLER_STRUCTURE_BLOCK_ALIGN_MIDDLE: PopplerStructureBlockAlign = 1;
318pub const POPPLER_STRUCTURE_BLOCK_ALIGN_AFTER: PopplerStructureBlockAlign = 2;
319pub const POPPLER_STRUCTURE_BLOCK_ALIGN_JUSTIFY: PopplerStructureBlockAlign = 3;
320
321pub type PopplerStructureBorderStyle = c_int;
322pub const POPPLER_STRUCTURE_BORDER_STYLE_NONE: PopplerStructureBorderStyle = 0;
323pub const POPPLER_STRUCTURE_BORDER_STYLE_HIDDEN: PopplerStructureBorderStyle = 1;
324pub const POPPLER_STRUCTURE_BORDER_STYLE_DOTTED: PopplerStructureBorderStyle = 2;
325pub const POPPLER_STRUCTURE_BORDER_STYLE_DASHED: PopplerStructureBorderStyle = 3;
326pub const POPPLER_STRUCTURE_BORDER_STYLE_SOLID: PopplerStructureBorderStyle = 4;
327pub const POPPLER_STRUCTURE_BORDER_STYLE_DOUBLE: PopplerStructureBorderStyle = 5;
328pub const POPPLER_STRUCTURE_BORDER_STYLE_GROOVE: PopplerStructureBorderStyle = 6;
329pub const POPPLER_STRUCTURE_BORDER_STYLE_INSET: PopplerStructureBorderStyle = 7;
330pub const POPPLER_STRUCTURE_BORDER_STYLE_OUTSET: PopplerStructureBorderStyle = 8;
331
332pub type PopplerStructureElementKind = c_int;
333pub const POPPLER_STRUCTURE_ELEMENT_CONTENT: PopplerStructureElementKind = 0;
334pub const POPPLER_STRUCTURE_ELEMENT_OBJECT_REFERENCE: PopplerStructureElementKind = 1;
335pub const POPPLER_STRUCTURE_ELEMENT_DOCUMENT: PopplerStructureElementKind = 2;
336pub const POPPLER_STRUCTURE_ELEMENT_PART: PopplerStructureElementKind = 3;
337pub const POPPLER_STRUCTURE_ELEMENT_ARTICLE: PopplerStructureElementKind = 4;
338pub const POPPLER_STRUCTURE_ELEMENT_SECTION: PopplerStructureElementKind = 5;
339pub const POPPLER_STRUCTURE_ELEMENT_DIV: PopplerStructureElementKind = 6;
340pub const POPPLER_STRUCTURE_ELEMENT_SPAN: PopplerStructureElementKind = 7;
341pub const POPPLER_STRUCTURE_ELEMENT_QUOTE: PopplerStructureElementKind = 8;
342pub const POPPLER_STRUCTURE_ELEMENT_NOTE: PopplerStructureElementKind = 9;
343pub const POPPLER_STRUCTURE_ELEMENT_REFERENCE: PopplerStructureElementKind = 10;
344pub const POPPLER_STRUCTURE_ELEMENT_BIBENTRY: PopplerStructureElementKind = 11;
345pub const POPPLER_STRUCTURE_ELEMENT_CODE: PopplerStructureElementKind = 12;
346pub const POPPLER_STRUCTURE_ELEMENT_LINK: PopplerStructureElementKind = 13;
347pub const POPPLER_STRUCTURE_ELEMENT_ANNOT: PopplerStructureElementKind = 14;
348pub const POPPLER_STRUCTURE_ELEMENT_BLOCKQUOTE: PopplerStructureElementKind = 15;
349pub const POPPLER_STRUCTURE_ELEMENT_CAPTION: PopplerStructureElementKind = 16;
350pub const POPPLER_STRUCTURE_ELEMENT_NONSTRUCT: PopplerStructureElementKind = 17;
351pub const POPPLER_STRUCTURE_ELEMENT_TOC: PopplerStructureElementKind = 18;
352pub const POPPLER_STRUCTURE_ELEMENT_TOC_ITEM: PopplerStructureElementKind = 19;
353pub const POPPLER_STRUCTURE_ELEMENT_INDEX: PopplerStructureElementKind = 20;
354pub const POPPLER_STRUCTURE_ELEMENT_PRIVATE: PopplerStructureElementKind = 21;
355pub const POPPLER_STRUCTURE_ELEMENT_PARAGRAPH: PopplerStructureElementKind = 22;
356pub const POPPLER_STRUCTURE_ELEMENT_HEADING: PopplerStructureElementKind = 23;
357pub const POPPLER_STRUCTURE_ELEMENT_HEADING_1: PopplerStructureElementKind = 24;
358pub const POPPLER_STRUCTURE_ELEMENT_HEADING_2: PopplerStructureElementKind = 25;
359pub const POPPLER_STRUCTURE_ELEMENT_HEADING_3: PopplerStructureElementKind = 26;
360pub const POPPLER_STRUCTURE_ELEMENT_HEADING_4: PopplerStructureElementKind = 27;
361pub const POPPLER_STRUCTURE_ELEMENT_HEADING_5: PopplerStructureElementKind = 28;
362pub const POPPLER_STRUCTURE_ELEMENT_HEADING_6: PopplerStructureElementKind = 29;
363pub const POPPLER_STRUCTURE_ELEMENT_LIST: PopplerStructureElementKind = 30;
364pub const POPPLER_STRUCTURE_ELEMENT_LIST_ITEM: PopplerStructureElementKind = 31;
365pub const POPPLER_STRUCTURE_ELEMENT_LIST_LABEL: PopplerStructureElementKind = 32;
366pub const POPPLER_STRUCTURE_ELEMENT_LIST_BODY: PopplerStructureElementKind = 33;
367pub const POPPLER_STRUCTURE_ELEMENT_TABLE: PopplerStructureElementKind = 34;
368pub const POPPLER_STRUCTURE_ELEMENT_TABLE_ROW: PopplerStructureElementKind = 35;
369pub const POPPLER_STRUCTURE_ELEMENT_TABLE_HEADING: PopplerStructureElementKind = 36;
370pub const POPPLER_STRUCTURE_ELEMENT_TABLE_DATA: PopplerStructureElementKind = 37;
371pub const POPPLER_STRUCTURE_ELEMENT_TABLE_HEADER: PopplerStructureElementKind = 38;
372pub const POPPLER_STRUCTURE_ELEMENT_TABLE_FOOTER: PopplerStructureElementKind = 39;
373pub const POPPLER_STRUCTURE_ELEMENT_TABLE_BODY: PopplerStructureElementKind = 40;
374pub const POPPLER_STRUCTURE_ELEMENT_RUBY: PopplerStructureElementKind = 41;
375pub const POPPLER_STRUCTURE_ELEMENT_RUBY_BASE_TEXT: PopplerStructureElementKind = 42;
376pub const POPPLER_STRUCTURE_ELEMENT_RUBY_ANNOT_TEXT: PopplerStructureElementKind = 43;
377pub const POPPLER_STRUCTURE_ELEMENT_RUBY_PUNCTUATION: PopplerStructureElementKind = 44;
378pub const POPPLER_STRUCTURE_ELEMENT_WARICHU: PopplerStructureElementKind = 45;
379pub const POPPLER_STRUCTURE_ELEMENT_WARICHU_TEXT: PopplerStructureElementKind = 46;
380pub const POPPLER_STRUCTURE_ELEMENT_WARICHU_PUNCTUATION: PopplerStructureElementKind = 47;
381pub const POPPLER_STRUCTURE_ELEMENT_FIGURE: PopplerStructureElementKind = 48;
382pub const POPPLER_STRUCTURE_ELEMENT_FORMULA: PopplerStructureElementKind = 49;
383pub const POPPLER_STRUCTURE_ELEMENT_FORM: PopplerStructureElementKind = 50;
384
385pub type PopplerStructureFormRole = c_int;
386pub const POPPLER_STRUCTURE_FORM_ROLE_UNDEFINED: PopplerStructureFormRole = 0;
387pub const POPPLER_STRUCTURE_FORM_ROLE_RADIO_BUTTON: PopplerStructureFormRole = 1;
388pub const POPPLER_STRUCTURE_FORM_ROLE_PUSH_BUTTON: PopplerStructureFormRole = 2;
389pub const POPPLER_STRUCTURE_FORM_ROLE_TEXT_VALUE: PopplerStructureFormRole = 3;
390pub const POPPLER_STRUCTURE_FORM_ROLE_CHECKBOX: PopplerStructureFormRole = 4;
391
392pub type PopplerStructureFormState = c_int;
393pub const POPPLER_STRUCTURE_FORM_STATE_ON: PopplerStructureFormState = 0;
394pub const POPPLER_STRUCTURE_FORM_STATE_OFF: PopplerStructureFormState = 1;
395pub const POPPLER_STRUCTURE_FORM_STATE_NEUTRAL: PopplerStructureFormState = 2;
396
397pub type PopplerStructureGlyphOrientation = c_int;
398pub const POPPLER_STRUCTURE_GLYPH_ORIENTATION_AUTO: PopplerStructureGlyphOrientation = 0;
399pub const POPPLER_STRUCTURE_GLYPH_ORIENTATION_0: PopplerStructureGlyphOrientation = 0;
400pub const POPPLER_STRUCTURE_GLYPH_ORIENTATION_90: PopplerStructureGlyphOrientation = 1;
401pub const POPPLER_STRUCTURE_GLYPH_ORIENTATION_180: PopplerStructureGlyphOrientation = 2;
402pub const POPPLER_STRUCTURE_GLYPH_ORIENTATION_270: PopplerStructureGlyphOrientation = 3;
403
404pub type PopplerStructureInlineAlign = c_int;
405pub const POPPLER_STRUCTURE_INLINE_ALIGN_START: PopplerStructureInlineAlign = 0;
406pub const POPPLER_STRUCTURE_INLINE_ALIGN_CENTER: PopplerStructureInlineAlign = 1;
407pub const POPPLER_STRUCTURE_INLINE_ALIGN_END: PopplerStructureInlineAlign = 2;
408
409pub type PopplerStructureListNumbering = c_int;
410pub const POPPLER_STRUCTURE_LIST_NUMBERING_NONE: PopplerStructureListNumbering = 0;
411pub const POPPLER_STRUCTURE_LIST_NUMBERING_DISC: PopplerStructureListNumbering = 1;
412pub const POPPLER_STRUCTURE_LIST_NUMBERING_CIRCLE: PopplerStructureListNumbering = 2;
413pub const POPPLER_STRUCTURE_LIST_NUMBERING_SQUARE: PopplerStructureListNumbering = 3;
414pub const POPPLER_STRUCTURE_LIST_NUMBERING_DECIMAL: PopplerStructureListNumbering = 4;
415pub const POPPLER_STRUCTURE_LIST_NUMBERING_UPPER_ROMAN: PopplerStructureListNumbering = 5;
416pub const POPPLER_STRUCTURE_LIST_NUMBERING_LOWER_ROMAN: PopplerStructureListNumbering = 6;
417pub const POPPLER_STRUCTURE_LIST_NUMBERING_UPPER_ALPHA: PopplerStructureListNumbering = 7;
418pub const POPPLER_STRUCTURE_LIST_NUMBERING_LOWER_ALPHA: PopplerStructureListNumbering = 8;
419
420pub type PopplerStructurePlacement = c_int;
421pub const POPPLER_STRUCTURE_PLACEMENT_BLOCK: PopplerStructurePlacement = 0;
422pub const POPPLER_STRUCTURE_PLACEMENT_INLINE: PopplerStructurePlacement = 1;
423pub const POPPLER_STRUCTURE_PLACEMENT_BEFORE: PopplerStructurePlacement = 2;
424pub const POPPLER_STRUCTURE_PLACEMENT_START: PopplerStructurePlacement = 3;
425pub const POPPLER_STRUCTURE_PLACEMENT_END: PopplerStructurePlacement = 4;
426
427pub type PopplerStructureRubyAlign = c_int;
428pub const POPPLER_STRUCTURE_RUBY_ALIGN_START: PopplerStructureRubyAlign = 0;
429pub const POPPLER_STRUCTURE_RUBY_ALIGN_CENTER: PopplerStructureRubyAlign = 1;
430pub const POPPLER_STRUCTURE_RUBY_ALIGN_END: PopplerStructureRubyAlign = 2;
431pub const POPPLER_STRUCTURE_RUBY_ALIGN_JUSTIFY: PopplerStructureRubyAlign = 3;
432pub const POPPLER_STRUCTURE_RUBY_ALIGN_DISTRIBUTE: PopplerStructureRubyAlign = 4;
433
434pub type PopplerStructureRubyPosition = c_int;
435pub const POPPLER_STRUCTURE_RUBY_POSITION_BEFORE: PopplerStructureRubyPosition = 0;
436pub const POPPLER_STRUCTURE_RUBY_POSITION_AFTER: PopplerStructureRubyPosition = 1;
437pub const POPPLER_STRUCTURE_RUBY_POSITION_WARICHU: PopplerStructureRubyPosition = 2;
438pub const POPPLER_STRUCTURE_RUBY_POSITION_INLINE: PopplerStructureRubyPosition = 3;
439
440pub type PopplerStructureTableScope = c_int;
441pub const POPPLER_STRUCTURE_TABLE_SCOPE_ROW: PopplerStructureTableScope = 0;
442pub const POPPLER_STRUCTURE_TABLE_SCOPE_COLUMN: PopplerStructureTableScope = 1;
443pub const POPPLER_STRUCTURE_TABLE_SCOPE_BOTH: PopplerStructureTableScope = 2;
444
445pub type PopplerStructureTextAlign = c_int;
446pub const POPPLER_STRUCTURE_TEXT_ALIGN_START: PopplerStructureTextAlign = 0;
447pub const POPPLER_STRUCTURE_TEXT_ALIGN_CENTER: PopplerStructureTextAlign = 1;
448pub const POPPLER_STRUCTURE_TEXT_ALIGN_END: PopplerStructureTextAlign = 2;
449pub const POPPLER_STRUCTURE_TEXT_ALIGN_JUSTIFY: PopplerStructureTextAlign = 3;
450
451pub type PopplerStructureTextDecoration = c_int;
452pub const POPPLER_STRUCTURE_TEXT_DECORATION_NONE: PopplerStructureTextDecoration = 0;
453pub const POPPLER_STRUCTURE_TEXT_DECORATION_UNDERLINE: PopplerStructureTextDecoration = 1;
454pub const POPPLER_STRUCTURE_TEXT_DECORATION_OVERLINE: PopplerStructureTextDecoration = 2;
455pub const POPPLER_STRUCTURE_TEXT_DECORATION_LINETHROUGH: PopplerStructureTextDecoration = 3;
456
457pub type PopplerStructureWritingMode = c_int;
458pub const POPPLER_STRUCTURE_WRITING_MODE_LR_TB: PopplerStructureWritingMode = 0;
459pub const POPPLER_STRUCTURE_WRITING_MODE_RL_TB: PopplerStructureWritingMode = 1;
460pub const POPPLER_STRUCTURE_WRITING_MODE_TB_RL: PopplerStructureWritingMode = 2;
461
462pub type PopplerStyle = c_int;
463pub const POPPLER_STYLE_NORMAL: PopplerStyle = 0;
464pub const POPPLER_STYLE_OBLIQUE: PopplerStyle = 1;
465pub const POPPLER_STYLE_ITALIC: PopplerStyle = 2;
466
467pub type PopplerWeight = c_int;
468pub const POPPLER_WEIGHT_THIN: PopplerWeight = 100;
469pub const POPPLER_WEIGHT_ULTRALIGHT: PopplerWeight = 200;
470pub const POPPLER_WEIGHT_LIGHT: PopplerWeight = 300;
471pub const POPPLER_WEIGHT_NORMAL: PopplerWeight = 400;
472pub const POPPLER_WEIGHT_MEDIUM: PopplerWeight = 500;
473pub const POPPLER_WEIGHT_SEMIBOLD: PopplerWeight = 600;
474pub const POPPLER_WEIGHT_BOLD: PopplerWeight = 700;
475pub const POPPLER_WEIGHT_ULTRABOLD: PopplerWeight = 800;
476pub const POPPLER_WEIGHT_HEAVY: PopplerWeight = 900;
477
478// Constants
479pub const POPPLER_ANNOT_TEXT_ICON_CIRCLE: &[u8] = b"Circle\0";
480pub const POPPLER_ANNOT_TEXT_ICON_COMMENT: &[u8] = b"Comment\0";
481pub const POPPLER_ANNOT_TEXT_ICON_CROSS: &[u8] = b"Cross\0";
482pub const POPPLER_ANNOT_TEXT_ICON_HELP: &[u8] = b"Help\0";
483pub const POPPLER_ANNOT_TEXT_ICON_INSERT: &[u8] = b"Insert\0";
484pub const POPPLER_ANNOT_TEXT_ICON_KEY: &[u8] = b"Key\0";
485pub const POPPLER_ANNOT_TEXT_ICON_NEW_PARAGRAPH: &[u8] = b"NewParagraph\0";
486pub const POPPLER_ANNOT_TEXT_ICON_NOTE: &[u8] = b"Note\0";
487pub const POPPLER_ANNOT_TEXT_ICON_PARAGRAPH: &[u8] = b"Paragraph\0";
488pub const POPPLER_HAS_CAIRO: c_int = 1;
489
490// Flags
491pub type PopplerAnnotFlag = c_uint;
492pub const POPPLER_ANNOT_FLAG_UNKNOWN: PopplerAnnotFlag = 0;
493pub const POPPLER_ANNOT_FLAG_INVISIBLE: PopplerAnnotFlag = 1;
494pub const POPPLER_ANNOT_FLAG_HIDDEN: PopplerAnnotFlag = 2;
495pub const POPPLER_ANNOT_FLAG_PRINT: PopplerAnnotFlag = 4;
496pub const POPPLER_ANNOT_FLAG_NO_ZOOM: PopplerAnnotFlag = 8;
497pub const POPPLER_ANNOT_FLAG_NO_ROTATE: PopplerAnnotFlag = 16;
498pub const POPPLER_ANNOT_FLAG_NO_VIEW: PopplerAnnotFlag = 32;
499pub const POPPLER_ANNOT_FLAG_READ_ONLY: PopplerAnnotFlag = 64;
500pub const POPPLER_ANNOT_FLAG_LOCKED: PopplerAnnotFlag = 128;
501pub const POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW: PopplerAnnotFlag = 256;
502pub const POPPLER_ANNOT_FLAG_LOCKED_CONTENTS: PopplerAnnotFlag = 512;
503
504pub type PopplerFindFlags = c_uint;
505pub const POPPLER_FIND_DEFAULT: PopplerFindFlags = 0;
506pub const POPPLER_FIND_CASE_SENSITIVE: PopplerFindFlags = 1;
507pub const POPPLER_FIND_BACKWARDS: PopplerFindFlags = 2;
508pub const POPPLER_FIND_WHOLE_WORDS_ONLY: PopplerFindFlags = 4;
509pub const POPPLER_FIND_IGNORE_DIACRITICS: PopplerFindFlags = 8;
510pub const POPPLER_FIND_MULTILINE: PopplerFindFlags = 16;
511
512pub type PopplerPermissions = c_uint;
513pub const POPPLER_PERMISSIONS_OK_TO_PRINT: PopplerPermissions = 1;
514pub const POPPLER_PERMISSIONS_OK_TO_MODIFY: PopplerPermissions = 2;
515pub const POPPLER_PERMISSIONS_OK_TO_COPY: PopplerPermissions = 4;
516pub const POPPLER_PERMISSIONS_OK_TO_ADD_NOTES: PopplerPermissions = 8;
517pub const POPPLER_PERMISSIONS_OK_TO_FILL_FORM: PopplerPermissions = 16;
518pub const POPPLER_PERMISSIONS_OK_TO_EXTRACT_CONTENTS: PopplerPermissions = 32;
519pub const POPPLER_PERMISSIONS_OK_TO_ASSEMBLE: PopplerPermissions = 64;
520pub const POPPLER_PERMISSIONS_OK_TO_PRINT_HIGH_RESOLUTION: PopplerPermissions = 128;
521pub const POPPLER_PERMISSIONS_FULL: PopplerPermissions = 255;
522
523pub type PopplerPrintFlags = c_uint;
524pub const POPPLER_PRINT_DOCUMENT: PopplerPrintFlags = 0;
525pub const POPPLER_PRINT_MARKUP_ANNOTS: PopplerPrintFlags = 1;
526pub const POPPLER_PRINT_STAMP_ANNOTS_ONLY: PopplerPrintFlags = 2;
527pub const POPPLER_PRINT_ALL: PopplerPrintFlags = 1;
528
529pub type PopplerRenderAnnotsFlags = c_uint;
530pub const POPPLER_RENDER_ANNOTS_NONE: PopplerRenderAnnotsFlags = 0;
531pub const POPPLER_RENDER_ANNOTS_TEXT: PopplerRenderAnnotsFlags = 1;
532pub const POPPLER_RENDER_ANNOTS_LINK: PopplerRenderAnnotsFlags = 2;
533pub const POPPLER_RENDER_ANNOTS_FREETEXT: PopplerRenderAnnotsFlags = 4;
534pub const POPPLER_RENDER_ANNOTS_LINE: PopplerRenderAnnotsFlags = 8;
535pub const POPPLER_RENDER_ANNOTS_SQUARE: PopplerRenderAnnotsFlags = 16;
536pub const POPPLER_RENDER_ANNOTS_CIRCLE: PopplerRenderAnnotsFlags = 32;
537pub const POPPLER_RENDER_ANNOTS_POLYGON: PopplerRenderAnnotsFlags = 64;
538pub const POPPLER_RENDER_ANNOTS_POLYLINE: PopplerRenderAnnotsFlags = 128;
539pub const POPPLER_RENDER_ANNOTS_HIGHLIGHT: PopplerRenderAnnotsFlags = 256;
540pub const POPPLER_RENDER_ANNOTS_UNDERLINE: PopplerRenderAnnotsFlags = 512;
541pub const POPPLER_RENDER_ANNOTS_SQUIGGLY: PopplerRenderAnnotsFlags = 1024;
542pub const POPPLER_RENDER_ANNOTS_STRIKEOUT: PopplerRenderAnnotsFlags = 2048;
543pub const POPPLER_RENDER_ANNOTS_STAMP: PopplerRenderAnnotsFlags = 4096;
544pub const POPPLER_RENDER_ANNOTS_CARET: PopplerRenderAnnotsFlags = 8192;
545pub const POPPLER_RENDER_ANNOTS_INK: PopplerRenderAnnotsFlags = 16384;
546pub const POPPLER_RENDER_ANNOTS_POPUP: PopplerRenderAnnotsFlags = 32768;
547pub const POPPLER_RENDER_ANNOTS_FILEATTACHMENT: PopplerRenderAnnotsFlags = 65536;
548pub const POPPLER_RENDER_ANNOTS_SOUND: PopplerRenderAnnotsFlags = 131072;
549pub const POPPLER_RENDER_ANNOTS_MOVIE: PopplerRenderAnnotsFlags = 262144;
550pub const POPPLER_RENDER_ANNOTS_WIDGET: PopplerRenderAnnotsFlags = 524288;
551pub const POPPLER_RENDER_ANNOTS_SCREEN: PopplerRenderAnnotsFlags = 1048576;
552pub const POPPLER_RENDER_ANNOTS_PRINTERMARK: PopplerRenderAnnotsFlags = 2097152;
553pub const POPPLER_RENDER_ANNOTS_TRAPNET: PopplerRenderAnnotsFlags = 4194304;
554pub const POPPLER_RENDER_ANNOTS_WATERMARK: PopplerRenderAnnotsFlags = 8388608;
555pub const POPPLER_RENDER_ANNOTS_3D: PopplerRenderAnnotsFlags = 16777216;
556pub const POPPLER_RENDER_ANNOTS_RICHMEDIA: PopplerRenderAnnotsFlags = 33554432;
557pub const POPPLER_RENDER_ANNOTS_PRINT_DOCUMENT: PopplerRenderAnnotsFlags = 524288;
558pub const POPPLER_RENDER_ANNOTS_PRINT_MARKUP: PopplerRenderAnnotsFlags = 4262166525;
559pub const POPPLER_RENDER_ANNOTS_PRINT_STAMP: PopplerRenderAnnotsFlags = 528384;
560pub const POPPLER_RENDER_ANNOTS_PRINT_ALL: PopplerRenderAnnotsFlags = 4262166525;
561pub const POPPLER_RENDER_ANNOTS_ALL: PopplerRenderAnnotsFlags = 67108863;
562
563pub type PopplerSignatureValidationFlags = c_uint;
564pub const POPPLER_SIGNATURE_VALIDATION_FLAG_VALIDATE_CERTIFICATE: PopplerSignatureValidationFlags =
565    1;
566pub const POPPLER_SIGNATURE_VALIDATION_FLAG_WITHOUT_OCSP_REVOCATION_CHECK:
567    PopplerSignatureValidationFlags = 2;
568pub const POPPLER_SIGNATURE_VALIDATION_FLAG_USE_AIA_CERTIFICATE_FETCH:
569    PopplerSignatureValidationFlags = 4;
570
571pub type PopplerStructureGetTextFlags = c_uint;
572pub const POPPLER_STRUCTURE_GET_TEXT_NONE: PopplerStructureGetTextFlags = 0;
573pub const POPPLER_STRUCTURE_GET_TEXT_RECURSIVE: PopplerStructureGetTextFlags = 1;
574
575pub type PopplerViewerPreferences = c_uint;
576pub const POPPLER_VIEWER_PREFERENCES_UNSET: PopplerViewerPreferences = 0;
577pub const POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR: PopplerViewerPreferences = 1;
578pub const POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR: PopplerViewerPreferences = 2;
579pub const POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI: PopplerViewerPreferences = 4;
580pub const POPPLER_VIEWER_PREFERENCES_FIT_WINDOW: PopplerViewerPreferences = 8;
581pub const POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW: PopplerViewerPreferences = 16;
582pub const POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE: PopplerViewerPreferences = 32;
583pub const POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL: PopplerViewerPreferences = 64;
584
585// Unions
586#[derive(Copy, Clone)]
587#[repr(C)]
588pub union PopplerAction {
589    pub type_: PopplerActionType,
590    pub any: PopplerActionAny,
591    pub goto_dest: PopplerActionGotoDest,
592    pub goto_remote: PopplerActionGotoRemote,
593    pub launch: PopplerActionLaunch,
594    pub uri: PopplerActionUri,
595    pub named: PopplerActionNamed,
596    pub movie: PopplerActionMovie,
597    pub rendition: PopplerActionRendition,
598    pub ocg_state: PopplerActionOCGState,
599    pub javascript: PopplerActionJavascript,
600    pub reset_form: PopplerActionResetForm,
601}
602
603impl ::std::fmt::Debug for PopplerAction {
604    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
605        f.debug_struct(&format!("PopplerAction @ {self:p}"))
606            .field("type_", unsafe { &self.type_ })
607            .field("any", unsafe { &self.any })
608            .field("goto_dest", unsafe { &self.goto_dest })
609            .field("goto_remote", unsafe { &self.goto_remote })
610            .field("launch", unsafe { &self.launch })
611            .field("uri", unsafe { &self.uri })
612            .field("named", unsafe { &self.named })
613            .field("movie", unsafe { &self.movie })
614            .field("rendition", unsafe { &self.rendition })
615            .field("ocg_state", unsafe { &self.ocg_state })
616            .field("javascript", unsafe { &self.javascript })
617            .field("reset_form", unsafe { &self.reset_form })
618            .finish()
619    }
620}
621
622// Callbacks
623pub type PopplerAttachmentSaveFunc =
624    Option<unsafe extern "C" fn(*const u8, size_t, gpointer, *mut *mut glib::GError) -> gboolean>;
625pub type PopplerMediaSaveFunc =
626    Option<unsafe extern "C" fn(*const u8, size_t, gpointer, *mut *mut glib::GError) -> gboolean>;
627pub type PopplerNssPasswordFunc = Option<unsafe extern "C" fn(*const c_char) -> *mut c_char>;
628
629// Records
630#[derive(Copy, Clone)]
631#[repr(C)]
632pub struct PopplerActionAny {
633    pub type_: PopplerActionType,
634    pub title: *mut c_char,
635}
636
637impl ::std::fmt::Debug for PopplerActionAny {
638    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
639        f.debug_struct(&format!("PopplerActionAny @ {self:p}"))
640            .field("type_", &self.type_)
641            .field("title", &self.title)
642            .finish()
643    }
644}
645
646#[derive(Copy, Clone)]
647#[repr(C)]
648pub struct PopplerActionGotoDest {
649    pub type_: PopplerActionType,
650    pub title: *mut c_char,
651    pub dest: *mut PopplerDest,
652}
653
654impl ::std::fmt::Debug for PopplerActionGotoDest {
655    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
656        f.debug_struct(&format!("PopplerActionGotoDest @ {self:p}"))
657            .field("type_", &self.type_)
658            .field("title", &self.title)
659            .field("dest", &self.dest)
660            .finish()
661    }
662}
663
664#[derive(Copy, Clone)]
665#[repr(C)]
666pub struct PopplerActionGotoRemote {
667    pub type_: PopplerActionType,
668    pub title: *mut c_char,
669    pub file_name: *mut c_char,
670    pub dest: *mut PopplerDest,
671}
672
673impl ::std::fmt::Debug for PopplerActionGotoRemote {
674    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
675        f.debug_struct(&format!("PopplerActionGotoRemote @ {self:p}"))
676            .field("type_", &self.type_)
677            .field("title", &self.title)
678            .field("file_name", &self.file_name)
679            .field("dest", &self.dest)
680            .finish()
681    }
682}
683
684#[derive(Copy, Clone)]
685#[repr(C)]
686pub struct PopplerActionJavascript {
687    pub type_: PopplerActionType,
688    pub title: *mut c_char,
689    pub script: *mut c_char,
690}
691
692impl ::std::fmt::Debug for PopplerActionJavascript {
693    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
694        f.debug_struct(&format!("PopplerActionJavascript @ {self:p}"))
695            .field("type_", &self.type_)
696            .field("title", &self.title)
697            .field("script", &self.script)
698            .finish()
699    }
700}
701
702#[derive(Copy, Clone)]
703#[repr(C)]
704pub struct PopplerActionLaunch {
705    pub type_: PopplerActionType,
706    pub title: *mut c_char,
707    pub file_name: *mut c_char,
708    pub params: *mut c_char,
709}
710
711impl ::std::fmt::Debug for PopplerActionLaunch {
712    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
713        f.debug_struct(&format!("PopplerActionLaunch @ {self:p}"))
714            .field("type_", &self.type_)
715            .field("title", &self.title)
716            .field("file_name", &self.file_name)
717            .field("params", &self.params)
718            .finish()
719    }
720}
721
722#[derive(Copy, Clone)]
723#[repr(C)]
724pub struct PopplerActionLayer {
725    pub action: PopplerActionLayerAction,
726    pub layers: *mut glib::GList,
727}
728
729impl ::std::fmt::Debug for PopplerActionLayer {
730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
731        f.debug_struct(&format!("PopplerActionLayer @ {self:p}"))
732            .field("action", &self.action)
733            .field("layers", &self.layers)
734            .finish()
735    }
736}
737
738#[derive(Copy, Clone)]
739#[repr(C)]
740pub struct PopplerActionMovie {
741    pub type_: PopplerActionType,
742    pub title: *mut c_char,
743    pub operation: PopplerActionMovieOperation,
744    pub movie: *mut PopplerMovie,
745}
746
747impl ::std::fmt::Debug for PopplerActionMovie {
748    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
749        f.debug_struct(&format!("PopplerActionMovie @ {self:p}"))
750            .field("type_", &self.type_)
751            .field("title", &self.title)
752            .field("operation", &self.operation)
753            .field("movie", &self.movie)
754            .finish()
755    }
756}
757
758#[derive(Copy, Clone)]
759#[repr(C)]
760pub struct PopplerActionNamed {
761    pub type_: PopplerActionType,
762    pub title: *mut c_char,
763    pub named_dest: *mut c_char,
764}
765
766impl ::std::fmt::Debug for PopplerActionNamed {
767    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
768        f.debug_struct(&format!("PopplerActionNamed @ {self:p}"))
769            .field("type_", &self.type_)
770            .field("title", &self.title)
771            .field("named_dest", &self.named_dest)
772            .finish()
773    }
774}
775
776#[derive(Copy, Clone)]
777#[repr(C)]
778pub struct PopplerActionOCGState {
779    pub type_: PopplerActionType,
780    pub title: *mut c_char,
781    pub state_list: *mut glib::GList,
782}
783
784impl ::std::fmt::Debug for PopplerActionOCGState {
785    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
786        f.debug_struct(&format!("PopplerActionOCGState @ {self:p}"))
787            .field("type_", &self.type_)
788            .field("title", &self.title)
789            .field("state_list", &self.state_list)
790            .finish()
791    }
792}
793
794#[derive(Copy, Clone)]
795#[repr(C)]
796pub struct PopplerActionRendition {
797    pub type_: PopplerActionType,
798    pub title: *mut c_char,
799    pub op: c_int,
800    pub media: *mut PopplerMedia,
801}
802
803impl ::std::fmt::Debug for PopplerActionRendition {
804    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
805        f.debug_struct(&format!("PopplerActionRendition @ {self:p}"))
806            .field("type_", &self.type_)
807            .field("title", &self.title)
808            .field("op", &self.op)
809            .field("media", &self.media)
810            .finish()
811    }
812}
813
814#[derive(Copy, Clone)]
815#[repr(C)]
816pub struct PopplerActionResetForm {
817    pub type_: PopplerActionType,
818    pub title: *mut c_char,
819    pub fields: *mut glib::GList,
820    pub exclude: gboolean,
821}
822
823impl ::std::fmt::Debug for PopplerActionResetForm {
824    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
825        f.debug_struct(&format!("PopplerActionResetForm @ {self:p}"))
826            .field("type_", &self.type_)
827            .field("title", &self.title)
828            .field("fields", &self.fields)
829            .field("exclude", &self.exclude)
830            .finish()
831    }
832}
833
834#[derive(Copy, Clone)]
835#[repr(C)]
836pub struct PopplerActionUri {
837    pub type_: PopplerActionType,
838    pub title: *mut c_char,
839    pub uri: *mut c_char,
840}
841
842impl ::std::fmt::Debug for PopplerActionUri {
843    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
844        f.debug_struct(&format!("PopplerActionUri @ {self:p}"))
845            .field("type_", &self.type_)
846            .field("title", &self.title)
847            .field("uri", &self.uri)
848            .finish()
849    }
850}
851
852#[derive(Copy, Clone)]
853#[repr(C)]
854pub struct PopplerAnnotCalloutLine {
855    pub multiline: gboolean,
856    pub x1: c_double,
857    pub y1: c_double,
858    pub x2: c_double,
859    pub y2: c_double,
860    pub x3: c_double,
861    pub y3: c_double,
862}
863
864impl ::std::fmt::Debug for PopplerAnnotCalloutLine {
865    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
866        f.debug_struct(&format!("PopplerAnnotCalloutLine @ {self:p}"))
867            .field("multiline", &self.multiline)
868            .field("x1", &self.x1)
869            .field("y1", &self.y1)
870            .field("x2", &self.x2)
871            .field("y2", &self.y2)
872            .field("x3", &self.x3)
873            .field("y3", &self.y3)
874            .finish()
875    }
876}
877
878#[derive(Copy, Clone)]
879#[repr(C)]
880pub struct PopplerAnnotMapping {
881    pub area: PopplerRectangle,
882    pub annot: *mut PopplerAnnot,
883}
884
885impl ::std::fmt::Debug for PopplerAnnotMapping {
886    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
887        f.debug_struct(&format!("PopplerAnnotMapping @ {self:p}"))
888            .field("area", &self.area)
889            .field("annot", &self.annot)
890            .finish()
891    }
892}
893
894#[derive(Copy, Clone)]
895#[repr(C)]
896pub struct PopplerAttachmentClass {
897    pub parent_class: gobject::GObjectClass,
898}
899
900impl ::std::fmt::Debug for PopplerAttachmentClass {
901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
902        f.debug_struct(&format!("PopplerAttachmentClass @ {self:p}"))
903            .field("parent_class", &self.parent_class)
904            .finish()
905    }
906}
907
908#[repr(C)]
909#[allow(dead_code)]
910pub struct PopplerCertificateInfo {
911    _data: [u8; 0],
912    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
913}
914
915impl ::std::fmt::Debug for PopplerCertificateInfo {
916    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
917        f.debug_struct(&format!("PopplerCertificateInfo @ {self:p}"))
918            .finish()
919    }
920}
921
922#[derive(Copy, Clone)]
923#[repr(C)]
924pub struct PopplerColor {
925    pub red: u16,
926    pub green: u16,
927    pub blue: u16,
928}
929
930impl ::std::fmt::Debug for PopplerColor {
931    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
932        f.debug_struct(&format!("PopplerColor @ {self:p}"))
933            .field("red", &self.red)
934            .field("green", &self.green)
935            .field("blue", &self.blue)
936            .finish()
937    }
938}
939
940#[repr(C)]
941#[allow(dead_code)]
942pub struct PopplerDest {
943    pub type_: PopplerDestType,
944    pub page_num: c_int,
945    pub left: c_double,
946    pub bottom: c_double,
947    pub right: c_double,
948    pub top: c_double,
949    pub zoom: c_double,
950    pub named_dest: *mut c_char,
951    pub change_left: c_uint,
952    _truncated_record_marker: c_void,
953    // field change_top has incomplete type
954}
955
956impl ::std::fmt::Debug for PopplerDest {
957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
958        f.debug_struct(&format!("PopplerDest @ {self:p}"))
959            .field("type_", &self.type_)
960            .field("page_num", &self.page_num)
961            .field("left", &self.left)
962            .field("bottom", &self.bottom)
963            .field("right", &self.right)
964            .field("top", &self.top)
965            .field("zoom", &self.zoom)
966            .field("named_dest", &self.named_dest)
967            .field("change_left", &self.change_left)
968            .finish()
969    }
970}
971
972#[derive(Copy, Clone)]
973#[repr(C)]
974pub struct PopplerFontDescription {
975    pub font_name: *mut c_char,
976    pub size_pt: c_double,
977    pub stretch: PopplerStretch,
978    pub weight: PopplerWeight,
979    pub style: PopplerStyle,
980}
981
982impl ::std::fmt::Debug for PopplerFontDescription {
983    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
984        f.debug_struct(&format!("PopplerFontDescription @ {self:p}"))
985            .field("font_name", &self.font_name)
986            .field("size_pt", &self.size_pt)
987            .field("stretch", &self.stretch)
988            .field("weight", &self.weight)
989            .field("style", &self.style)
990            .finish()
991    }
992}
993
994#[repr(C)]
995#[allow(dead_code)]
996pub struct PopplerFontsIter {
997    _data: [u8; 0],
998    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
999}
1000
1001impl ::std::fmt::Debug for PopplerFontsIter {
1002    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1003        f.debug_struct(&format!("PopplerFontsIter @ {self:p}"))
1004            .finish()
1005    }
1006}
1007
1008#[derive(Copy, Clone)]
1009#[repr(C)]
1010pub struct PopplerFormFieldMapping {
1011    pub area: PopplerRectangle,
1012    pub field: *mut PopplerFormField,
1013}
1014
1015impl ::std::fmt::Debug for PopplerFormFieldMapping {
1016    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1017        f.debug_struct(&format!("PopplerFormFieldMapping @ {self:p}"))
1018            .field("area", &self.area)
1019            .field("field", &self.field)
1020            .finish()
1021    }
1022}
1023
1024#[derive(Copy, Clone)]
1025#[repr(C)]
1026pub struct PopplerImageMapping {
1027    pub area: PopplerRectangle,
1028    pub image_id: c_int,
1029}
1030
1031impl ::std::fmt::Debug for PopplerImageMapping {
1032    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1033        f.debug_struct(&format!("PopplerImageMapping @ {self:p}"))
1034            .field("area", &self.area)
1035            .field("image_id", &self.image_id)
1036            .finish()
1037    }
1038}
1039
1040#[repr(C)]
1041#[allow(dead_code)]
1042pub struct PopplerIndexIter {
1043    _data: [u8; 0],
1044    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1045}
1046
1047impl ::std::fmt::Debug for PopplerIndexIter {
1048    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1049        f.debug_struct(&format!("PopplerIndexIter @ {self:p}"))
1050            .finish()
1051    }
1052}
1053
1054#[repr(C)]
1055#[allow(dead_code)]
1056pub struct PopplerLayersIter {
1057    _data: [u8; 0],
1058    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1059}
1060
1061impl ::std::fmt::Debug for PopplerLayersIter {
1062    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1063        f.debug_struct(&format!("PopplerLayersIter @ {self:p}"))
1064            .finish()
1065    }
1066}
1067
1068#[derive(Copy, Clone)]
1069#[repr(C)]
1070pub struct PopplerLinkMapping {
1071    pub area: PopplerRectangle,
1072    pub action: *mut PopplerAction,
1073}
1074
1075impl ::std::fmt::Debug for PopplerLinkMapping {
1076    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1077        f.debug_struct(&format!("PopplerLinkMapping @ {self:p}"))
1078            .field("area", &self.area)
1079            .field("action", &self.action)
1080            .finish()
1081    }
1082}
1083
1084#[derive(Copy, Clone)]
1085#[repr(C)]
1086pub struct PopplerPageRange {
1087    pub start_page: c_int,
1088    pub end_page: c_int,
1089}
1090
1091impl ::std::fmt::Debug for PopplerPageRange {
1092    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1093        f.debug_struct(&format!("PopplerPageRange @ {self:p}"))
1094            .field("start_page", &self.start_page)
1095            .field("end_page", &self.end_page)
1096            .finish()
1097    }
1098}
1099
1100#[derive(Copy, Clone)]
1101#[repr(C)]
1102pub struct PopplerPageTransition {
1103    pub type_: PopplerPageTransitionType,
1104    pub alignment: PopplerPageTransitionAlignment,
1105    pub direction: PopplerPageTransitionDirection,
1106    pub duration: c_int,
1107    pub angle: c_int,
1108    pub scale: c_double,
1109    pub rectangular: gboolean,
1110    pub duration_real: c_double,
1111}
1112
1113impl ::std::fmt::Debug for PopplerPageTransition {
1114    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1115        f.debug_struct(&format!("PopplerPageTransition @ {self:p}"))
1116            .field("type_", &self.type_)
1117            .field("alignment", &self.alignment)
1118            .field("direction", &self.direction)
1119            .field("duration", &self.duration)
1120            .field("angle", &self.angle)
1121            .field("scale", &self.scale)
1122            .field("rectangular", &self.rectangular)
1123            .field("duration_real", &self.duration_real)
1124            .finish()
1125    }
1126}
1127
1128#[repr(C)]
1129#[allow(dead_code)]
1130pub struct PopplerPath {
1131    _data: [u8; 0],
1132    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1133}
1134
1135impl ::std::fmt::Debug for PopplerPath {
1136    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1137        f.debug_struct(&format!("PopplerPath @ {self:p}")).finish()
1138    }
1139}
1140
1141#[derive(Copy, Clone)]
1142#[repr(C)]
1143pub struct PopplerPoint {
1144    pub x: c_double,
1145    pub y: c_double,
1146}
1147
1148impl ::std::fmt::Debug for PopplerPoint {
1149    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1150        f.debug_struct(&format!("PopplerPoint @ {self:p}"))
1151            .field("x", &self.x)
1152            .field("y", &self.y)
1153            .finish()
1154    }
1155}
1156
1157#[derive(Copy, Clone)]
1158#[repr(C)]
1159pub struct PopplerQuadrilateral {
1160    pub p1: PopplerPoint,
1161    pub p2: PopplerPoint,
1162    pub p3: PopplerPoint,
1163    pub p4: PopplerPoint,
1164}
1165
1166impl ::std::fmt::Debug for PopplerQuadrilateral {
1167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1168        f.debug_struct(&format!("PopplerQuadrilateral @ {self:p}"))
1169            .field("p1", &self.p1)
1170            .field("p2", &self.p2)
1171            .field("p3", &self.p3)
1172            .field("p4", &self.p4)
1173            .finish()
1174    }
1175}
1176
1177#[derive(Copy, Clone)]
1178#[repr(C)]
1179pub struct PopplerRectangle {
1180    pub x1: c_double,
1181    pub y1: c_double,
1182    pub x2: c_double,
1183    pub y2: c_double,
1184}
1185
1186impl ::std::fmt::Debug for PopplerRectangle {
1187    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1188        f.debug_struct(&format!("PopplerRectangle @ {self:p}"))
1189            .field("x1", &self.x1)
1190            .field("y1", &self.y1)
1191            .field("x2", &self.x2)
1192            .field("y2", &self.y2)
1193            .finish()
1194    }
1195}
1196
1197#[repr(C)]
1198#[allow(dead_code)]
1199pub struct PopplerSignatureInfo {
1200    _data: [u8; 0],
1201    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1202}
1203
1204impl ::std::fmt::Debug for PopplerSignatureInfo {
1205    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1206        f.debug_struct(&format!("PopplerSignatureInfo @ {self:p}"))
1207            .finish()
1208    }
1209}
1210
1211#[repr(C)]
1212#[allow(dead_code)]
1213pub struct PopplerSigningData {
1214    _data: [u8; 0],
1215    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1216}
1217
1218impl ::std::fmt::Debug for PopplerSigningData {
1219    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1220        f.debug_struct(&format!("PopplerSigningData @ {self:p}"))
1221            .finish()
1222    }
1223}
1224
1225#[repr(C)]
1226#[allow(dead_code)]
1227pub struct PopplerStructureElementIter {
1228    _data: [u8; 0],
1229    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1230}
1231
1232impl ::std::fmt::Debug for PopplerStructureElementIter {
1233    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1234        f.debug_struct(&format!("PopplerStructureElementIter @ {self:p}"))
1235            .finish()
1236    }
1237}
1238
1239#[derive(Copy, Clone)]
1240#[repr(C)]
1241pub struct PopplerTextAttributes {
1242    pub font_name: *mut c_char,
1243    pub font_size: c_double,
1244    pub is_underlined: gboolean,
1245    pub color: PopplerColor,
1246    pub start_index: c_int,
1247    pub end_index: c_int,
1248}
1249
1250impl ::std::fmt::Debug for PopplerTextAttributes {
1251    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1252        f.debug_struct(&format!("PopplerTextAttributes @ {self:p}"))
1253            .field("font_name", &self.font_name)
1254            .field("font_size", &self.font_size)
1255            .field("is_underlined", &self.is_underlined)
1256            .field("color", &self.color)
1257            .field("start_index", &self.start_index)
1258            .field("end_index", &self.end_index)
1259            .finish()
1260    }
1261}
1262
1263#[repr(C)]
1264#[allow(dead_code)]
1265pub struct PopplerTextSpan {
1266    _data: [u8; 0],
1267    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1268}
1269
1270impl ::std::fmt::Debug for PopplerTextSpan {
1271    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1272        f.debug_struct(&format!("PopplerTextSpan @ {self:p}"))
1273            .finish()
1274    }
1275}
1276
1277// Classes
1278#[repr(C)]
1279#[allow(dead_code)]
1280pub struct PopplerAnnot {
1281    _data: [u8; 0],
1282    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1283}
1284
1285impl ::std::fmt::Debug for PopplerAnnot {
1286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1287        f.debug_struct(&format!("PopplerAnnot @ {self:p}")).finish()
1288    }
1289}
1290
1291#[repr(C)]
1292#[allow(dead_code)]
1293pub struct PopplerAnnotCircle {
1294    _data: [u8; 0],
1295    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1296}
1297
1298impl ::std::fmt::Debug for PopplerAnnotCircle {
1299    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1300        f.debug_struct(&format!("PopplerAnnotCircle @ {self:p}"))
1301            .finish()
1302    }
1303}
1304
1305#[repr(C)]
1306#[allow(dead_code)]
1307pub struct PopplerAnnotFileAttachment {
1308    _data: [u8; 0],
1309    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1310}
1311
1312impl ::std::fmt::Debug for PopplerAnnotFileAttachment {
1313    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1314        f.debug_struct(&format!("PopplerAnnotFileAttachment @ {self:p}"))
1315            .finish()
1316    }
1317}
1318
1319#[repr(C)]
1320#[allow(dead_code)]
1321pub struct PopplerAnnotFreeText {
1322    _data: [u8; 0],
1323    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1324}
1325
1326impl ::std::fmt::Debug for PopplerAnnotFreeText {
1327    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1328        f.debug_struct(&format!("PopplerAnnotFreeText @ {self:p}"))
1329            .finish()
1330    }
1331}
1332
1333#[repr(C)]
1334#[allow(dead_code)]
1335pub struct PopplerAnnotInk {
1336    _data: [u8; 0],
1337    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1338}
1339
1340impl ::std::fmt::Debug for PopplerAnnotInk {
1341    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1342        f.debug_struct(&format!("PopplerAnnotInk @ {self:p}"))
1343            .finish()
1344    }
1345}
1346
1347#[repr(C)]
1348#[allow(dead_code)]
1349pub struct PopplerAnnotLine {
1350    _data: [u8; 0],
1351    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1352}
1353
1354impl ::std::fmt::Debug for PopplerAnnotLine {
1355    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1356        f.debug_struct(&format!("PopplerAnnotLine @ {self:p}"))
1357            .finish()
1358    }
1359}
1360
1361#[repr(C)]
1362#[allow(dead_code)]
1363pub struct PopplerAnnotMarkup {
1364    _data: [u8; 0],
1365    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1366}
1367
1368impl ::std::fmt::Debug for PopplerAnnotMarkup {
1369    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1370        f.debug_struct(&format!("PopplerAnnotMarkup @ {self:p}"))
1371            .finish()
1372    }
1373}
1374
1375#[repr(C)]
1376#[allow(dead_code)]
1377pub struct PopplerAnnotMovie {
1378    _data: [u8; 0],
1379    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1380}
1381
1382impl ::std::fmt::Debug for PopplerAnnotMovie {
1383    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1384        f.debug_struct(&format!("PopplerAnnotMovie @ {self:p}"))
1385            .finish()
1386    }
1387}
1388
1389#[repr(C)]
1390#[allow(dead_code)]
1391pub struct PopplerAnnotScreen {
1392    _data: [u8; 0],
1393    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1394}
1395
1396impl ::std::fmt::Debug for PopplerAnnotScreen {
1397    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1398        f.debug_struct(&format!("PopplerAnnotScreen @ {self:p}"))
1399            .finish()
1400    }
1401}
1402
1403#[repr(C)]
1404#[allow(dead_code)]
1405pub struct PopplerAnnotSquare {
1406    _data: [u8; 0],
1407    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1408}
1409
1410impl ::std::fmt::Debug for PopplerAnnotSquare {
1411    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1412        f.debug_struct(&format!("PopplerAnnotSquare @ {self:p}"))
1413            .finish()
1414    }
1415}
1416
1417#[repr(C)]
1418#[allow(dead_code)]
1419pub struct PopplerAnnotStamp {
1420    _data: [u8; 0],
1421    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1422}
1423
1424impl ::std::fmt::Debug for PopplerAnnotStamp {
1425    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1426        f.debug_struct(&format!("PopplerAnnotStamp @ {self:p}"))
1427            .finish()
1428    }
1429}
1430
1431#[repr(C)]
1432#[allow(dead_code)]
1433pub struct PopplerAnnotText {
1434    _data: [u8; 0],
1435    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1436}
1437
1438impl ::std::fmt::Debug for PopplerAnnotText {
1439    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1440        f.debug_struct(&format!("PopplerAnnotText @ {self:p}"))
1441            .finish()
1442    }
1443}
1444
1445#[repr(C)]
1446#[allow(dead_code)]
1447pub struct PopplerAnnotTextMarkup {
1448    _data: [u8; 0],
1449    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1450}
1451
1452impl ::std::fmt::Debug for PopplerAnnotTextMarkup {
1453    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1454        f.debug_struct(&format!("PopplerAnnotTextMarkup @ {self:p}"))
1455            .finish()
1456    }
1457}
1458
1459#[derive(Copy, Clone)]
1460#[repr(C)]
1461pub struct PopplerAttachment {
1462    pub parent: gobject::GObject,
1463    pub name: *mut c_char,
1464    pub description: *mut c_char,
1465    pub size: size_t,
1466    pub mtime: glib::GTime,
1467    pub ctime: glib::GTime,
1468    pub checksum: *mut glib::GString,
1469}
1470
1471impl ::std::fmt::Debug for PopplerAttachment {
1472    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1473        f.debug_struct(&format!("PopplerAttachment @ {self:p}"))
1474            .field("parent", &self.parent)
1475            .field("name", &self.name)
1476            .field("description", &self.description)
1477            .field("size", &self.size)
1478            .field("mtime", &self.mtime)
1479            .field("ctime", &self.ctime)
1480            .field("checksum", &self.checksum)
1481            .finish()
1482    }
1483}
1484
1485#[repr(C)]
1486#[allow(dead_code)]
1487pub struct PopplerDocument {
1488    _data: [u8; 0],
1489    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1490}
1491
1492impl ::std::fmt::Debug for PopplerDocument {
1493    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1494        f.debug_struct(&format!("PopplerDocument @ {self:p}"))
1495            .finish()
1496    }
1497}
1498
1499#[repr(C)]
1500#[allow(dead_code)]
1501pub struct PopplerFontInfo {
1502    _data: [u8; 0],
1503    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1504}
1505
1506impl ::std::fmt::Debug for PopplerFontInfo {
1507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1508        f.debug_struct(&format!("PopplerFontInfo @ {self:p}"))
1509            .finish()
1510    }
1511}
1512
1513#[repr(C)]
1514#[allow(dead_code)]
1515pub struct PopplerFormField {
1516    _data: [u8; 0],
1517    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1518}
1519
1520impl ::std::fmt::Debug for PopplerFormField {
1521    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1522        f.debug_struct(&format!("PopplerFormField @ {self:p}"))
1523            .finish()
1524    }
1525}
1526
1527#[repr(C)]
1528#[allow(dead_code)]
1529pub struct PopplerLayer {
1530    _data: [u8; 0],
1531    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1532}
1533
1534impl ::std::fmt::Debug for PopplerLayer {
1535    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1536        f.debug_struct(&format!("PopplerLayer @ {self:p}")).finish()
1537    }
1538}
1539
1540#[repr(C)]
1541#[allow(dead_code)]
1542pub struct PopplerMedia {
1543    _data: [u8; 0],
1544    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1545}
1546
1547impl ::std::fmt::Debug for PopplerMedia {
1548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1549        f.debug_struct(&format!("PopplerMedia @ {self:p}")).finish()
1550    }
1551}
1552
1553#[repr(C)]
1554#[allow(dead_code)]
1555pub struct PopplerMovie {
1556    _data: [u8; 0],
1557    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1558}
1559
1560impl ::std::fmt::Debug for PopplerMovie {
1561    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1562        f.debug_struct(&format!("PopplerMovie @ {self:p}")).finish()
1563    }
1564}
1565
1566#[repr(C)]
1567#[allow(dead_code)]
1568pub struct PopplerPSFile {
1569    _data: [u8; 0],
1570    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1571}
1572
1573impl ::std::fmt::Debug for PopplerPSFile {
1574    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1575        f.debug_struct(&format!("PopplerPSFile @ {self:p}"))
1576            .finish()
1577    }
1578}
1579
1580#[repr(C)]
1581#[allow(dead_code)]
1582pub struct PopplerPage {
1583    _data: [u8; 0],
1584    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1585}
1586
1587impl ::std::fmt::Debug for PopplerPage {
1588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1589        f.debug_struct(&format!("PopplerPage @ {self:p}")).finish()
1590    }
1591}
1592
1593#[repr(C)]
1594#[allow(dead_code)]
1595pub struct PopplerStructureElement {
1596    _data: [u8; 0],
1597    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1598}
1599
1600impl ::std::fmt::Debug for PopplerStructureElement {
1601    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1602        f.debug_struct(&format!("PopplerStructureElement @ {self:p}"))
1603            .finish()
1604    }
1605}
1606
1607extern "C" {
1608
1609    //=========================================================================
1610    // PopplerActionLayerAction
1611    //=========================================================================
1612    pub fn poppler_action_layer_action_get_type() -> GType;
1613
1614    //=========================================================================
1615    // PopplerActionMovieOperation
1616    //=========================================================================
1617    pub fn poppler_action_movie_operation_get_type() -> GType;
1618
1619    //=========================================================================
1620    // PopplerActionType
1621    //=========================================================================
1622    pub fn poppler_action_type_get_type() -> GType;
1623
1624    //=========================================================================
1625    // PopplerAdditionalActionType
1626    //=========================================================================
1627    #[cfg(feature = "v0_72")]
1628    #[cfg_attr(docsrs, doc(cfg(feature = "v0_72")))]
1629    pub fn poppler_additional_action_type_get_type() -> GType;
1630
1631    //=========================================================================
1632    // PopplerAnnotExternalDataType
1633    //=========================================================================
1634    pub fn poppler_annot_external_data_type_get_type() -> GType;
1635
1636    //=========================================================================
1637    // PopplerAnnotFreeTextQuadding
1638    //=========================================================================
1639    pub fn poppler_annot_free_text_quadding_get_type() -> GType;
1640
1641    //=========================================================================
1642    // PopplerAnnotMarkupReplyType
1643    //=========================================================================
1644    pub fn poppler_annot_markup_reply_type_get_type() -> GType;
1645
1646    //=========================================================================
1647    // PopplerAnnotStampIcon
1648    //=========================================================================
1649    pub fn poppler_annot_stamp_icon_get_type() -> GType;
1650
1651    //=========================================================================
1652    // PopplerAnnotTextState
1653    //=========================================================================
1654    pub fn poppler_annot_text_state_get_type() -> GType;
1655
1656    //=========================================================================
1657    // PopplerAnnotType
1658    //=========================================================================
1659    pub fn poppler_annot_type_get_type() -> GType;
1660
1661    //=========================================================================
1662    // PopplerBackend
1663    //=========================================================================
1664    pub fn poppler_backend_get_type() -> GType;
1665
1666    //=========================================================================
1667    // PopplerCertificateStatus
1668    //=========================================================================
1669    #[cfg(feature = "v21_12")]
1670    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
1671    pub fn poppler_certificate_status_get_type() -> GType;
1672
1673    //=========================================================================
1674    // PopplerDestType
1675    //=========================================================================
1676    pub fn poppler_dest_type_get_type() -> GType;
1677
1678    //=========================================================================
1679    // PopplerError
1680    //=========================================================================
1681    pub fn poppler_error_get_type() -> GType;
1682    pub fn poppler_error_quark() -> glib::GQuark;
1683
1684    //=========================================================================
1685    // PopplerFontType
1686    //=========================================================================
1687    pub fn poppler_font_type_get_type() -> GType;
1688
1689    //=========================================================================
1690    // PopplerFormButtonType
1691    //=========================================================================
1692    pub fn poppler_form_button_type_get_type() -> GType;
1693
1694    //=========================================================================
1695    // PopplerFormChoiceType
1696    //=========================================================================
1697    pub fn poppler_form_choice_type_get_type() -> GType;
1698
1699    //=========================================================================
1700    // PopplerFormFieldType
1701    //=========================================================================
1702    pub fn poppler_form_field_type_get_type() -> GType;
1703
1704    //=========================================================================
1705    // PopplerFormTextType
1706    //=========================================================================
1707    pub fn poppler_form_text_type_get_type() -> GType;
1708
1709    //=========================================================================
1710    // PopplerMoviePlayMode
1711    //=========================================================================
1712    pub fn poppler_movie_play_mode_get_type() -> GType;
1713
1714    //=========================================================================
1715    // PopplerPDFConformance
1716    //=========================================================================
1717    pub fn poppler_pdf_conformance_get_type() -> GType;
1718
1719    //=========================================================================
1720    // PopplerPDFPart
1721    //=========================================================================
1722    pub fn poppler_pdf_part_get_type() -> GType;
1723
1724    //=========================================================================
1725    // PopplerPDFSubtype
1726    //=========================================================================
1727    pub fn poppler_pdf_subtype_get_type() -> GType;
1728
1729    //=========================================================================
1730    // PopplerPageLayout
1731    //=========================================================================
1732    pub fn poppler_page_layout_get_type() -> GType;
1733
1734    //=========================================================================
1735    // PopplerPageMode
1736    //=========================================================================
1737    pub fn poppler_page_mode_get_type() -> GType;
1738
1739    //=========================================================================
1740    // PopplerPageTransitionAlignment
1741    //=========================================================================
1742    pub fn poppler_page_transition_alignment_get_type() -> GType;
1743
1744    //=========================================================================
1745    // PopplerPageTransitionDirection
1746    //=========================================================================
1747    pub fn poppler_page_transition_direction_get_type() -> GType;
1748
1749    //=========================================================================
1750    // PopplerPageTransitionType
1751    //=========================================================================
1752    pub fn poppler_page_transition_type_get_type() -> GType;
1753
1754    //=========================================================================
1755    // PopplerPrintDuplex
1756    //=========================================================================
1757    #[cfg(feature = "v0_80")]
1758    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
1759    pub fn poppler_print_duplex_get_type() -> GType;
1760
1761    //=========================================================================
1762    // PopplerPrintScaling
1763    //=========================================================================
1764    #[cfg(feature = "v0_73")]
1765    #[cfg_attr(docsrs, doc(cfg(feature = "v0_73")))]
1766    pub fn poppler_print_scaling_get_type() -> GType;
1767
1768    //=========================================================================
1769    // PopplerSelectionStyle
1770    //=========================================================================
1771    pub fn poppler_selection_style_get_type() -> GType;
1772
1773    //=========================================================================
1774    // PopplerSignatureStatus
1775    //=========================================================================
1776    #[cfg(feature = "v21_12")]
1777    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
1778    pub fn poppler_signature_status_get_type() -> GType;
1779
1780    //=========================================================================
1781    // PopplerStretch
1782    //=========================================================================
1783    pub fn poppler_stretch_get_type() -> GType;
1784
1785    //=========================================================================
1786    // PopplerStructureBlockAlign
1787    //=========================================================================
1788    pub fn poppler_structure_block_align_get_type() -> GType;
1789
1790    //=========================================================================
1791    // PopplerStructureBorderStyle
1792    //=========================================================================
1793    pub fn poppler_structure_border_style_get_type() -> GType;
1794
1795    //=========================================================================
1796    // PopplerStructureElementKind
1797    //=========================================================================
1798    pub fn poppler_structure_element_kind_get_type() -> GType;
1799
1800    //=========================================================================
1801    // PopplerStructureFormRole
1802    //=========================================================================
1803    pub fn poppler_structure_form_role_get_type() -> GType;
1804
1805    //=========================================================================
1806    // PopplerStructureFormState
1807    //=========================================================================
1808    pub fn poppler_structure_form_state_get_type() -> GType;
1809
1810    //=========================================================================
1811    // PopplerStructureGlyphOrientation
1812    //=========================================================================
1813    pub fn poppler_structure_glyph_orientation_get_type() -> GType;
1814
1815    //=========================================================================
1816    // PopplerStructureInlineAlign
1817    //=========================================================================
1818    pub fn poppler_structure_inline_align_get_type() -> GType;
1819
1820    //=========================================================================
1821    // PopplerStructureListNumbering
1822    //=========================================================================
1823    pub fn poppler_structure_list_numbering_get_type() -> GType;
1824
1825    //=========================================================================
1826    // PopplerStructurePlacement
1827    //=========================================================================
1828    pub fn poppler_structure_placement_get_type() -> GType;
1829
1830    //=========================================================================
1831    // PopplerStructureRubyAlign
1832    //=========================================================================
1833    pub fn poppler_structure_ruby_align_get_type() -> GType;
1834
1835    //=========================================================================
1836    // PopplerStructureRubyPosition
1837    //=========================================================================
1838    pub fn poppler_structure_ruby_position_get_type() -> GType;
1839
1840    //=========================================================================
1841    // PopplerStructureTableScope
1842    //=========================================================================
1843    pub fn poppler_structure_table_scope_get_type() -> GType;
1844
1845    //=========================================================================
1846    // PopplerStructureTextAlign
1847    //=========================================================================
1848    pub fn poppler_structure_text_align_get_type() -> GType;
1849
1850    //=========================================================================
1851    // PopplerStructureTextDecoration
1852    //=========================================================================
1853    pub fn poppler_structure_text_decoration_get_type() -> GType;
1854
1855    //=========================================================================
1856    // PopplerStructureWritingMode
1857    //=========================================================================
1858    pub fn poppler_structure_writing_mode_get_type() -> GType;
1859
1860    //=========================================================================
1861    // PopplerStyle
1862    //=========================================================================
1863    pub fn poppler_style_get_type() -> GType;
1864
1865    //=========================================================================
1866    // PopplerWeight
1867    //=========================================================================
1868    pub fn poppler_weight_get_type() -> GType;
1869
1870    //=========================================================================
1871    // PopplerAnnotFlag
1872    //=========================================================================
1873    pub fn poppler_annot_flag_get_type() -> GType;
1874
1875    //=========================================================================
1876    // PopplerFindFlags
1877    //=========================================================================
1878    pub fn poppler_find_flags_get_type() -> GType;
1879
1880    //=========================================================================
1881    // PopplerPermissions
1882    //=========================================================================
1883    pub fn poppler_permissions_get_type() -> GType;
1884
1885    //=========================================================================
1886    // PopplerPrintFlags
1887    //=========================================================================
1888    pub fn poppler_print_flags_get_type() -> GType;
1889
1890    //=========================================================================
1891    // PopplerRenderAnnotsFlags
1892    //=========================================================================
1893    pub fn poppler_render_annots_flags_get_type() -> GType;
1894
1895    //=========================================================================
1896    // PopplerSignatureValidationFlags
1897    //=========================================================================
1898    #[cfg(feature = "v21_12")]
1899    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
1900    pub fn poppler_signature_validation_flags_get_type() -> GType;
1901
1902    //=========================================================================
1903    // PopplerStructureGetTextFlags
1904    //=========================================================================
1905    pub fn poppler_structure_get_text_flags_get_type() -> GType;
1906
1907    //=========================================================================
1908    // PopplerViewerPreferences
1909    //=========================================================================
1910    pub fn poppler_viewer_preferences_get_type() -> GType;
1911
1912    //=========================================================================
1913    // PopplerAction
1914    //=========================================================================
1915    pub fn poppler_action_get_type() -> GType;
1916    pub fn poppler_action_copy(action: *mut PopplerAction) -> *mut PopplerAction;
1917    pub fn poppler_action_free(action: *mut PopplerAction);
1918
1919    //=========================================================================
1920    // PopplerAnnotCalloutLine
1921    //=========================================================================
1922    pub fn poppler_annot_callout_line_get_type() -> GType;
1923    pub fn poppler_annot_callout_line_new() -> *mut PopplerAnnotCalloutLine;
1924    pub fn poppler_annot_callout_line_copy(
1925        callout: *mut PopplerAnnotCalloutLine,
1926    ) -> *mut PopplerAnnotCalloutLine;
1927    pub fn poppler_annot_callout_line_free(callout: *mut PopplerAnnotCalloutLine);
1928
1929    //=========================================================================
1930    // PopplerAnnotMapping
1931    //=========================================================================
1932    pub fn poppler_annot_mapping_get_type() -> GType;
1933    pub fn poppler_annot_mapping_new() -> *mut PopplerAnnotMapping;
1934    pub fn poppler_annot_mapping_copy(
1935        mapping: *mut PopplerAnnotMapping,
1936    ) -> *mut PopplerAnnotMapping;
1937    pub fn poppler_annot_mapping_free(mapping: *mut PopplerAnnotMapping);
1938
1939    //=========================================================================
1940    // PopplerCertificateInfo
1941    //=========================================================================
1942    #[cfg(feature = "v23_7")]
1943    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
1944    pub fn poppler_certificate_info_get_type() -> GType;
1945    #[cfg(feature = "v23_7")]
1946    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
1947    pub fn poppler_certificate_info_new() -> *mut PopplerCertificateInfo;
1948    #[cfg(feature = "v23_7")]
1949    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
1950    pub fn poppler_certificate_info_copy(
1951        certificate_info: *const PopplerCertificateInfo,
1952    ) -> *mut PopplerCertificateInfo;
1953    #[cfg(feature = "v23_7")]
1954    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
1955    pub fn poppler_certificate_info_free(certificate_info: *mut PopplerCertificateInfo);
1956    #[cfg(feature = "v23_8")]
1957    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1958    pub fn poppler_certificate_info_get_expiration_time(
1959        certificate_info: *const PopplerCertificateInfo,
1960    ) -> *mut glib::GDateTime;
1961    #[cfg(feature = "v23_7")]
1962    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
1963    pub fn poppler_certificate_info_get_id(
1964        certificate_info: *const PopplerCertificateInfo,
1965    ) -> *const c_char;
1966    #[cfg(feature = "v23_8")]
1967    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1968    pub fn poppler_certificate_info_get_issuance_time(
1969        certificate_info: *const PopplerCertificateInfo,
1970    ) -> *mut glib::GDateTime;
1971    #[cfg(feature = "v23_8")]
1972    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1973    pub fn poppler_certificate_info_get_issuer_common_name(
1974        certificate_info: *const PopplerCertificateInfo,
1975    ) -> *const c_char;
1976    #[cfg(feature = "v23_8")]
1977    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1978    pub fn poppler_certificate_info_get_issuer_email(
1979        certificate_info: *const PopplerCertificateInfo,
1980    ) -> *const c_char;
1981    #[cfg(feature = "v23_8")]
1982    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1983    pub fn poppler_certificate_info_get_issuer_organization(
1984        certificate_info: *const PopplerCertificateInfo,
1985    ) -> *const c_char;
1986    #[cfg(feature = "v23_7")]
1987    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
1988    pub fn poppler_certificate_info_get_subject_common_name(
1989        certificate_info: *const PopplerCertificateInfo,
1990    ) -> *const c_char;
1991    #[cfg(feature = "v23_8")]
1992    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1993    pub fn poppler_certificate_info_get_subject_email(
1994        certificate_info: *const PopplerCertificateInfo,
1995    ) -> *const c_char;
1996    #[cfg(feature = "v23_8")]
1997    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
1998    pub fn poppler_certificate_info_get_subject_organization(
1999        certificate_info: *const PopplerCertificateInfo,
2000    ) -> *const c_char;
2001
2002    //=========================================================================
2003    // PopplerColor
2004    //=========================================================================
2005    pub fn poppler_color_get_type() -> GType;
2006    pub fn poppler_color_new() -> *mut PopplerColor;
2007    pub fn poppler_color_copy(color: *mut PopplerColor) -> *mut PopplerColor;
2008    pub fn poppler_color_free(color: *mut PopplerColor);
2009
2010    //=========================================================================
2011    // PopplerDest
2012    //=========================================================================
2013    pub fn poppler_dest_get_type() -> GType;
2014    pub fn poppler_dest_copy(dest: *mut PopplerDest) -> *mut PopplerDest;
2015    pub fn poppler_dest_free(dest: *mut PopplerDest);
2016
2017    //=========================================================================
2018    // PopplerFontDescription
2019    //=========================================================================
2020    #[cfg(feature = "v24_12")]
2021    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2022    pub fn poppler_font_description_get_type() -> GType;
2023    #[cfg(feature = "v24_12")]
2024    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2025    pub fn poppler_font_description_new(font_name: *const c_char) -> *mut PopplerFontDescription;
2026    #[cfg(feature = "v24_12")]
2027    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2028    pub fn poppler_font_description_copy(
2029        font_desc: *mut PopplerFontDescription,
2030    ) -> *mut PopplerFontDescription;
2031    #[cfg(feature = "v24_12")]
2032    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2033    pub fn poppler_font_description_free(font_desc: *mut PopplerFontDescription);
2034
2035    //=========================================================================
2036    // PopplerFontsIter
2037    //=========================================================================
2038    pub fn poppler_fonts_iter_get_type() -> GType;
2039    pub fn poppler_fonts_iter_copy(iter: *mut PopplerFontsIter) -> *mut PopplerFontsIter;
2040    pub fn poppler_fonts_iter_free(iter: *mut PopplerFontsIter);
2041    pub fn poppler_fonts_iter_get_encoding(iter: *mut PopplerFontsIter) -> *const c_char;
2042    pub fn poppler_fonts_iter_get_file_name(iter: *mut PopplerFontsIter) -> *const c_char;
2043    pub fn poppler_fonts_iter_get_font_type(iter: *mut PopplerFontsIter) -> PopplerFontType;
2044    pub fn poppler_fonts_iter_get_full_name(iter: *mut PopplerFontsIter) -> *const c_char;
2045    pub fn poppler_fonts_iter_get_name(iter: *mut PopplerFontsIter) -> *const c_char;
2046    pub fn poppler_fonts_iter_get_substitute_name(iter: *mut PopplerFontsIter) -> *const c_char;
2047    pub fn poppler_fonts_iter_is_embedded(iter: *mut PopplerFontsIter) -> gboolean;
2048    pub fn poppler_fonts_iter_is_subset(iter: *mut PopplerFontsIter) -> gboolean;
2049    pub fn poppler_fonts_iter_next(iter: *mut PopplerFontsIter) -> gboolean;
2050
2051    //=========================================================================
2052    // PopplerFormFieldMapping
2053    //=========================================================================
2054    pub fn poppler_form_field_mapping_get_type() -> GType;
2055    pub fn poppler_form_field_mapping_new() -> *mut PopplerFormFieldMapping;
2056    pub fn poppler_form_field_mapping_copy(
2057        mapping: *mut PopplerFormFieldMapping,
2058    ) -> *mut PopplerFormFieldMapping;
2059    pub fn poppler_form_field_mapping_free(mapping: *mut PopplerFormFieldMapping);
2060
2061    //=========================================================================
2062    // PopplerImageMapping
2063    //=========================================================================
2064    pub fn poppler_image_mapping_get_type() -> GType;
2065    pub fn poppler_image_mapping_new() -> *mut PopplerImageMapping;
2066    pub fn poppler_image_mapping_copy(
2067        mapping: *mut PopplerImageMapping,
2068    ) -> *mut PopplerImageMapping;
2069    pub fn poppler_image_mapping_free(mapping: *mut PopplerImageMapping);
2070
2071    //=========================================================================
2072    // PopplerIndexIter
2073    //=========================================================================
2074    pub fn poppler_index_iter_get_type() -> GType;
2075    pub fn poppler_index_iter_new(document: *mut PopplerDocument) -> *mut PopplerIndexIter;
2076    pub fn poppler_index_iter_copy(iter: *mut PopplerIndexIter) -> *mut PopplerIndexIter;
2077    pub fn poppler_index_iter_free(iter: *mut PopplerIndexIter);
2078    pub fn poppler_index_iter_get_action(iter: *mut PopplerIndexIter) -> *mut PopplerAction;
2079    pub fn poppler_index_iter_get_child(parent: *mut PopplerIndexIter) -> *mut PopplerIndexIter;
2080    pub fn poppler_index_iter_is_open(iter: *mut PopplerIndexIter) -> gboolean;
2081    pub fn poppler_index_iter_next(iter: *mut PopplerIndexIter) -> gboolean;
2082
2083    //=========================================================================
2084    // PopplerLayersIter
2085    //=========================================================================
2086    pub fn poppler_layers_iter_get_type() -> GType;
2087    pub fn poppler_layers_iter_new(document: *mut PopplerDocument) -> *mut PopplerLayersIter;
2088    pub fn poppler_layers_iter_copy(iter: *mut PopplerLayersIter) -> *mut PopplerLayersIter;
2089    pub fn poppler_layers_iter_free(iter: *mut PopplerLayersIter);
2090    pub fn poppler_layers_iter_get_child(parent: *mut PopplerLayersIter) -> *mut PopplerLayersIter;
2091    pub fn poppler_layers_iter_get_layer(iter: *mut PopplerLayersIter) -> *mut PopplerLayer;
2092    pub fn poppler_layers_iter_get_title(iter: *mut PopplerLayersIter) -> *mut c_char;
2093    pub fn poppler_layers_iter_next(iter: *mut PopplerLayersIter) -> gboolean;
2094
2095    //=========================================================================
2096    // PopplerLinkMapping
2097    //=========================================================================
2098    pub fn poppler_link_mapping_get_type() -> GType;
2099    pub fn poppler_link_mapping_new() -> *mut PopplerLinkMapping;
2100    pub fn poppler_link_mapping_copy(mapping: *mut PopplerLinkMapping) -> *mut PopplerLinkMapping;
2101    pub fn poppler_link_mapping_free(mapping: *mut PopplerLinkMapping);
2102
2103    //=========================================================================
2104    // PopplerPageTransition
2105    //=========================================================================
2106    pub fn poppler_page_transition_get_type() -> GType;
2107    pub fn poppler_page_transition_new() -> *mut PopplerPageTransition;
2108    pub fn poppler_page_transition_copy(
2109        transition: *mut PopplerPageTransition,
2110    ) -> *mut PopplerPageTransition;
2111    pub fn poppler_page_transition_free(transition: *mut PopplerPageTransition);
2112
2113    //=========================================================================
2114    // PopplerPath
2115    //=========================================================================
2116    #[cfg(feature = "v25_6")]
2117    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2118    pub fn poppler_path_get_type() -> GType;
2119    #[cfg(feature = "v25_6")]
2120    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2121    pub fn poppler_path_new_from_array(
2122        points: *mut PopplerPoint,
2123        n_points: size_t,
2124    ) -> *mut PopplerPath;
2125    #[cfg(feature = "v25_6")]
2126    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2127    pub fn poppler_path_copy(path: *mut PopplerPath) -> *mut PopplerPath;
2128    #[cfg(feature = "v25_6")]
2129    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2130    pub fn poppler_path_free(path: *mut PopplerPath);
2131    #[cfg(feature = "v25_6")]
2132    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2133    pub fn poppler_path_get_points(
2134        path: *mut PopplerPath,
2135        n_points: *mut size_t,
2136    ) -> *mut PopplerPoint;
2137
2138    //=========================================================================
2139    // PopplerPoint
2140    //=========================================================================
2141    pub fn poppler_point_get_type() -> GType;
2142    pub fn poppler_point_new() -> *mut PopplerPoint;
2143    pub fn poppler_point_copy(point: *mut PopplerPoint) -> *mut PopplerPoint;
2144    pub fn poppler_point_free(point: *mut PopplerPoint);
2145
2146    //=========================================================================
2147    // PopplerQuadrilateral
2148    //=========================================================================
2149    pub fn poppler_quadrilateral_get_type() -> GType;
2150    pub fn poppler_quadrilateral_new() -> *mut PopplerQuadrilateral;
2151    pub fn poppler_quadrilateral_copy(quad: *mut PopplerQuadrilateral)
2152        -> *mut PopplerQuadrilateral;
2153    pub fn poppler_quadrilateral_free(quad: *mut PopplerQuadrilateral);
2154
2155    //=========================================================================
2156    // PopplerRectangle
2157    //=========================================================================
2158    pub fn poppler_rectangle_get_type() -> GType;
2159    pub fn poppler_rectangle_new() -> *mut PopplerRectangle;
2160    pub fn poppler_rectangle_copy(rectangle: *mut PopplerRectangle) -> *mut PopplerRectangle;
2161    #[cfg(feature = "v21_5")]
2162    #[cfg_attr(docsrs, doc(cfg(feature = "v21_5")))]
2163    pub fn poppler_rectangle_find_get_ignored_hyphen(
2164        rectangle: *const PopplerRectangle,
2165    ) -> gboolean;
2166    #[cfg(feature = "v21_5")]
2167    #[cfg_attr(docsrs, doc(cfg(feature = "v21_5")))]
2168    pub fn poppler_rectangle_find_get_match_continued(
2169        rectangle: *const PopplerRectangle,
2170    ) -> gboolean;
2171    pub fn poppler_rectangle_free(rectangle: *mut PopplerRectangle);
2172
2173    //=========================================================================
2174    // PopplerSignatureInfo
2175    //=========================================================================
2176    #[cfg(feature = "v21_12")]
2177    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2178    pub fn poppler_signature_info_get_type() -> GType;
2179    #[cfg(feature = "v21_12")]
2180    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2181    pub fn poppler_signature_info_copy(
2182        siginfo: *const PopplerSignatureInfo,
2183    ) -> *mut PopplerSignatureInfo;
2184    #[cfg(feature = "v21_12")]
2185    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2186    pub fn poppler_signature_info_free(siginfo: *mut PopplerSignatureInfo);
2187    #[cfg(feature = "v23_8")]
2188    #[cfg_attr(docsrs, doc(cfg(feature = "v23_8")))]
2189    pub fn poppler_signature_info_get_certificate_info(
2190        siginfo: *const PopplerSignatureInfo,
2191    ) -> *mut PopplerCertificateInfo;
2192    #[cfg(feature = "v21_12")]
2193    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2194    pub fn poppler_signature_info_get_certificate_status(
2195        siginfo: *const PopplerSignatureInfo,
2196    ) -> PopplerCertificateStatus;
2197    #[cfg(feature = "v21_12")]
2198    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2199    pub fn poppler_signature_info_get_local_signing_time(
2200        siginfo: *const PopplerSignatureInfo,
2201    ) -> *mut glib::GDateTime;
2202    #[cfg(feature = "v21_12")]
2203    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2204    pub fn poppler_signature_info_get_signature_status(
2205        siginfo: *const PopplerSignatureInfo,
2206    ) -> PopplerSignatureStatus;
2207    #[cfg(feature = "v21_12")]
2208    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2209    pub fn poppler_signature_info_get_signer_name(
2210        siginfo: *const PopplerSignatureInfo,
2211    ) -> *const c_char;
2212
2213    //=========================================================================
2214    // PopplerSigningData
2215    //=========================================================================
2216    pub fn poppler_signing_data_get_type() -> GType;
2217    #[cfg(feature = "v23_7")]
2218    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2219    pub fn poppler_signing_data_new() -> *mut PopplerSigningData;
2220    #[cfg(feature = "v23_7")]
2221    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2222    pub fn poppler_signing_data_copy(
2223        signing_data: *const PopplerSigningData,
2224    ) -> *mut PopplerSigningData;
2225    #[cfg(feature = "v23_7")]
2226    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2227    pub fn poppler_signing_data_free(signing_data: *mut PopplerSigningData);
2228    #[cfg(feature = "v23_7")]
2229    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2230    pub fn poppler_signing_data_get_background_color(
2231        signing_data: *const PopplerSigningData,
2232    ) -> *const PopplerColor;
2233    #[cfg(feature = "v23_7")]
2234    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2235    pub fn poppler_signing_data_get_border_color(
2236        signing_data: *const PopplerSigningData,
2237    ) -> *const PopplerColor;
2238    #[cfg(feature = "v23_7")]
2239    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2240    pub fn poppler_signing_data_get_border_width(
2241        signing_data: *const PopplerSigningData,
2242    ) -> c_double;
2243    #[cfg(feature = "v23_7")]
2244    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2245    pub fn poppler_signing_data_get_certificate_info(
2246        signing_data: *const PopplerSigningData,
2247    ) -> *const PopplerCertificateInfo;
2248    #[cfg(feature = "v23_7")]
2249    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2250    pub fn poppler_signing_data_get_destination_filename(
2251        signing_data: *const PopplerSigningData,
2252    ) -> *const c_char;
2253    #[cfg(feature = "v23_7")]
2254    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2255    pub fn poppler_signing_data_get_document_owner_password(
2256        signing_data: *const PopplerSigningData,
2257    ) -> *const c_char;
2258    #[cfg(feature = "v23_7")]
2259    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2260    pub fn poppler_signing_data_get_document_user_password(
2261        signing_data: *const PopplerSigningData,
2262    ) -> *const c_char;
2263    #[cfg(feature = "v23_7")]
2264    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2265    pub fn poppler_signing_data_get_field_partial_name(
2266        signing_data: *const PopplerSigningData,
2267    ) -> *const c_char;
2268    #[cfg(feature = "v23_7")]
2269    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2270    pub fn poppler_signing_data_get_font_color(
2271        signing_data: *const PopplerSigningData,
2272    ) -> *const PopplerColor;
2273    #[cfg(feature = "v23_7")]
2274    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2275    pub fn poppler_signing_data_get_font_size(signing_data: *const PopplerSigningData) -> c_double;
2276    #[cfg(feature = "v23_7")]
2277    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2278    pub fn poppler_signing_data_get_image_path(
2279        signing_data: *const PopplerSigningData,
2280    ) -> *const c_char;
2281    #[cfg(feature = "v23_7")]
2282    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2283    pub fn poppler_signing_data_get_left_font_size(
2284        signing_data: *const PopplerSigningData,
2285    ) -> c_double;
2286    #[cfg(feature = "v23_7")]
2287    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2288    pub fn poppler_signing_data_get_location(
2289        signing_data: *const PopplerSigningData,
2290    ) -> *const c_char;
2291    #[cfg(feature = "v23_7")]
2292    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2293    pub fn poppler_signing_data_get_page(signing_data: *const PopplerSigningData) -> c_int;
2294    #[cfg(feature = "v23_7")]
2295    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2296    pub fn poppler_signing_data_get_password(
2297        signing_data: *const PopplerSigningData,
2298    ) -> *const c_char;
2299    #[cfg(feature = "v23_7")]
2300    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2301    pub fn poppler_signing_data_get_reason(
2302        signing_data: *const PopplerSigningData,
2303    ) -> *const c_char;
2304    #[cfg(feature = "v23_7")]
2305    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2306    pub fn poppler_signing_data_get_signature_rectangle(
2307        signing_data: *const PopplerSigningData,
2308    ) -> *const PopplerRectangle;
2309    #[cfg(feature = "v23_7")]
2310    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2311    pub fn poppler_signing_data_get_signature_text(
2312        signing_data: *const PopplerSigningData,
2313    ) -> *const c_char;
2314    #[cfg(feature = "v23_7")]
2315    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2316    pub fn poppler_signing_data_get_signature_text_left(
2317        signing_data: *const PopplerSigningData,
2318    ) -> *const c_char;
2319    #[cfg(feature = "v23_7")]
2320    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2321    pub fn poppler_signing_data_set_background_color(
2322        signing_data: *mut PopplerSigningData,
2323        background_color: *const PopplerColor,
2324    );
2325    #[cfg(feature = "v23_7")]
2326    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2327    pub fn poppler_signing_data_set_border_color(
2328        signing_data: *mut PopplerSigningData,
2329        border_color: *const PopplerColor,
2330    );
2331    #[cfg(feature = "v23_7")]
2332    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2333    pub fn poppler_signing_data_set_border_width(
2334        signing_data: *mut PopplerSigningData,
2335        border_width: c_double,
2336    );
2337    #[cfg(feature = "v23_7")]
2338    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2339    pub fn poppler_signing_data_set_certificate_info(
2340        signing_data: *mut PopplerSigningData,
2341        certificate_info: *const PopplerCertificateInfo,
2342    );
2343    #[cfg(feature = "v23_7")]
2344    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2345    pub fn poppler_signing_data_set_destination_filename(
2346        signing_data: *mut PopplerSigningData,
2347        filename: *const c_char,
2348    );
2349    #[cfg(feature = "v23_7")]
2350    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2351    pub fn poppler_signing_data_set_document_owner_password(
2352        signing_data: *mut PopplerSigningData,
2353        document_owner_password: *const c_char,
2354    );
2355    #[cfg(feature = "v23_7")]
2356    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2357    pub fn poppler_signing_data_set_document_user_password(
2358        signing_data: *mut PopplerSigningData,
2359        document_user_password: *const c_char,
2360    );
2361    #[cfg(feature = "v23_7")]
2362    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2363    pub fn poppler_signing_data_set_field_partial_name(
2364        signing_data: *mut PopplerSigningData,
2365        field_partial_name: *const c_char,
2366    );
2367    #[cfg(feature = "v23_7")]
2368    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2369    pub fn poppler_signing_data_set_font_color(
2370        signing_data: *mut PopplerSigningData,
2371        font_color: *const PopplerColor,
2372    );
2373    #[cfg(feature = "v23_7")]
2374    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2375    pub fn poppler_signing_data_set_font_size(
2376        signing_data: *mut PopplerSigningData,
2377        font_size: c_double,
2378    );
2379    #[cfg(feature = "v23_7")]
2380    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2381    pub fn poppler_signing_data_set_image_path(
2382        signing_data: *mut PopplerSigningData,
2383        image_path: *const c_char,
2384    );
2385    #[cfg(feature = "v23_7")]
2386    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2387    pub fn poppler_signing_data_set_left_font_size(
2388        signing_data: *mut PopplerSigningData,
2389        font_size: c_double,
2390    );
2391    #[cfg(feature = "v23_7")]
2392    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2393    pub fn poppler_signing_data_set_location(
2394        signing_data: *mut PopplerSigningData,
2395        location: *const c_char,
2396    );
2397    #[cfg(feature = "v23_7")]
2398    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2399    pub fn poppler_signing_data_set_page(signing_data: *mut PopplerSigningData, page: c_int);
2400    #[cfg(feature = "v23_7")]
2401    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2402    pub fn poppler_signing_data_set_password(
2403        signing_data: *mut PopplerSigningData,
2404        password: *const c_char,
2405    );
2406    #[cfg(feature = "v23_7")]
2407    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2408    pub fn poppler_signing_data_set_reason(
2409        signing_data: *mut PopplerSigningData,
2410        reason: *const c_char,
2411    );
2412    #[cfg(feature = "v23_7")]
2413    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2414    pub fn poppler_signing_data_set_signature_rectangle(
2415        signing_data: *mut PopplerSigningData,
2416        signature_rect: *const PopplerRectangle,
2417    );
2418    #[cfg(feature = "v23_7")]
2419    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2420    pub fn poppler_signing_data_set_signature_text(
2421        signing_data: *mut PopplerSigningData,
2422        signature_text: *const c_char,
2423    );
2424    #[cfg(feature = "v23_7")]
2425    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
2426    pub fn poppler_signing_data_set_signature_text_left(
2427        signing_data: *mut PopplerSigningData,
2428        signature_text_left: *const c_char,
2429    );
2430
2431    //=========================================================================
2432    // PopplerStructureElementIter
2433    //=========================================================================
2434    pub fn poppler_structure_element_iter_get_type() -> GType;
2435    pub fn poppler_structure_element_iter_new(
2436        poppler_document: *mut PopplerDocument,
2437    ) -> *mut PopplerStructureElementIter;
2438    pub fn poppler_structure_element_iter_copy(
2439        iter: *mut PopplerStructureElementIter,
2440    ) -> *mut PopplerStructureElementIter;
2441    pub fn poppler_structure_element_iter_free(iter: *mut PopplerStructureElementIter);
2442    pub fn poppler_structure_element_iter_get_child(
2443        parent: *mut PopplerStructureElementIter,
2444    ) -> *mut PopplerStructureElementIter;
2445    pub fn poppler_structure_element_iter_get_element(
2446        iter: *mut PopplerStructureElementIter,
2447    ) -> *mut PopplerStructureElement;
2448    pub fn poppler_structure_element_iter_next(iter: *mut PopplerStructureElementIter) -> gboolean;
2449
2450    //=========================================================================
2451    // PopplerTextAttributes
2452    //=========================================================================
2453    pub fn poppler_text_attributes_get_type() -> GType;
2454    pub fn poppler_text_attributes_new() -> *mut PopplerTextAttributes;
2455    pub fn poppler_text_attributes_copy(
2456        text_attrs: *mut PopplerTextAttributes,
2457    ) -> *mut PopplerTextAttributes;
2458    pub fn poppler_text_attributes_free(text_attrs: *mut PopplerTextAttributes);
2459
2460    //=========================================================================
2461    // PopplerTextSpan
2462    //=========================================================================
2463    pub fn poppler_text_span_get_type() -> GType;
2464    pub fn poppler_text_span_copy(poppler_text_span: *mut PopplerTextSpan) -> *mut PopplerTextSpan;
2465    pub fn poppler_text_span_free(poppler_text_span: *mut PopplerTextSpan);
2466    pub fn poppler_text_span_get_color(
2467        poppler_text_span: *mut PopplerTextSpan,
2468        color: *mut PopplerColor,
2469    );
2470    pub fn poppler_text_span_get_font_name(
2471        poppler_text_span: *mut PopplerTextSpan,
2472    ) -> *const c_char;
2473    pub fn poppler_text_span_get_text(poppler_text_span: *mut PopplerTextSpan) -> *const c_char;
2474    pub fn poppler_text_span_is_bold_font(poppler_text_span: *mut PopplerTextSpan) -> gboolean;
2475    pub fn poppler_text_span_is_fixed_width_font(
2476        poppler_text_span: *mut PopplerTextSpan,
2477    ) -> gboolean;
2478    pub fn poppler_text_span_is_serif_font(poppler_text_span: *mut PopplerTextSpan) -> gboolean;
2479
2480    //=========================================================================
2481    // PopplerAnnot
2482    //=========================================================================
2483    pub fn poppler_annot_get_type() -> GType;
2484    pub fn poppler_annot_get_annot_type(poppler_annot: *mut PopplerAnnot) -> PopplerAnnotType;
2485    #[cfg(feature = "v24_12")]
2486    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2487    pub fn poppler_annot_get_border_width(
2488        poppler_annot: *mut PopplerAnnot,
2489        width: *mut c_double,
2490    ) -> gboolean;
2491    pub fn poppler_annot_get_color(poppler_annot: *mut PopplerAnnot) -> *mut PopplerColor;
2492    pub fn poppler_annot_get_contents(poppler_annot: *mut PopplerAnnot) -> *mut c_char;
2493    pub fn poppler_annot_get_flags(poppler_annot: *mut PopplerAnnot) -> PopplerAnnotFlag;
2494    pub fn poppler_annot_get_modified(poppler_annot: *mut PopplerAnnot) -> *mut c_char;
2495    pub fn poppler_annot_get_name(poppler_annot: *mut PopplerAnnot) -> *mut c_char;
2496    pub fn poppler_annot_get_page_index(poppler_annot: *mut PopplerAnnot) -> c_int;
2497    pub fn poppler_annot_get_rectangle(
2498        poppler_annot: *mut PopplerAnnot,
2499        poppler_rect: *mut PopplerRectangle,
2500    );
2501    #[cfg(feature = "v24_12")]
2502    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2503    pub fn poppler_annot_set_border_width(poppler_annot: *mut PopplerAnnot, width: c_double);
2504    pub fn poppler_annot_set_color(
2505        poppler_annot: *mut PopplerAnnot,
2506        poppler_color: *mut PopplerColor,
2507    );
2508    pub fn poppler_annot_set_contents(poppler_annot: *mut PopplerAnnot, contents: *const c_char);
2509    pub fn poppler_annot_set_flags(poppler_annot: *mut PopplerAnnot, flags: PopplerAnnotFlag);
2510    pub fn poppler_annot_set_rectangle(
2511        poppler_annot: *mut PopplerAnnot,
2512        poppler_rect: *mut PopplerRectangle,
2513    );
2514
2515    //=========================================================================
2516    // PopplerAnnotCircle
2517    //=========================================================================
2518    pub fn poppler_annot_circle_get_type() -> GType;
2519    pub fn poppler_annot_circle_new(
2520        doc: *mut PopplerDocument,
2521        rect: *mut PopplerRectangle,
2522    ) -> *mut PopplerAnnot;
2523    pub fn poppler_annot_circle_get_interior_color(
2524        poppler_annot: *mut PopplerAnnotCircle,
2525    ) -> *mut PopplerColor;
2526    pub fn poppler_annot_circle_set_interior_color(
2527        poppler_annot: *mut PopplerAnnotCircle,
2528        poppler_color: *mut PopplerColor,
2529    );
2530
2531    //=========================================================================
2532    // PopplerAnnotFileAttachment
2533    //=========================================================================
2534    pub fn poppler_annot_file_attachment_get_type() -> GType;
2535    pub fn poppler_annot_file_attachment_get_attachment(
2536        poppler_annot: *mut PopplerAnnotFileAttachment,
2537    ) -> *mut PopplerAttachment;
2538    pub fn poppler_annot_file_attachment_get_name(
2539        poppler_annot: *mut PopplerAnnotFileAttachment,
2540    ) -> *mut c_char;
2541
2542    //=========================================================================
2543    // PopplerAnnotFreeText
2544    //=========================================================================
2545    pub fn poppler_annot_free_text_get_type() -> GType;
2546    pub fn poppler_annot_free_text_new(
2547        doc: *mut PopplerDocument,
2548        rect: *mut PopplerRectangle,
2549    ) -> *mut PopplerAnnot;
2550    pub fn poppler_annot_free_text_get_callout_line(
2551        poppler_annot: *mut PopplerAnnotFreeText,
2552    ) -> *mut PopplerAnnotCalloutLine;
2553    #[cfg(feature = "v24_12")]
2554    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2555    pub fn poppler_annot_free_text_get_font_color(
2556        poppler_annot: *mut PopplerAnnotFreeText,
2557    ) -> *mut PopplerColor;
2558    #[cfg(feature = "v24_12")]
2559    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2560    pub fn poppler_annot_free_text_get_font_desc(
2561        poppler_annot: *mut PopplerAnnotFreeText,
2562    ) -> *mut PopplerFontDescription;
2563    pub fn poppler_annot_free_text_get_quadding(
2564        poppler_annot: *mut PopplerAnnotFreeText,
2565    ) -> PopplerAnnotFreeTextQuadding;
2566    #[cfg(feature = "v24_12")]
2567    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2568    pub fn poppler_annot_free_text_set_font_color(
2569        poppler_annot: *mut PopplerAnnotFreeText,
2570        color: *mut PopplerColor,
2571    );
2572    #[cfg(feature = "v24_12")]
2573    #[cfg_attr(docsrs, doc(cfg(feature = "v24_12")))]
2574    pub fn poppler_annot_free_text_set_font_desc(
2575        poppler_annot: *mut PopplerAnnotFreeText,
2576        font_desc: *mut PopplerFontDescription,
2577    );
2578
2579    //=========================================================================
2580    // PopplerAnnotInk
2581    //=========================================================================
2582    #[cfg(feature = "v25_6")]
2583    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2584    pub fn poppler_annot_ink_get_type() -> GType;
2585    #[cfg(feature = "v25_6")]
2586    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2587    pub fn poppler_annot_ink_new(
2588        doc: *mut PopplerDocument,
2589        rect: *mut PopplerRectangle,
2590    ) -> *mut PopplerAnnot;
2591    #[cfg(feature = "v25_6")]
2592    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2593    pub fn poppler_annot_ink_get_ink_list(
2594        annot: *mut PopplerAnnotInk,
2595        n_paths: *mut size_t,
2596    ) -> *mut *mut PopplerPath;
2597    #[cfg(feature = "v25_6")]
2598    #[cfg_attr(docsrs, doc(cfg(feature = "v25_6")))]
2599    pub fn poppler_annot_ink_set_ink_list(
2600        annot: *mut PopplerAnnotInk,
2601        ink_list: *mut *mut PopplerPath,
2602        n_paths: size_t,
2603    );
2604
2605    //=========================================================================
2606    // PopplerAnnotLine
2607    //=========================================================================
2608    pub fn poppler_annot_line_get_type() -> GType;
2609    pub fn poppler_annot_line_new(
2610        doc: *mut PopplerDocument,
2611        rect: *mut PopplerRectangle,
2612        start: *mut PopplerPoint,
2613        end: *mut PopplerPoint,
2614    ) -> *mut PopplerAnnot;
2615    pub fn poppler_annot_line_set_vertices(
2616        poppler_annot: *mut PopplerAnnotLine,
2617        start: *mut PopplerPoint,
2618        end: *mut PopplerPoint,
2619    );
2620
2621    //=========================================================================
2622    // PopplerAnnotMarkup
2623    //=========================================================================
2624    pub fn poppler_annot_markup_get_type() -> GType;
2625    pub fn poppler_annot_markup_get_date(
2626        poppler_annot: *mut PopplerAnnotMarkup,
2627    ) -> *mut glib::GDate;
2628    pub fn poppler_annot_markup_get_external_data(
2629        poppler_annot: *mut PopplerAnnotMarkup,
2630    ) -> PopplerAnnotExternalDataType;
2631    pub fn poppler_annot_markup_get_label(poppler_annot: *mut PopplerAnnotMarkup) -> *mut c_char;
2632    pub fn poppler_annot_markup_get_opacity(poppler_annot: *mut PopplerAnnotMarkup) -> c_double;
2633    pub fn poppler_annot_markup_get_popup_is_open(
2634        poppler_annot: *mut PopplerAnnotMarkup,
2635    ) -> gboolean;
2636    pub fn poppler_annot_markup_get_popup_rectangle(
2637        poppler_annot: *mut PopplerAnnotMarkup,
2638        poppler_rect: *mut PopplerRectangle,
2639    ) -> gboolean;
2640    pub fn poppler_annot_markup_get_reply_to(
2641        poppler_annot: *mut PopplerAnnotMarkup,
2642    ) -> PopplerAnnotMarkupReplyType;
2643    pub fn poppler_annot_markup_get_subject(poppler_annot: *mut PopplerAnnotMarkup) -> *mut c_char;
2644    pub fn poppler_annot_markup_has_popup(poppler_annot: *mut PopplerAnnotMarkup) -> gboolean;
2645    pub fn poppler_annot_markup_set_label(
2646        poppler_annot: *mut PopplerAnnotMarkup,
2647        label: *const c_char,
2648    );
2649    pub fn poppler_annot_markup_set_opacity(
2650        poppler_annot: *mut PopplerAnnotMarkup,
2651        opacity: c_double,
2652    );
2653    pub fn poppler_annot_markup_set_popup(
2654        poppler_annot: *mut PopplerAnnotMarkup,
2655        popup_rect: *mut PopplerRectangle,
2656    );
2657    pub fn poppler_annot_markup_set_popup_is_open(
2658        poppler_annot: *mut PopplerAnnotMarkup,
2659        is_open: gboolean,
2660    );
2661    pub fn poppler_annot_markup_set_popup_rectangle(
2662        poppler_annot: *mut PopplerAnnotMarkup,
2663        poppler_rect: *mut PopplerRectangle,
2664    );
2665
2666    //=========================================================================
2667    // PopplerAnnotMovie
2668    //=========================================================================
2669    pub fn poppler_annot_movie_get_type() -> GType;
2670    pub fn poppler_annot_movie_get_movie(
2671        poppler_annot: *mut PopplerAnnotMovie,
2672    ) -> *mut PopplerMovie;
2673    pub fn poppler_annot_movie_get_title(poppler_annot: *mut PopplerAnnotMovie) -> *mut c_char;
2674
2675    //=========================================================================
2676    // PopplerAnnotScreen
2677    //=========================================================================
2678    pub fn poppler_annot_screen_get_type() -> GType;
2679    pub fn poppler_annot_screen_get_action(
2680        poppler_annot: *mut PopplerAnnotScreen,
2681    ) -> *mut PopplerAction;
2682
2683    //=========================================================================
2684    // PopplerAnnotSquare
2685    //=========================================================================
2686    pub fn poppler_annot_square_get_type() -> GType;
2687    pub fn poppler_annot_square_new(
2688        doc: *mut PopplerDocument,
2689        rect: *mut PopplerRectangle,
2690    ) -> *mut PopplerAnnot;
2691    pub fn poppler_annot_square_get_interior_color(
2692        poppler_annot: *mut PopplerAnnotSquare,
2693    ) -> *mut PopplerColor;
2694    pub fn poppler_annot_square_set_interior_color(
2695        poppler_annot: *mut PopplerAnnotSquare,
2696        poppler_color: *mut PopplerColor,
2697    );
2698
2699    //=========================================================================
2700    // PopplerAnnotStamp
2701    //=========================================================================
2702    pub fn poppler_annot_stamp_get_type() -> GType;
2703    #[cfg(feature = "v22_7")]
2704    #[cfg_attr(docsrs, doc(cfg(feature = "v22_7")))]
2705    pub fn poppler_annot_stamp_new(
2706        doc: *mut PopplerDocument,
2707        rect: *mut PopplerRectangle,
2708    ) -> *mut PopplerAnnot;
2709    #[cfg(feature = "v22_7")]
2710    #[cfg_attr(docsrs, doc(cfg(feature = "v22_7")))]
2711    pub fn poppler_annot_stamp_get_icon(
2712        poppler_annot: *mut PopplerAnnotStamp,
2713    ) -> PopplerAnnotStampIcon;
2714    #[cfg(feature = "v22_7")]
2715    #[cfg_attr(docsrs, doc(cfg(feature = "v22_7")))]
2716    pub fn poppler_annot_stamp_set_custom_image(
2717        poppler_annot: *mut PopplerAnnotStamp,
2718        image: *mut cairo::cairo_surface_t,
2719        error: *mut *mut glib::GError,
2720    ) -> gboolean;
2721    #[cfg(feature = "v22_7")]
2722    #[cfg_attr(docsrs, doc(cfg(feature = "v22_7")))]
2723    pub fn poppler_annot_stamp_set_icon(
2724        poppler_annot: *mut PopplerAnnotStamp,
2725        icon: PopplerAnnotStampIcon,
2726    );
2727
2728    //=========================================================================
2729    // PopplerAnnotText
2730    //=========================================================================
2731    pub fn poppler_annot_text_get_type() -> GType;
2732    pub fn poppler_annot_text_new(
2733        doc: *mut PopplerDocument,
2734        rect: *mut PopplerRectangle,
2735    ) -> *mut PopplerAnnot;
2736    pub fn poppler_annot_text_get_icon(poppler_annot: *mut PopplerAnnotText) -> *mut c_char;
2737    pub fn poppler_annot_text_get_is_open(poppler_annot: *mut PopplerAnnotText) -> gboolean;
2738    pub fn poppler_annot_text_get_state(
2739        poppler_annot: *mut PopplerAnnotText,
2740    ) -> PopplerAnnotTextState;
2741    pub fn poppler_annot_text_set_icon(poppler_annot: *mut PopplerAnnotText, icon: *const c_char);
2742    pub fn poppler_annot_text_set_is_open(poppler_annot: *mut PopplerAnnotText, is_open: gboolean);
2743
2744    //=========================================================================
2745    // PopplerAnnotTextMarkup
2746    //=========================================================================
2747    pub fn poppler_annot_text_markup_get_type() -> GType;
2748    pub fn poppler_annot_text_markup_new_highlight(
2749        doc: *mut PopplerDocument,
2750        rect: *mut PopplerRectangle,
2751        quadrilaterals: *mut glib::GArray,
2752    ) -> *mut PopplerAnnot;
2753    pub fn poppler_annot_text_markup_new_squiggly(
2754        doc: *mut PopplerDocument,
2755        rect: *mut PopplerRectangle,
2756        quadrilaterals: *mut glib::GArray,
2757    ) -> *mut PopplerAnnot;
2758    pub fn poppler_annot_text_markup_new_strikeout(
2759        doc: *mut PopplerDocument,
2760        rect: *mut PopplerRectangle,
2761        quadrilaterals: *mut glib::GArray,
2762    ) -> *mut PopplerAnnot;
2763    pub fn poppler_annot_text_markup_new_underline(
2764        doc: *mut PopplerDocument,
2765        rect: *mut PopplerRectangle,
2766        quadrilaterals: *mut glib::GArray,
2767    ) -> *mut PopplerAnnot;
2768    pub fn poppler_annot_text_markup_get_quadrilaterals(
2769        poppler_annot: *mut PopplerAnnotTextMarkup,
2770    ) -> *mut glib::GArray;
2771    pub fn poppler_annot_text_markup_set_quadrilaterals(
2772        poppler_annot: *mut PopplerAnnotTextMarkup,
2773        quadrilaterals: *mut glib::GArray,
2774    );
2775
2776    //=========================================================================
2777    // PopplerAttachment
2778    //=========================================================================
2779    pub fn poppler_attachment_get_type() -> GType;
2780    #[cfg(feature = "v20_9")]
2781    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2782    pub fn poppler_attachment_get_checksum(
2783        attachment: *mut PopplerAttachment,
2784    ) -> *const glib::GString;
2785    #[cfg(feature = "v20_9")]
2786    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2787    pub fn poppler_attachment_get_ctime(attachment: *mut PopplerAttachment)
2788        -> *mut glib::GDateTime;
2789    #[cfg(feature = "v20_9")]
2790    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2791    pub fn poppler_attachment_get_description(attachment: *mut PopplerAttachment) -> *const c_char;
2792    #[cfg(feature = "v20_9")]
2793    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2794    pub fn poppler_attachment_get_mtime(attachment: *mut PopplerAttachment)
2795        -> *mut glib::GDateTime;
2796    #[cfg(feature = "v20_9")]
2797    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2798    pub fn poppler_attachment_get_name(attachment: *mut PopplerAttachment) -> *const c_char;
2799    #[cfg(feature = "v20_9")]
2800    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2801    pub fn poppler_attachment_get_size(attachment: *mut PopplerAttachment) -> size_t;
2802    pub fn poppler_attachment_save(
2803        attachment: *mut PopplerAttachment,
2804        filename: *const c_char,
2805        error: *mut *mut glib::GError,
2806    ) -> gboolean;
2807    pub fn poppler_attachment_save_to_callback(
2808        attachment: *mut PopplerAttachment,
2809        save_func: PopplerAttachmentSaveFunc,
2810        user_data: gpointer,
2811        error: *mut *mut glib::GError,
2812    ) -> gboolean;
2813    #[cfg(feature = "v21_12")]
2814    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2815    pub fn poppler_attachment_save_to_fd(
2816        attachment: *mut PopplerAttachment,
2817        fd: c_int,
2818        error: *mut *mut glib::GError,
2819    ) -> gboolean;
2820
2821    //=========================================================================
2822    // PopplerDocument
2823    //=========================================================================
2824    pub fn poppler_document_get_type() -> GType;
2825    #[cfg(feature = "v0_82")]
2826    #[cfg_attr(docsrs, doc(cfg(feature = "v0_82")))]
2827    pub fn poppler_document_new_from_bytes(
2828        bytes: *mut glib::GBytes,
2829        password: *const c_char,
2830        error: *mut *mut glib::GError,
2831    ) -> *mut PopplerDocument;
2832    pub fn poppler_document_new_from_data(
2833        data: *mut u8,
2834        length: c_int,
2835        password: *const c_char,
2836        error: *mut *mut glib::GError,
2837    ) -> *mut PopplerDocument;
2838    #[cfg(feature = "v21_12")]
2839    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2840    #[cfg(target_os = "linux")]
2841    #[cfg_attr(docsrs, doc(cfg(target_os = "linux")))]
2842    pub fn poppler_document_new_from_fd(
2843        fd: c_int,
2844        password: *const c_char,
2845        error: *mut *mut glib::GError,
2846    ) -> *mut PopplerDocument;
2847    pub fn poppler_document_new_from_file(
2848        uri: *const c_char,
2849        password: *const c_char,
2850        error: *mut *mut glib::GError,
2851    ) -> *mut PopplerDocument;
2852    pub fn poppler_document_new_from_gfile(
2853        file: *mut gio::GFile,
2854        password: *const c_char,
2855        cancellable: *mut gio::GCancellable,
2856        error: *mut *mut glib::GError,
2857    ) -> *mut PopplerDocument;
2858    pub fn poppler_document_new_from_stream(
2859        stream: *mut gio::GInputStream,
2860        length: i64,
2861        password: *const c_char,
2862        cancellable: *mut gio::GCancellable,
2863        error: *mut *mut glib::GError,
2864    ) -> *mut PopplerDocument;
2865    #[cfg(feature = "v0_78")]
2866    #[cfg_attr(docsrs, doc(cfg(feature = "v0_78")))]
2867    pub fn poppler_document_create_dests_tree(document: *mut PopplerDocument) -> *mut glib::GTree;
2868    pub fn poppler_document_find_dest(
2869        document: *mut PopplerDocument,
2870        link_name: *const c_char,
2871    ) -> *mut PopplerDest;
2872    pub fn poppler_document_get_attachments(document: *mut PopplerDocument) -> *mut glib::GList;
2873    pub fn poppler_document_get_author(document: *mut PopplerDocument) -> *mut c_char;
2874    pub fn poppler_document_get_creation_date(document: *mut PopplerDocument) -> time_t;
2875    #[cfg(feature = "v20_9")]
2876    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2877    pub fn poppler_document_get_creation_date_time(
2878        document: *mut PopplerDocument,
2879    ) -> *mut glib::GDateTime;
2880    pub fn poppler_document_get_creator(document: *mut PopplerDocument) -> *mut c_char;
2881    pub fn poppler_document_get_form_field(
2882        document: *mut PopplerDocument,
2883        id: c_int,
2884    ) -> *mut PopplerFormField;
2885    pub fn poppler_document_get_id(
2886        document: *mut PopplerDocument,
2887        permanent_id: *mut *mut c_char,
2888        update_id: *mut *mut c_char,
2889    ) -> gboolean;
2890    pub fn poppler_document_get_keywords(document: *mut PopplerDocument) -> *mut c_char;
2891    pub fn poppler_document_get_metadata(document: *mut PopplerDocument) -> *mut c_char;
2892    pub fn poppler_document_get_modification_date(document: *mut PopplerDocument) -> time_t;
2893    #[cfg(feature = "v20_9")]
2894    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2895    pub fn poppler_document_get_modification_date_time(
2896        document: *mut PopplerDocument,
2897    ) -> *mut glib::GDateTime;
2898    pub fn poppler_document_get_n_attachments(document: *mut PopplerDocument) -> c_uint;
2899    pub fn poppler_document_get_n_pages(document: *mut PopplerDocument) -> c_int;
2900    #[cfg(feature = "v21_12")]
2901    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2902    pub fn poppler_document_get_n_signatures(document: *const PopplerDocument) -> c_int;
2903    pub fn poppler_document_get_page(
2904        document: *mut PopplerDocument,
2905        index: c_int,
2906    ) -> *mut PopplerPage;
2907    pub fn poppler_document_get_page_by_label(
2908        document: *mut PopplerDocument,
2909        label: *const c_char,
2910    ) -> *mut PopplerPage;
2911    pub fn poppler_document_get_page_layout(document: *mut PopplerDocument) -> PopplerPageLayout;
2912    pub fn poppler_document_get_page_mode(document: *mut PopplerDocument) -> PopplerPageMode;
2913    pub fn poppler_document_get_pdf_conformance(
2914        document: *mut PopplerDocument,
2915    ) -> PopplerPDFConformance;
2916    pub fn poppler_document_get_pdf_part(document: *mut PopplerDocument) -> PopplerPDFPart;
2917    pub fn poppler_document_get_pdf_subtype(document: *mut PopplerDocument) -> PopplerPDFSubtype;
2918    pub fn poppler_document_get_pdf_subtype_string(document: *mut PopplerDocument) -> *mut c_char;
2919    pub fn poppler_document_get_pdf_version(
2920        document: *mut PopplerDocument,
2921        major_version: *mut c_uint,
2922        minor_version: *mut c_uint,
2923    );
2924    pub fn poppler_document_get_pdf_version_string(document: *mut PopplerDocument) -> *mut c_char;
2925    pub fn poppler_document_get_permissions(document: *mut PopplerDocument) -> PopplerPermissions;
2926    #[cfg(feature = "v0_80")]
2927    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
2928    pub fn poppler_document_get_print_duplex(document: *mut PopplerDocument) -> PopplerPrintDuplex;
2929    #[cfg(feature = "v0_80")]
2930    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
2931    pub fn poppler_document_get_print_n_copies(document: *mut PopplerDocument) -> c_int;
2932    #[cfg(feature = "v0_80")]
2933    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
2934    pub fn poppler_document_get_print_page_ranges(
2935        document: *mut PopplerDocument,
2936        n_ranges: *mut c_int,
2937    ) -> *mut PopplerPageRange;
2938    #[cfg(feature = "v0_73")]
2939    #[cfg_attr(docsrs, doc(cfg(feature = "v0_73")))]
2940    pub fn poppler_document_get_print_scaling(
2941        document: *mut PopplerDocument,
2942    ) -> PopplerPrintScaling;
2943    pub fn poppler_document_get_producer(document: *mut PopplerDocument) -> *mut c_char;
2944    #[cfg(feature = "v22_2")]
2945    #[cfg_attr(docsrs, doc(cfg(feature = "v22_2")))]
2946    pub fn poppler_document_get_signature_fields(
2947        document: *mut PopplerDocument,
2948    ) -> *mut glib::GList;
2949    pub fn poppler_document_get_subject(document: *mut PopplerDocument) -> *mut c_char;
2950    pub fn poppler_document_get_title(document: *mut PopplerDocument) -> *mut c_char;
2951    pub fn poppler_document_has_attachments(document: *mut PopplerDocument) -> gboolean;
2952    #[cfg(feature = "v0_90")]
2953    #[cfg_attr(docsrs, doc(cfg(feature = "v0_90")))]
2954    pub fn poppler_document_has_javascript(document: *mut PopplerDocument) -> gboolean;
2955    pub fn poppler_document_is_linearized(document: *mut PopplerDocument) -> gboolean;
2956    #[cfg(feature = "v0_90")]
2957    #[cfg_attr(docsrs, doc(cfg(feature = "v0_90")))]
2958    pub fn poppler_document_reset_form(
2959        document: *mut PopplerDocument,
2960        fields: *mut glib::GList,
2961        exclude_fields: gboolean,
2962    );
2963    pub fn poppler_document_save(
2964        document: *mut PopplerDocument,
2965        uri: *const c_char,
2966        error: *mut *mut glib::GError,
2967    ) -> gboolean;
2968    pub fn poppler_document_save_a_copy(
2969        document: *mut PopplerDocument,
2970        uri: *const c_char,
2971        error: *mut *mut glib::GError,
2972    ) -> gboolean;
2973    #[cfg(feature = "v21_12")]
2974    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
2975    #[cfg(target_os = "linux")]
2976    #[cfg_attr(docsrs, doc(cfg(target_os = "linux")))]
2977    pub fn poppler_document_save_to_fd(
2978        document: *mut PopplerDocument,
2979        fd: c_int,
2980        include_changes: gboolean,
2981        error: *mut *mut glib::GError,
2982    ) -> gboolean;
2983    pub fn poppler_document_set_author(document: *mut PopplerDocument, author: *const c_char);
2984    pub fn poppler_document_set_creation_date(
2985        document: *mut PopplerDocument,
2986        creation_date: time_t,
2987    );
2988    #[cfg(feature = "v20_9")]
2989    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
2990    pub fn poppler_document_set_creation_date_time(
2991        document: *mut PopplerDocument,
2992        creation_datetime: *mut glib::GDateTime,
2993    );
2994    pub fn poppler_document_set_creator(document: *mut PopplerDocument, creator: *const c_char);
2995    pub fn poppler_document_set_keywords(document: *mut PopplerDocument, keywords: *const c_char);
2996    pub fn poppler_document_set_modification_date(
2997        document: *mut PopplerDocument,
2998        modification_date: time_t,
2999    );
3000    #[cfg(feature = "v20_9")]
3001    #[cfg_attr(docsrs, doc(cfg(feature = "v20_9")))]
3002    pub fn poppler_document_set_modification_date_time(
3003        document: *mut PopplerDocument,
3004        modification_datetime: *mut glib::GDateTime,
3005    );
3006    pub fn poppler_document_set_producer(document: *mut PopplerDocument, producer: *const c_char);
3007    pub fn poppler_document_set_subject(document: *mut PopplerDocument, subject: *const c_char);
3008    pub fn poppler_document_set_title(document: *mut PopplerDocument, title: *const c_char);
3009    #[cfg(feature = "v23_7")]
3010    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
3011    pub fn poppler_document_sign(
3012        document: *mut PopplerDocument,
3013        signing_data: *const PopplerSigningData,
3014        cancellable: *mut gio::GCancellable,
3015        callback: gio::GAsyncReadyCallback,
3016        user_data: gpointer,
3017    );
3018    #[cfg(feature = "v23_7")]
3019    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
3020    pub fn poppler_document_sign_finish(
3021        document: *mut PopplerDocument,
3022        result: *mut gio::GAsyncResult,
3023        error: *mut *mut glib::GError,
3024    ) -> gboolean;
3025
3026    //=========================================================================
3027    // PopplerFontInfo
3028    //=========================================================================
3029    pub fn poppler_font_info_get_type() -> GType;
3030    pub fn poppler_font_info_new(document: *mut PopplerDocument) -> *mut PopplerFontInfo;
3031    pub fn poppler_font_info_free(font_info: *mut PopplerFontInfo);
3032    pub fn poppler_font_info_scan(
3033        font_info: *mut PopplerFontInfo,
3034        n_pages: c_int,
3035        iter: *mut *mut PopplerFontsIter,
3036    ) -> gboolean;
3037
3038    //=========================================================================
3039    // PopplerFormField
3040    //=========================================================================
3041    pub fn poppler_form_field_get_type() -> GType;
3042    pub fn poppler_form_field_button_get_button_type(
3043        field: *mut PopplerFormField,
3044    ) -> PopplerFormButtonType;
3045    pub fn poppler_form_field_button_get_state(field: *mut PopplerFormField) -> gboolean;
3046    pub fn poppler_form_field_button_set_state(field: *mut PopplerFormField, state: gboolean);
3047    pub fn poppler_form_field_choice_can_select_multiple(field: *mut PopplerFormField) -> gboolean;
3048    pub fn poppler_form_field_choice_commit_on_change(field: *mut PopplerFormField) -> gboolean;
3049    pub fn poppler_form_field_choice_do_spell_check(field: *mut PopplerFormField) -> gboolean;
3050    pub fn poppler_form_field_choice_get_choice_type(
3051        field: *mut PopplerFormField,
3052    ) -> PopplerFormChoiceType;
3053    pub fn poppler_form_field_choice_get_item(
3054        field: *mut PopplerFormField,
3055        index: c_int,
3056    ) -> *mut c_char;
3057    pub fn poppler_form_field_choice_get_n_items(field: *mut PopplerFormField) -> c_int;
3058    pub fn poppler_form_field_choice_get_text(field: *mut PopplerFormField) -> *mut c_char;
3059    pub fn poppler_form_field_choice_is_editable(field: *mut PopplerFormField) -> gboolean;
3060    pub fn poppler_form_field_choice_is_item_selected(
3061        field: *mut PopplerFormField,
3062        index: c_int,
3063    ) -> gboolean;
3064    pub fn poppler_form_field_choice_select_item(field: *mut PopplerFormField, index: c_int);
3065    pub fn poppler_form_field_choice_set_text(field: *mut PopplerFormField, text: *const c_char);
3066    pub fn poppler_form_field_choice_toggle_item(field: *mut PopplerFormField, index: c_int);
3067    pub fn poppler_form_field_choice_unselect_all(field: *mut PopplerFormField);
3068    pub fn poppler_form_field_get_action(field: *mut PopplerFormField) -> *mut PopplerAction;
3069    #[cfg(feature = "v0_72")]
3070    #[cfg_attr(docsrs, doc(cfg(feature = "v0_72")))]
3071    pub fn poppler_form_field_get_additional_action(
3072        field: *mut PopplerFormField,
3073        type_: PopplerAdditionalActionType,
3074    ) -> *mut PopplerAction;
3075    #[cfg(feature = "v0_88")]
3076    #[cfg_attr(docsrs, doc(cfg(feature = "v0_88")))]
3077    pub fn poppler_form_field_get_alternate_ui_name(field: *mut PopplerFormField) -> *mut c_char;
3078    pub fn poppler_form_field_get_field_type(field: *mut PopplerFormField) -> PopplerFormFieldType;
3079    pub fn poppler_form_field_get_font_size(field: *mut PopplerFormField) -> c_double;
3080    pub fn poppler_form_field_get_id(field: *mut PopplerFormField) -> c_int;
3081    pub fn poppler_form_field_get_mapping_name(field: *mut PopplerFormField) -> *mut c_char;
3082    pub fn poppler_form_field_get_name(field: *mut PopplerFormField) -> *mut c_char;
3083    pub fn poppler_form_field_get_partial_name(field: *mut PopplerFormField) -> *mut c_char;
3084    pub fn poppler_form_field_is_read_only(field: *mut PopplerFormField) -> gboolean;
3085    #[cfg(feature = "v21_12")]
3086    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
3087    pub fn poppler_form_field_signature_validate_async(
3088        field: *mut PopplerFormField,
3089        flags: PopplerSignatureValidationFlags,
3090        cancellable: *mut gio::GCancellable,
3091        callback: gio::GAsyncReadyCallback,
3092        user_data: gpointer,
3093    );
3094    #[cfg(feature = "v21_12")]
3095    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
3096    pub fn poppler_form_field_signature_validate_finish(
3097        field: *mut PopplerFormField,
3098        result: *mut gio::GAsyncResult,
3099        error: *mut *mut glib::GError,
3100    ) -> *mut PopplerSignatureInfo;
3101    #[cfg(feature = "v21_12")]
3102    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
3103    pub fn poppler_form_field_signature_validate_sync(
3104        field: *mut PopplerFormField,
3105        flags: PopplerSignatureValidationFlags,
3106        cancellable: *mut gio::GCancellable,
3107        error: *mut *mut glib::GError,
3108    ) -> *mut PopplerSignatureInfo;
3109    pub fn poppler_form_field_text_do_scroll(field: *mut PopplerFormField) -> gboolean;
3110    pub fn poppler_form_field_text_do_spell_check(field: *mut PopplerFormField) -> gboolean;
3111    pub fn poppler_form_field_text_get_max_len(field: *mut PopplerFormField) -> c_int;
3112    pub fn poppler_form_field_text_get_text(field: *mut PopplerFormField) -> *mut c_char;
3113    pub fn poppler_form_field_text_get_text_type(
3114        field: *mut PopplerFormField,
3115    ) -> PopplerFormTextType;
3116    pub fn poppler_form_field_text_is_password(field: *mut PopplerFormField) -> gboolean;
3117    pub fn poppler_form_field_text_is_rich_text(field: *mut PopplerFormField) -> gboolean;
3118    pub fn poppler_form_field_text_set_text(field: *mut PopplerFormField, text: *const c_char);
3119
3120    //=========================================================================
3121    // PopplerLayer
3122    //=========================================================================
3123    pub fn poppler_layer_get_type() -> GType;
3124    pub fn poppler_layer_get_radio_button_group_id(layer: *mut PopplerLayer) -> c_int;
3125    pub fn poppler_layer_get_title(layer: *mut PopplerLayer) -> *const c_char;
3126    pub fn poppler_layer_hide(layer: *mut PopplerLayer);
3127    pub fn poppler_layer_is_parent(layer: *mut PopplerLayer) -> gboolean;
3128    pub fn poppler_layer_is_visible(layer: *mut PopplerLayer) -> gboolean;
3129    pub fn poppler_layer_show(layer: *mut PopplerLayer);
3130
3131    //=========================================================================
3132    // PopplerMedia
3133    //=========================================================================
3134    pub fn poppler_media_get_type() -> GType;
3135    #[cfg(feature = "v20_4")]
3136    #[cfg_attr(docsrs, doc(cfg(feature = "v20_4")))]
3137    pub fn poppler_media_get_auto_play(poppler_media: *mut PopplerMedia) -> gboolean;
3138    pub fn poppler_media_get_filename(poppler_media: *mut PopplerMedia) -> *const c_char;
3139    pub fn poppler_media_get_mime_type(poppler_media: *mut PopplerMedia) -> *const c_char;
3140    #[cfg(feature = "v20_4")]
3141    #[cfg_attr(docsrs, doc(cfg(feature = "v20_4")))]
3142    pub fn poppler_media_get_repeat_count(poppler_media: *mut PopplerMedia) -> c_float;
3143    #[cfg(feature = "v20_4")]
3144    #[cfg_attr(docsrs, doc(cfg(feature = "v20_4")))]
3145    pub fn poppler_media_get_show_controls(poppler_media: *mut PopplerMedia) -> gboolean;
3146    pub fn poppler_media_is_embedded(poppler_media: *mut PopplerMedia) -> gboolean;
3147    pub fn poppler_media_save(
3148        poppler_media: *mut PopplerMedia,
3149        filename: *const c_char,
3150        error: *mut *mut glib::GError,
3151    ) -> gboolean;
3152    pub fn poppler_media_save_to_callback(
3153        poppler_media: *mut PopplerMedia,
3154        save_func: PopplerMediaSaveFunc,
3155        user_data: gpointer,
3156        error: *mut *mut glib::GError,
3157    ) -> gboolean;
3158    #[cfg(feature = "v21_12")]
3159    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
3160    #[cfg(target_os = "linux")]
3161    #[cfg_attr(docsrs, doc(cfg(target_os = "linux")))]
3162    pub fn poppler_media_save_to_fd(
3163        poppler_media: *mut PopplerMedia,
3164        fd: c_int,
3165        error: *mut *mut glib::GError,
3166    ) -> gboolean;
3167
3168    //=========================================================================
3169    // PopplerMovie
3170    //=========================================================================
3171    pub fn poppler_movie_get_type() -> GType;
3172    #[cfg(feature = "v0_89")]
3173    #[cfg_attr(docsrs, doc(cfg(feature = "v0_89")))]
3174    pub fn poppler_movie_get_aspect(
3175        poppler_movie: *mut PopplerMovie,
3176        width: *mut c_int,
3177        height: *mut c_int,
3178    );
3179    #[cfg(feature = "v0_80")]
3180    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
3181    pub fn poppler_movie_get_duration(poppler_movie: *mut PopplerMovie) -> u64;
3182    pub fn poppler_movie_get_filename(poppler_movie: *mut PopplerMovie) -> *const c_char;
3183    pub fn poppler_movie_get_play_mode(poppler_movie: *mut PopplerMovie) -> PopplerMoviePlayMode;
3184    #[cfg(feature = "v0_80")]
3185    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
3186    pub fn poppler_movie_get_rate(poppler_movie: *mut PopplerMovie) -> c_double;
3187    #[cfg(feature = "v0_80")]
3188    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
3189    pub fn poppler_movie_get_rotation_angle(poppler_movie: *mut PopplerMovie) -> c_ushort;
3190    #[cfg(feature = "v0_80")]
3191    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
3192    pub fn poppler_movie_get_start(poppler_movie: *mut PopplerMovie) -> u64;
3193    #[cfg(feature = "v0_80")]
3194    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
3195    pub fn poppler_movie_get_volume(poppler_movie: *mut PopplerMovie) -> c_double;
3196    #[cfg(feature = "v0_80")]
3197    #[cfg_attr(docsrs, doc(cfg(feature = "v0_80")))]
3198    pub fn poppler_movie_is_synchronous(poppler_movie: *mut PopplerMovie) -> gboolean;
3199    pub fn poppler_movie_need_poster(poppler_movie: *mut PopplerMovie) -> gboolean;
3200    pub fn poppler_movie_show_controls(poppler_movie: *mut PopplerMovie) -> gboolean;
3201
3202    //=========================================================================
3203    // PopplerPSFile
3204    //=========================================================================
3205    pub fn poppler_ps_file_get_type() -> GType;
3206    pub fn poppler_ps_file_new(
3207        document: *mut PopplerDocument,
3208        filename: *const c_char,
3209        first_page: c_int,
3210        n_pages: c_int,
3211    ) -> *mut PopplerPSFile;
3212    #[cfg(feature = "v21_12")]
3213    #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
3214    #[cfg(target_os = "linux")]
3215    #[cfg_attr(docsrs, doc(cfg(target_os = "linux")))]
3216    pub fn poppler_ps_file_new_fd(
3217        document: *mut PopplerDocument,
3218        fd: c_int,
3219        first_page: c_int,
3220        n_pages: c_int,
3221    ) -> *mut PopplerPSFile;
3222    pub fn poppler_ps_file_free(ps_file: *mut PopplerPSFile);
3223    pub fn poppler_ps_file_set_duplex(ps_file: *mut PopplerPSFile, duplex: gboolean);
3224    pub fn poppler_ps_file_set_paper_size(
3225        ps_file: *mut PopplerPSFile,
3226        width: c_double,
3227        height: c_double,
3228    );
3229
3230    //=========================================================================
3231    // PopplerPage
3232    //=========================================================================
3233    pub fn poppler_page_get_type() -> GType;
3234    pub fn poppler_page_free_annot_mapping(list: *mut glib::GList);
3235    pub fn poppler_page_free_form_field_mapping(list: *mut glib::GList);
3236    pub fn poppler_page_free_image_mapping(list: *mut glib::GList);
3237    pub fn poppler_page_free_link_mapping(list: *mut glib::GList);
3238    pub fn poppler_page_free_text_attributes(list: *mut glib::GList);
3239    pub fn poppler_page_selection_region_free(region: *mut glib::GList);
3240    pub fn poppler_page_add_annot(page: *mut PopplerPage, annot: *mut PopplerAnnot);
3241    pub fn poppler_page_find_text(page: *mut PopplerPage, text: *const c_char) -> *mut glib::GList;
3242    pub fn poppler_page_find_text_with_options(
3243        page: *mut PopplerPage,
3244        text: *const c_char,
3245        options: PopplerFindFlags,
3246    ) -> *mut glib::GList;
3247    pub fn poppler_page_get_annot_mapping(page: *mut PopplerPage) -> *mut glib::GList;
3248    pub fn poppler_page_get_bounding_box(
3249        page: *mut PopplerPage,
3250        rect: *mut PopplerRectangle,
3251    ) -> gboolean;
3252    pub fn poppler_page_get_crop_box(page: *mut PopplerPage, rect: *mut PopplerRectangle);
3253    pub fn poppler_page_get_duration(page: *mut PopplerPage) -> c_double;
3254    pub fn poppler_page_get_form_field_mapping(page: *mut PopplerPage) -> *mut glib::GList;
3255    pub fn poppler_page_get_image(
3256        page: *mut PopplerPage,
3257        image_id: c_int,
3258    ) -> *mut cairo::cairo_surface_t;
3259    pub fn poppler_page_get_image_mapping(page: *mut PopplerPage) -> *mut glib::GList;
3260    pub fn poppler_page_get_index(page: *mut PopplerPage) -> c_int;
3261    pub fn poppler_page_get_label(page: *mut PopplerPage) -> *mut c_char;
3262    pub fn poppler_page_get_link_mapping(page: *mut PopplerPage) -> *mut glib::GList;
3263    pub fn poppler_page_get_selected_region(
3264        page: *mut PopplerPage,
3265        scale: c_double,
3266        style: PopplerSelectionStyle,
3267        selection: *mut PopplerRectangle,
3268    ) -> *mut cairo::cairo_region_t;
3269    pub fn poppler_page_get_selected_text(
3270        page: *mut PopplerPage,
3271        style: PopplerSelectionStyle,
3272        selection: *mut PopplerRectangle,
3273    ) -> *mut c_char;
3274    pub fn poppler_page_get_selection_region(
3275        page: *mut PopplerPage,
3276        scale: c_double,
3277        style: PopplerSelectionStyle,
3278        selection: *mut PopplerRectangle,
3279    ) -> *mut glib::GList;
3280    pub fn poppler_page_get_size(
3281        page: *mut PopplerPage,
3282        width: *mut c_double,
3283        height: *mut c_double,
3284    );
3285    pub fn poppler_page_get_text(page: *mut PopplerPage) -> *mut c_char;
3286    pub fn poppler_page_get_text_attributes(page: *mut PopplerPage) -> *mut glib::GList;
3287    pub fn poppler_page_get_text_attributes_for_area(
3288        page: *mut PopplerPage,
3289        area: *mut PopplerRectangle,
3290    ) -> *mut glib::GList;
3291    pub fn poppler_page_get_text_for_area(
3292        page: *mut PopplerPage,
3293        area: *mut PopplerRectangle,
3294    ) -> *mut c_char;
3295    pub fn poppler_page_get_text_layout(
3296        page: *mut PopplerPage,
3297        rectangles: *mut *mut PopplerRectangle,
3298        n_rectangles: *mut c_uint,
3299    ) -> gboolean;
3300    pub fn poppler_page_get_text_layout_for_area(
3301        page: *mut PopplerPage,
3302        area: *mut PopplerRectangle,
3303        rectangles: *mut *mut PopplerRectangle,
3304        n_rectangles: *mut c_uint,
3305    ) -> gboolean;
3306    pub fn poppler_page_get_thumbnail(page: *mut PopplerPage) -> *mut cairo::cairo_surface_t;
3307    pub fn poppler_page_get_thumbnail_size(
3308        page: *mut PopplerPage,
3309        width: *mut c_int,
3310        height: *mut c_int,
3311    ) -> gboolean;
3312    pub fn poppler_page_get_transition(page: *mut PopplerPage) -> *mut PopplerPageTransition;
3313    pub fn poppler_page_remove_annot(page: *mut PopplerPage, annot: *mut PopplerAnnot);
3314    pub fn poppler_page_render(page: *mut PopplerPage, cairo: *mut cairo::cairo_t);
3315    pub fn poppler_page_render_for_printing(page: *mut PopplerPage, cairo: *mut cairo::cairo_t);
3316    pub fn poppler_page_render_for_printing_with_options(
3317        page: *mut PopplerPage,
3318        cairo: *mut cairo::cairo_t,
3319        options: PopplerPrintFlags,
3320    );
3321    #[cfg(feature = "v25_2")]
3322    #[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
3323    pub fn poppler_page_render_full(
3324        page: *mut PopplerPage,
3325        cairo: *mut cairo::cairo_t,
3326        printing: gboolean,
3327        flags: PopplerRenderAnnotsFlags,
3328    );
3329    pub fn poppler_page_render_selection(
3330        page: *mut PopplerPage,
3331        cairo: *mut cairo::cairo_t,
3332        selection: *mut PopplerRectangle,
3333        old_selection: *mut PopplerRectangle,
3334        style: PopplerSelectionStyle,
3335        glyph_color: *mut PopplerColor,
3336        background_color: *mut PopplerColor,
3337    );
3338    pub fn poppler_page_render_to_ps(page: *mut PopplerPage, ps_file: *mut PopplerPSFile);
3339
3340    //=========================================================================
3341    // PopplerStructureElement
3342    //=========================================================================
3343    pub fn poppler_structure_element_get_type() -> GType;
3344    pub fn poppler_structure_element_get_abbreviation(
3345        poppler_structure_element: *mut PopplerStructureElement,
3346    ) -> *mut c_char;
3347    pub fn poppler_structure_element_get_actual_text(
3348        poppler_structure_element: *mut PopplerStructureElement,
3349    ) -> *mut c_char;
3350    pub fn poppler_structure_element_get_alt_text(
3351        poppler_structure_element: *mut PopplerStructureElement,
3352    ) -> *mut c_char;
3353    pub fn poppler_structure_element_get_background_color(
3354        poppler_structure_element: *mut PopplerStructureElement,
3355        color: *mut PopplerColor,
3356    ) -> gboolean;
3357    pub fn poppler_structure_element_get_baseline_shift(
3358        poppler_structure_element: *mut PopplerStructureElement,
3359    ) -> c_double;
3360    pub fn poppler_structure_element_get_block_align(
3361        poppler_structure_element: *mut PopplerStructureElement,
3362    ) -> PopplerStructureBlockAlign;
3363    pub fn poppler_structure_element_get_border_color(
3364        poppler_structure_element: *mut PopplerStructureElement,
3365        colors: *mut [PopplerColor; 4],
3366    ) -> gboolean;
3367    pub fn poppler_structure_element_get_border_style(
3368        poppler_structure_element: *mut PopplerStructureElement,
3369        border_styles: *mut [PopplerStructureBorderStyle; 4],
3370    );
3371    pub fn poppler_structure_element_get_border_thickness(
3372        poppler_structure_element: *mut PopplerStructureElement,
3373        border_thicknesses: *mut [c_double; 4],
3374    ) -> gboolean;
3375    pub fn poppler_structure_element_get_bounding_box(
3376        poppler_structure_element: *mut PopplerStructureElement,
3377        bounding_box: *mut PopplerRectangle,
3378    ) -> gboolean;
3379    pub fn poppler_structure_element_get_color(
3380        poppler_structure_element: *mut PopplerStructureElement,
3381        color: *mut PopplerColor,
3382    ) -> gboolean;
3383    pub fn poppler_structure_element_get_column_count(
3384        poppler_structure_element: *mut PopplerStructureElement,
3385    ) -> c_uint;
3386    pub fn poppler_structure_element_get_column_gaps(
3387        poppler_structure_element: *mut PopplerStructureElement,
3388        n_values: *mut c_uint,
3389    ) -> *mut c_double;
3390    pub fn poppler_structure_element_get_column_widths(
3391        poppler_structure_element: *mut PopplerStructureElement,
3392        n_values: *mut c_uint,
3393    ) -> *mut c_double;
3394    pub fn poppler_structure_element_get_end_indent(
3395        poppler_structure_element: *mut PopplerStructureElement,
3396    ) -> c_double;
3397    pub fn poppler_structure_element_get_form_description(
3398        poppler_structure_element: *mut PopplerStructureElement,
3399    ) -> *mut c_char;
3400    pub fn poppler_structure_element_get_form_role(
3401        poppler_structure_element: *mut PopplerStructureElement,
3402    ) -> PopplerStructureFormRole;
3403    pub fn poppler_structure_element_get_form_state(
3404        poppler_structure_element: *mut PopplerStructureElement,
3405    ) -> PopplerStructureFormState;
3406    pub fn poppler_structure_element_get_glyph_orientation(
3407        poppler_structure_element: *mut PopplerStructureElement,
3408    ) -> PopplerStructureGlyphOrientation;
3409    pub fn poppler_structure_element_get_height(
3410        poppler_structure_element: *mut PopplerStructureElement,
3411    ) -> c_double;
3412    pub fn poppler_structure_element_get_id(
3413        poppler_structure_element: *mut PopplerStructureElement,
3414    ) -> *mut c_char;
3415    pub fn poppler_structure_element_get_inline_align(
3416        poppler_structure_element: *mut PopplerStructureElement,
3417    ) -> PopplerStructureInlineAlign;
3418    pub fn poppler_structure_element_get_kind(
3419        poppler_structure_element: *mut PopplerStructureElement,
3420    ) -> PopplerStructureElementKind;
3421    pub fn poppler_structure_element_get_language(
3422        poppler_structure_element: *mut PopplerStructureElement,
3423    ) -> *mut c_char;
3424    pub fn poppler_structure_element_get_line_height(
3425        poppler_structure_element: *mut PopplerStructureElement,
3426    ) -> c_double;
3427    pub fn poppler_structure_element_get_list_numbering(
3428        poppler_structure_element: *mut PopplerStructureElement,
3429    ) -> PopplerStructureListNumbering;
3430    pub fn poppler_structure_element_get_padding(
3431        poppler_structure_element: *mut PopplerStructureElement,
3432        paddings: *mut [c_double; 4],
3433    );
3434    pub fn poppler_structure_element_get_page(
3435        poppler_structure_element: *mut PopplerStructureElement,
3436    ) -> c_int;
3437    pub fn poppler_structure_element_get_placement(
3438        poppler_structure_element: *mut PopplerStructureElement,
3439    ) -> PopplerStructurePlacement;
3440    pub fn poppler_structure_element_get_ruby_align(
3441        poppler_structure_element: *mut PopplerStructureElement,
3442    ) -> PopplerStructureRubyAlign;
3443    pub fn poppler_structure_element_get_ruby_position(
3444        poppler_structure_element: *mut PopplerStructureElement,
3445    ) -> PopplerStructureRubyPosition;
3446    pub fn poppler_structure_element_get_space_after(
3447        poppler_structure_element: *mut PopplerStructureElement,
3448    ) -> c_double;
3449    pub fn poppler_structure_element_get_space_before(
3450        poppler_structure_element: *mut PopplerStructureElement,
3451    ) -> c_double;
3452    pub fn poppler_structure_element_get_start_indent(
3453        poppler_structure_element: *mut PopplerStructureElement,
3454    ) -> c_double;
3455    pub fn poppler_structure_element_get_table_border_style(
3456        poppler_structure_element: *mut PopplerStructureElement,
3457        border_styles: *mut [PopplerStructureBorderStyle; 4],
3458    );
3459    pub fn poppler_structure_element_get_table_column_span(
3460        poppler_structure_element: *mut PopplerStructureElement,
3461    ) -> c_uint;
3462    pub fn poppler_structure_element_get_table_headers(
3463        poppler_structure_element: *mut PopplerStructureElement,
3464    ) -> *mut *mut c_char;
3465    pub fn poppler_structure_element_get_table_padding(
3466        poppler_structure_element: *mut PopplerStructureElement,
3467        paddings: *mut [c_double; 4],
3468    );
3469    pub fn poppler_structure_element_get_table_row_span(
3470        poppler_structure_element: *mut PopplerStructureElement,
3471    ) -> c_uint;
3472    pub fn poppler_structure_element_get_table_scope(
3473        poppler_structure_element: *mut PopplerStructureElement,
3474    ) -> PopplerStructureTableScope;
3475    pub fn poppler_structure_element_get_table_summary(
3476        poppler_structure_element: *mut PopplerStructureElement,
3477    ) -> *mut c_char;
3478    pub fn poppler_structure_element_get_text(
3479        poppler_structure_element: *mut PopplerStructureElement,
3480        flags: PopplerStructureGetTextFlags,
3481    ) -> *mut c_char;
3482    pub fn poppler_structure_element_get_text_align(
3483        poppler_structure_element: *mut PopplerStructureElement,
3484    ) -> PopplerStructureTextAlign;
3485    pub fn poppler_structure_element_get_text_decoration_color(
3486        poppler_structure_element: *mut PopplerStructureElement,
3487        color: *mut PopplerColor,
3488    ) -> gboolean;
3489    pub fn poppler_structure_element_get_text_decoration_thickness(
3490        poppler_structure_element: *mut PopplerStructureElement,
3491    ) -> c_double;
3492    pub fn poppler_structure_element_get_text_decoration_type(
3493        poppler_structure_element: *mut PopplerStructureElement,
3494    ) -> PopplerStructureTextDecoration;
3495    pub fn poppler_structure_element_get_text_indent(
3496        poppler_structure_element: *mut PopplerStructureElement,
3497    ) -> c_double;
3498    pub fn poppler_structure_element_get_text_spans(
3499        poppler_structure_element: *mut PopplerStructureElement,
3500        n_text_spans: *mut c_uint,
3501    ) -> *mut *mut PopplerTextSpan;
3502    pub fn poppler_structure_element_get_title(
3503        poppler_structure_element: *mut PopplerStructureElement,
3504    ) -> *mut c_char;
3505    pub fn poppler_structure_element_get_width(
3506        poppler_structure_element: *mut PopplerStructureElement,
3507    ) -> c_double;
3508    pub fn poppler_structure_element_get_writing_mode(
3509        poppler_structure_element: *mut PopplerStructureElement,
3510    ) -> PopplerStructureWritingMode;
3511    pub fn poppler_structure_element_is_block(
3512        poppler_structure_element: *mut PopplerStructureElement,
3513    ) -> gboolean;
3514    pub fn poppler_structure_element_is_content(
3515        poppler_structure_element: *mut PopplerStructureElement,
3516    ) -> gboolean;
3517    pub fn poppler_structure_element_is_grouping(
3518        poppler_structure_element: *mut PopplerStructureElement,
3519    ) -> gboolean;
3520    pub fn poppler_structure_element_is_inline(
3521        poppler_structure_element: *mut PopplerStructureElement,
3522    ) -> gboolean;
3523
3524    //=========================================================================
3525    // Other functions
3526    //=========================================================================
3527    pub fn poppler_date_parse(date: *const c_char, timet: *mut time_t) -> gboolean;
3528    pub fn poppler_get_available_signing_certificates() -> *mut glib::GList;
3529    pub fn poppler_get_backend() -> PopplerBackend;
3530    #[cfg(feature = "v23_7")]
3531    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
3532    pub fn poppler_get_certificate_info_by_id(id: *const c_char) -> *mut PopplerCertificateInfo;
3533    #[cfg(feature = "v23_7")]
3534    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
3535    pub fn poppler_get_nss_dir() -> *mut c_char;
3536    pub fn poppler_get_version() -> *const c_char;
3537    #[cfg(feature = "v0_73")]
3538    #[cfg_attr(docsrs, doc(cfg(feature = "v0_73")))]
3539    pub fn poppler_named_dest_from_bytestring(data: *const u8, length: size_t) -> *mut c_char;
3540    #[cfg(feature = "v0_73")]
3541    #[cfg_attr(docsrs, doc(cfg(feature = "v0_73")))]
3542    pub fn poppler_named_dest_to_bytestring(name: *const c_char, length: *mut size_t) -> *mut u8;
3543    #[cfg(feature = "v23_7")]
3544    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
3545    pub fn poppler_set_nss_dir(path: *const c_char);
3546    #[cfg(feature = "v23_7")]
3547    #[cfg_attr(docsrs, doc(cfg(feature = "v23_7")))]
3548    pub fn poppler_set_nss_password_callback(func: PopplerNssPasswordFunc);
3549
3550}