Skip to main content

rust_docx/parse/
mod.rs

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