Spaces:
Running
Running
/* poppler-structure-element.h: glib interface to poppler | |
* | |
* Copyright (C) 2013 Igalia S.L. | |
* | |
* This program is free software; you can redistribute it and/or modify | |
* it under the terms of the GNU General Public License as published by | |
* the Free Software Foundation; either version 2, or (at your option) | |
* any later version. | |
* | |
* This program is distributed in the hope that it will be useful, | |
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
* GNU General Public License for more details. | |
* | |
* You should have received a copy of the GNU General Public License | |
* along with this program; if not, write to the Free Software | |
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. | |
*/ | |
G_BEGIN_DECLS | |
/** | |
* PopplerStructureElementKind: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_ELEMENT_CONTENT, | |
POPPLER_STRUCTURE_ELEMENT_OBJECT_REFERENCE, | |
POPPLER_STRUCTURE_ELEMENT_DOCUMENT, | |
POPPLER_STRUCTURE_ELEMENT_PART, | |
POPPLER_STRUCTURE_ELEMENT_ARTICLE, | |
POPPLER_STRUCTURE_ELEMENT_SECTION, | |
POPPLER_STRUCTURE_ELEMENT_DIV, | |
POPPLER_STRUCTURE_ELEMENT_SPAN, | |
POPPLER_STRUCTURE_ELEMENT_QUOTE, | |
POPPLER_STRUCTURE_ELEMENT_NOTE, | |
POPPLER_STRUCTURE_ELEMENT_REFERENCE, | |
POPPLER_STRUCTURE_ELEMENT_BIBENTRY, | |
POPPLER_STRUCTURE_ELEMENT_CODE, | |
POPPLER_STRUCTURE_ELEMENT_LINK, | |
POPPLER_STRUCTURE_ELEMENT_ANNOT, | |
POPPLER_STRUCTURE_ELEMENT_BLOCKQUOTE, | |
POPPLER_STRUCTURE_ELEMENT_CAPTION, | |
POPPLER_STRUCTURE_ELEMENT_NONSTRUCT, | |
POPPLER_STRUCTURE_ELEMENT_TOC, | |
POPPLER_STRUCTURE_ELEMENT_TOC_ITEM, | |
POPPLER_STRUCTURE_ELEMENT_INDEX, | |
POPPLER_STRUCTURE_ELEMENT_PRIVATE, | |
POPPLER_STRUCTURE_ELEMENT_PARAGRAPH, | |
POPPLER_STRUCTURE_ELEMENT_HEADING, | |
POPPLER_STRUCTURE_ELEMENT_HEADING_1, | |
POPPLER_STRUCTURE_ELEMENT_HEADING_2, | |
POPPLER_STRUCTURE_ELEMENT_HEADING_3, | |
POPPLER_STRUCTURE_ELEMENT_HEADING_4, | |
POPPLER_STRUCTURE_ELEMENT_HEADING_5, | |
POPPLER_STRUCTURE_ELEMENT_HEADING_6, | |
POPPLER_STRUCTURE_ELEMENT_LIST, | |
POPPLER_STRUCTURE_ELEMENT_LIST_ITEM, | |
POPPLER_STRUCTURE_ELEMENT_LIST_LABEL, | |
POPPLER_STRUCTURE_ELEMENT_LIST_BODY, | |
POPPLER_STRUCTURE_ELEMENT_TABLE, | |
POPPLER_STRUCTURE_ELEMENT_TABLE_ROW, | |
POPPLER_STRUCTURE_ELEMENT_TABLE_HEADING, | |
POPPLER_STRUCTURE_ELEMENT_TABLE_DATA, | |
POPPLER_STRUCTURE_ELEMENT_TABLE_HEADER, | |
POPPLER_STRUCTURE_ELEMENT_TABLE_FOOTER, | |
POPPLER_STRUCTURE_ELEMENT_TABLE_BODY, | |
POPPLER_STRUCTURE_ELEMENT_RUBY, | |
POPPLER_STRUCTURE_ELEMENT_RUBY_BASE_TEXT, | |
POPPLER_STRUCTURE_ELEMENT_RUBY_ANNOT_TEXT, | |
POPPLER_STRUCTURE_ELEMENT_RUBY_PUNCTUATION, | |
POPPLER_STRUCTURE_ELEMENT_WARICHU, | |
POPPLER_STRUCTURE_ELEMENT_WARICHU_TEXT, | |
POPPLER_STRUCTURE_ELEMENT_WARICHU_PUNCTUATION, | |
POPPLER_STRUCTURE_ELEMENT_FIGURE, | |
POPPLER_STRUCTURE_ELEMENT_FORMULA, | |
POPPLER_STRUCTURE_ELEMENT_FORM, | |
} PopplerStructureElementKind; | |
/** | |
* PopplerStructureGetTextFlags: | |
* @POPPLER_STRUCTURE_GET_TEXT_NONE: No flags. | |
* @POPPLER_STRUCTURE_GET_TEXT_RECURSIVE: For non-leaf, non-content | |
* elements, recursively obtain the text from all the elements | |
* enclosed in the subtree. | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_GET_TEXT_NONE = 0, | |
POPPLER_STRUCTURE_GET_TEXT_RECURSIVE = (1 << 0), | |
} PopplerStructureGetTextFlags; | |
/** | |
* PopplerStructurePlacement: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_PLACEMENT_BLOCK, | |
POPPLER_STRUCTURE_PLACEMENT_INLINE, | |
POPPLER_STRUCTURE_PLACEMENT_BEFORE, | |
POPPLER_STRUCTURE_PLACEMENT_START, | |
POPPLER_STRUCTURE_PLACEMENT_END, | |
} PopplerStructurePlacement; | |
/** | |
* PopplerStructureWritingMode: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_WRITING_MODE_LR_TB, | |
POPPLER_STRUCTURE_WRITING_MODE_RL_TB, | |
POPPLER_STRUCTURE_WRITING_MODE_TB_RL, | |
} PopplerStructureWritingMode; | |
/** | |
* PopplerStructureBorderStyle: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_BORDER_STYLE_NONE, | |
POPPLER_STRUCTURE_BORDER_STYLE_HIDDEN, | |
POPPLER_STRUCTURE_BORDER_STYLE_DOTTED, | |
POPPLER_STRUCTURE_BORDER_STYLE_DASHED, | |
POPPLER_STRUCTURE_BORDER_STYLE_SOLID, | |
POPPLER_STRUCTURE_BORDER_STYLE_DOUBLE, | |
POPPLER_STRUCTURE_BORDER_STYLE_GROOVE, | |
POPPLER_STRUCTURE_BORDER_STYLE_INSET, | |
POPPLER_STRUCTURE_BORDER_STYLE_OUTSET, | |
} PopplerStructureBorderStyle; | |
/** | |
* PopplerStructureTextAlign: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_TEXT_ALIGN_START, | |
POPPLER_STRUCTURE_TEXT_ALIGN_CENTER, | |
POPPLER_STRUCTURE_TEXT_ALIGN_END, | |
POPPLER_STRUCTURE_TEXT_ALIGN_JUSTIFY, | |
} PopplerStructureTextAlign; | |
/** | |
* PopplerStructureBlockAlign: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_BLOCK_ALIGN_BEFORE, | |
POPPLER_STRUCTURE_BLOCK_ALIGN_MIDDLE, | |
POPPLER_STRUCTURE_BLOCK_ALIGN_AFTER, | |
POPPLER_STRUCTURE_BLOCK_ALIGN_JUSTIFY, | |
} PopplerStructureBlockAlign; | |
/** | |
* PopplerStructureInlineAlign: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_INLINE_ALIGN_START, | |
POPPLER_STRUCTURE_INLINE_ALIGN_CENTER, | |
POPPLER_STRUCTURE_INLINE_ALIGN_END, | |
} PopplerStructureInlineAlign; | |
/** | |
* PopplerStructureTextDecoration: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_TEXT_DECORATION_NONE, | |
POPPLER_STRUCTURE_TEXT_DECORATION_UNDERLINE, | |
POPPLER_STRUCTURE_TEXT_DECORATION_OVERLINE, | |
POPPLER_STRUCTURE_TEXT_DECORATION_LINETHROUGH, | |
} PopplerStructureTextDecoration; | |
/** | |
* PopplerStructureRubyAlign: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_RUBY_ALIGN_START, | |
POPPLER_STRUCTURE_RUBY_ALIGN_CENTER, | |
POPPLER_STRUCTURE_RUBY_ALIGN_END, | |
POPPLER_STRUCTURE_RUBY_ALIGN_JUSTIFY, | |
POPPLER_STRUCTURE_RUBY_ALIGN_DISTRIBUTE, | |
} PopplerStructureRubyAlign; | |
/** | |
* PopplerStructureRubyPosition: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_RUBY_POSITION_BEFORE, | |
POPPLER_STRUCTURE_RUBY_POSITION_AFTER, | |
POPPLER_STRUCTURE_RUBY_POSITION_WARICHU, | |
POPPLER_STRUCTURE_RUBY_POSITION_INLINE, | |
} PopplerStructureRubyPosition; | |
/** | |
* PopplerStructureGlyphOrientation: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_GLYPH_ORIENTATION_AUTO, | |
POPPLER_STRUCTURE_GLYPH_ORIENTATION_0 = POPPLER_STRUCTURE_GLYPH_ORIENTATION_AUTO, | |
POPPLER_STRUCTURE_GLYPH_ORIENTATION_90, | |
POPPLER_STRUCTURE_GLYPH_ORIENTATION_180, | |
POPPLER_STRUCTURE_GLYPH_ORIENTATION_270, | |
} PopplerStructureGlyphOrientation; | |
/** | |
* PopplerStructureListNumbering: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_LIST_NUMBERING_NONE, | |
POPPLER_STRUCTURE_LIST_NUMBERING_DISC, | |
POPPLER_STRUCTURE_LIST_NUMBERING_CIRCLE, | |
POPPLER_STRUCTURE_LIST_NUMBERING_SQUARE, | |
POPPLER_STRUCTURE_LIST_NUMBERING_DECIMAL, | |
POPPLER_STRUCTURE_LIST_NUMBERING_UPPER_ROMAN, | |
POPPLER_STRUCTURE_LIST_NUMBERING_LOWER_ROMAN, | |
POPPLER_STRUCTURE_LIST_NUMBERING_UPPER_ALPHA, | |
POPPLER_STRUCTURE_LIST_NUMBERING_LOWER_ALPHA, | |
} PopplerStructureListNumbering; | |
/** | |
* PopplerStructureFormRole: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_FORM_ROLE_UNDEFINED, | |
POPPLER_STRUCTURE_FORM_ROLE_RADIO_BUTTON, | |
POPPLER_STRUCTURE_FORM_ROLE_PUSH_BUTTON, | |
POPPLER_STRUCTURE_FORM_ROLE_TEXT_VALUE, | |
POPPLER_STRUCTURE_FORM_ROLE_CHECKBOX, | |
} PopplerStructureFormRole; | |
/** | |
* PopplerStructureFormState: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_FORM_STATE_ON, | |
POPPLER_STRUCTURE_FORM_STATE_OFF, | |
POPPLER_STRUCTURE_FORM_STATE_NEUTRAL, | |
} PopplerStructureFormState; | |
/** | |
* PopplerStructureTableScope: | |
*/ | |
typedef enum | |
{ | |
POPPLER_STRUCTURE_TABLE_SCOPE_ROW, | |
POPPLER_STRUCTURE_TABLE_SCOPE_COLUMN, | |
POPPLER_STRUCTURE_TABLE_SCOPE_BOTH, | |
} PopplerStructureTableScope; | |
POPPLER_PUBLIC | |
GType poppler_structure_element_get_type(void) G_GNUC_CONST; | |
POPPLER_PUBLIC | |
PopplerStructureElementKind poppler_structure_element_get_kind(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gint poppler_structure_element_get_page(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_is_content(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_is_inline(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_is_block(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_is_grouping(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_id(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_title(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_abbreviation(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_language(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_text(PopplerStructureElement *poppler_structure_element, PopplerStructureGetTextFlags flags); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_alt_text(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_actual_text(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerTextSpan **poppler_structure_element_get_text_spans(PopplerStructureElement *poppler_structure_element, guint *n_text_spans); | |
POPPLER_PUBLIC | |
PopplerStructurePlacement poppler_structure_element_get_placement(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureWritingMode poppler_structure_element_get_writing_mode(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_get_background_color(PopplerStructureElement *poppler_structure_element, PopplerColor *color); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_get_border_color(PopplerStructureElement *poppler_structure_element, PopplerColor *colors); | |
POPPLER_PUBLIC | |
void poppler_structure_element_get_border_style(PopplerStructureElement *poppler_structure_element, PopplerStructureBorderStyle *border_styles); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_get_border_thickness(PopplerStructureElement *poppler_structure_element, gdouble *border_thicknesses); | |
POPPLER_PUBLIC | |
void poppler_structure_element_get_padding(PopplerStructureElement *poppler_structure_element, gdouble *paddings); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_get_color(PopplerStructureElement *poppler_structure_element, PopplerColor *color); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_space_before(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_space_after(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_start_indent(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_end_indent(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_text_indent(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureTextAlign poppler_structure_element_get_text_align(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_get_bounding_box(PopplerStructureElement *poppler_structure_element, PopplerRectangle *bounding_box); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_width(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_height(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureBlockAlign poppler_structure_element_get_block_align(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureInlineAlign poppler_structure_element_get_inline_align(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
void poppler_structure_element_get_table_border_style(PopplerStructureElement *poppler_structure_element, PopplerStructureBorderStyle *border_styles); | |
POPPLER_PUBLIC | |
void poppler_structure_element_get_table_padding(PopplerStructureElement *poppler_structure_element, gdouble *paddings); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_baseline_shift(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_line_height(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_get_text_decoration_color(PopplerStructureElement *poppler_structure_element, PopplerColor *color); | |
POPPLER_PUBLIC | |
gdouble poppler_structure_element_get_text_decoration_thickness(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureTextDecoration poppler_structure_element_get_text_decoration_type(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureRubyAlign poppler_structure_element_get_ruby_align(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureRubyPosition poppler_structure_element_get_ruby_position(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureGlyphOrientation poppler_structure_element_get_glyph_orientation(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
guint poppler_structure_element_get_column_count(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gdouble *poppler_structure_element_get_column_gaps(PopplerStructureElement *poppler_structure_element, guint *n_values); | |
POPPLER_PUBLIC | |
gdouble *poppler_structure_element_get_column_widths(PopplerStructureElement *poppler_structure_element, guint *n_values); | |
POPPLER_PUBLIC | |
PopplerStructureListNumbering poppler_structure_element_get_list_numbering(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureFormRole poppler_structure_element_get_form_role(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureFormState poppler_structure_element_get_form_state(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_form_description(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
guint poppler_structure_element_get_table_row_span(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
guint poppler_structure_element_get_table_column_span(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar **poppler_structure_element_get_table_headers(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
PopplerStructureTableScope poppler_structure_element_get_table_scope(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
gchar *poppler_structure_element_get_table_summary(PopplerStructureElement *poppler_structure_element); | |
POPPLER_PUBLIC | |
GType poppler_structure_element_iter_get_type(void) G_GNUC_CONST; | |
POPPLER_PUBLIC | |
PopplerStructureElementIter *poppler_structure_element_iter_new(PopplerDocument *poppler_document); | |
POPPLER_PUBLIC | |
PopplerStructureElementIter *poppler_structure_element_iter_get_child(PopplerStructureElementIter *parent); | |
POPPLER_PUBLIC | |
PopplerStructureElementIter *poppler_structure_element_iter_copy(PopplerStructureElementIter *iter); | |
POPPLER_PUBLIC | |
PopplerStructureElement *poppler_structure_element_iter_get_element(PopplerStructureElementIter *iter); | |
POPPLER_PUBLIC | |
gboolean poppler_structure_element_iter_next(PopplerStructureElementIter *iter); | |
POPPLER_PUBLIC | |
void poppler_structure_element_iter_free(PopplerStructureElementIter *iter); | |
POPPLER_PUBLIC | |
GType poppler_text_span_get_type(void) G_GNUC_CONST; | |
POPPLER_PUBLIC | |
PopplerTextSpan *poppler_text_span_copy(PopplerTextSpan *poppler_text_span); | |
POPPLER_PUBLIC | |
void poppler_text_span_free(PopplerTextSpan *poppler_text_span); | |
POPPLER_PUBLIC | |
gboolean poppler_text_span_is_fixed_width_font(PopplerTextSpan *poppler_text_span); | |
POPPLER_PUBLIC | |
gboolean poppler_text_span_is_serif_font(PopplerTextSpan *poppler_text_span); | |
POPPLER_PUBLIC | |
gboolean poppler_text_span_is_bold_font(PopplerTextSpan *poppler_text_span); | |
POPPLER_PUBLIC | |
void poppler_text_span_get_color(PopplerTextSpan *poppler_text_span, PopplerColor *color); | |
POPPLER_PUBLIC | |
const gchar *poppler_text_span_get_text(PopplerTextSpan *poppler_text_span); | |
POPPLER_PUBLIC | |
const gchar *poppler_text_span_get_font_name(PopplerTextSpan *poppler_text_span); | |
G_END_DECLS | |