1#[cfg(not(target_arch = "wasm32"))]
2mod cache;
3mod body;
4mod build;
5mod colors;
6mod content_types;
7mod context;
8mod document;
9mod images;
10pub(crate) use images::vml_pixels;
11mod math;
12mod metadata;
13mod namespaces;
14mod numbering;
15mod paragraph;
16mod re;
17mod relationships;
18mod scan;
19mod sections;
20mod shapes;
21mod style;
22mod styles;
23mod symbols;
24mod table;
25mod util;
26pub(crate) use util::{append_base64, escape_xml_text, svg_data_uri};
27
28pub use body::extract_body_xml;
29pub use build::build_doc_model;
30pub use colors::{
31 default_drawing_scheme_colors, normalize_hex_color, resolve_drawing_color_from_xml,
32 ResolvedDrawingColor,
33};
34pub use content_types::parse_content_types;
35pub use context::{
36 default_table_look, empty_style_sheet, ContentTypeLookup, ParseContext, ParsedStyleSheet,
37 ParsedTableLook, ParsedTableProperties, ParsedTableStyleCondition, ParsedTableStyleDefinition,
38 TableConditionalStyleType, ThemeColorMap, ThemeFontMap,
39};
40pub use document::parse_document_xml;
41pub(crate) use images::parse_vml_group_image_from_part;
42pub use images::{
43 css_length_to_pixels, parse_drawing_image_crop, parse_drawing_image_css_filter,
44 parse_drawing_image_opacity, parse_floating_anchor_from_run_xml, parse_run_image_block,
45 parse_run_images, parse_vml_floating_anchor_from_run_xml, parse_vml_size,
46};
47pub use metadata::{
48 extract_document_open_tag, extract_section_properties_xml, parse_document_background_color,
49 parse_document_compatibility_settings, parse_document_default_tab_stop_twips,
50 parse_document_page_count_from_app_properties,
51};
52pub(crate) use namespaces::prefix as canonical_namespace_prefix;
53#[cfg(not(target_arch = "wasm32"))]
54pub(crate) use namespaces::worker_pool;
55pub use numbering::{
56 parse_css_point_value, parse_numbering_definitions, parse_numbering_level_definition,
57 parse_numbering_picture_bullet_definitions, points_to_pixels,
58};
59pub(crate) use paragraph::run_text_xml;
60pub use paragraph::{
61 parse_paragraph, parse_paragraph_form_field_tokens, parse_paragraph_runs,
62 parse_run_active_x_checkbox_field, parse_run_text, parse_run_text_tokens,
63 ParagraphFormFieldToken, ParagraphRunToken,
64};
65pub use relationships::{
66 bytes_to_base64, content_type_for_part, extension_from_part_name, mime_by_extension,
67 parse_part_relationships, parse_relationships_from_parts, relationship_part_name_for_part,
68 resolve_part_path,
69};
70pub use scan::{contains_tag, find_tag_token};
71pub(crate) use style::parse_character_scale_percent_value;
72pub use style::{
73 parse_paragraph_align_from_xml, parse_paragraph_drop_cap_from_xml, parse_paragraph_style,
74 parse_run_style, parse_text_style_from_xml,
75};
76pub use styles::{
77 clone_numbering_definitions, clone_paragraph_style_definition, merge_text_styles,
78 normalize_heading_level, parse_floating_table_style, parse_paragraph_border_set_from_xml,
79 parse_paragraph_border_style, parse_paragraph_indent_from_xml,
80 parse_paragraph_numbering_from_xml, parse_paragraph_shading_from_xml,
81 parse_paragraph_spacing_from_xml, parse_paragraph_tab_stops_from_xml, parse_style_sheet,
82 parse_table_border_set, parse_table_border_style, parse_table_box_spacing,
83 parse_table_conditional_style_from_xml, parse_table_look,
84 parse_table_style_properties_from_xml, parse_text_run_border_style, parse_theme_colors,
85 parse_theme_fonts,
86};
87pub(crate) use styles::{direct_table_property, parse_table_preferred_width};
88pub use table::{parse_table, parse_table_cell, parse_table_cell_content, ParsedTableCellResult};
89pub(crate) use table::{
90 resolve_table_condition_for_cell, resolve_table_grid_skip_count, table_grid_column_bound,
91};
92pub(crate) use util::resolve_theme_font;
93pub use util::{
94 emu_to_pixels, merge_text_styles as util_merge_text_styles,
95 normalize_hex_color as util_normalize_hex_color, prefer_alternate_content_choice,
96};