docvortex 0.3.0__tar.gz → 0.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {docvortex-0.3.0/src/docvortex.egg-info → docvortex-0.4.1}/PKG-INFO +10 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/README.md +9 -1
- docvortex-0.4.1/docs/sdk-0.4.md +39 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/hyperlink.py +1 -2
- docvortex-0.4.1/src/docvortex/analyzers/native/_shared/image.py +5 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/names.py +1 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/contracts.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/xhtml.py +13 -4
- docvortex-0.4.1/src/docvortex/analyzers/native/html/__init__.py +5 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/converter.py +4 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/document.py +5 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/resources.py +4 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/models.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/images.py +3 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/vector.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/context.py +3 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/image.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/text.py +5 -5
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/context.py +2 -1
- docvortex-0.3.0/src/docvortex/analyzers/native/pdf/script_geometry.py → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_script_geometry.py +1 -3
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/candidate.py +0 -1
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/contracts.py +5 -2
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/geometry.py +1 -1
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/sparse_hybrid.py +1 -1
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/sparse_multiline.py +1 -1
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/text.py +2 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/char_geometry.py +2 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/code_blocks.py +2 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/formulas.py +4 -7
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/graphics.py +4 -7
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/detection.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/matching.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/materialize.py +17 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/scripts.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/line_layout.py +4 -7
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/line_merging.py +11 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/models.py +2 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/native_text.py +5 -8
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/pipeline.py +68 -88
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/spatial_text.py +3 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_filled_grid.py +3 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_materialization.py +30 -16
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_rules.py +4 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_text_styles.py +10 -11
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/tables.py +241 -89
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/assembly.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/common.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/rows.py +1 -1
- docvortex-0.4.1/src/docvortex/analyzers/pdf.py +186 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/api.py +7 -7
- docvortex-0.4.1/src/docvortex/assets/__init__.py +28 -0
- docvortex-0.4.1/src/docvortex/assets/images.py +55 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/assets/store.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/inline.py +2 -2
- docvortex-0.4.1/src/docvortex/content/links.py +5 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/markup/anchors.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/markup/formula.py +3 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/markup/projector.py +5 -5
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/markup/styles.py +2 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/mathml.py +1 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/normalization.py +3 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/html.py +1 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/rules.py +1 -1
- docvortex-0.4.1/src/docvortex/content/text.py +25 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/contracts.py +0 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/__init__.py +2 -2
- docvortex-0.3.0/src/docvortex/document/pdf/document.py → docvortex-0.4.1/src/docvortex/document/pdf/_document.py +171 -15
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/classify.py +1 -1
- docvortex-0.4.1/src/docvortex/document/pdf/constants.py +6 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/images.py +6 -6
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/metadata.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/native_annotations.py +6 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/native_contracts.py +14 -12
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/native_coordinates.py +5 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/native_lifecycle.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/native_objects.py +5 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/native_text_geometry.py +6 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/text/__init__.py +1 -1
- docvortex-0.3.0/src/docvortex/document/pdf/text/contracts.py → docvortex-0.4.1/src/docvortex/document/pdf/text/_contracts.py +1 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/text/extract.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/text/geometry.py +2 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/text/groups.py +3 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/visuals.py +52 -181
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/source.py +4 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/export/bundle.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/export/middle.py +6 -7
- docvortex-0.4.1/src/docvortex/foundation/_coordinates.py +111 -0
- docvortex-0.3.0/src/docvortex/foundation/hyperlink.py → docvortex-0.4.1/src/docvortex/foundation/_hyperlink.py +0 -1
- docvortex-0.3.0/src/docvortex/foundation/image.py → docvortex-0.4.1/src/docvortex/foundation/_image.py +1 -1
- docvortex-0.4.1/src/docvortex/foundation/_image_operations.py +45 -0
- docvortex-0.4.1/src/docvortex/geometry.py +33 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/metadata.py +4 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/lists.py +2 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/page_blocks.py +2 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/visual.py +10 -3
- docvortex-0.4.1/src/docvortex/public_api.py +302 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/assets.py +4 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/renderer.py +36 -36
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/epub/assets.py +5 -5
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/html/sanitizer.py +1 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/latex/assets.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/latex/table.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/assets.py +4 -4
- docvortex-0.4.1/src/docvortex/render/_internal/pdf/pagination.py +193 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/renderer.py +46 -6
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/styles.py +6 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/table.py +24 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/schema.py +7 -7
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/version.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1/src/docvortex.egg-info}/PKG-INFO +10 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex.egg-info/SOURCES.txt +32 -25
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/benchmarks/flash_pdf.py +7 -5
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/evaluate_native_pdf_table_manifest.py +3 -3
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_complete_pipeline.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_converter_lifecycle.py +5 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_document_metadata.py +2 -2
- docvortex-0.4.1/tests/test_geometry_api.py +66 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_mixed_font_script_reference.py +4 -4
- docvortex-0.4.1/tests/test_pdf_analysis_api.py +173 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_symbol_normalization.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_public_image_api.py +5 -5
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_shared_boundaries.py +4 -4
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_epub_render.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_html.py +2 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_model.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_office_metafile.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_char_geometry.py +6 -5
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_code_blocks.py +4 -8
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_formulas.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_graphics.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_pipeline.py +7 -6
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_samples.py +5 -15
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_scripts.py +19 -19
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_semantics.py +2 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_tables.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_html_security.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_hybrid_script_source_pdfs.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_native_pdf_table.py +7 -7
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_native_pdf_table_demo_manifest.py +8 -7
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_native_pdf_table_scripts.py +7 -8
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_classify.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_demo_links.py +3 -2
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_document.py +4 -4
- docvortex-0.4.1/tests/unittest/test_pdf_pagination.py +251 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_text_styles.py +8 -10
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_visualization.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_text_boundary_rules.py +1 -1
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_text_utils.py +1 -1
- docvortex-0.3.0/src/docvortex/analyzers/native/_shared/image.py +0 -8
- docvortex-0.3.0/src/docvortex/analyzers/native/html/__init__.py +0 -6
- docvortex-0.3.0/src/docvortex/analyzers/native/html/contracts.py +0 -7
- docvortex-0.3.0/src/docvortex/analyzers/native/pdf/shared.py +0 -30
- docvortex-0.3.0/src/docvortex/analyzers/native/pdf/text_styles.py +0 -55
- docvortex-0.3.0/src/docvortex/assets/__init__.py +0 -7
- docvortex-0.3.0/src/docvortex/document/pdf/constants.py +0 -132
- docvortex-0.3.0/src/docvortex/document/pdf/geometry.py +0 -31
- docvortex-0.3.0/src/docvortex/document/pdf/visual_geometry.py +0 -201
- docvortex-0.3.0/src/docvortex/foundation/platform.py +0 -38
- {docvortex-0.3.0 → docvortex-0.4.1}/LICENSE.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/MANIFEST.in +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/README.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/demo.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/README.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/docx_01.doc +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/docx_01.docx +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/pptx_01.ppt +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/pptx_01.pptx +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/rtf_01.rtf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/xlsx_01.xls +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/office_docs/xlsx_01.xlsx +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/2407.00079v4_origi-10.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/IEBM_A_2667169_O-5.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/caibao1.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/demo1.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/demo2.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/demo3.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/demo4.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/demo6.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/mixed_elements_pages_03_06.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/mixed_elements_pages_07_10.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/mixed_elements_pages_11_15.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/mixed_elements_pages_39_40.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs/small_ocr.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs//344/270/255/346/226/207/350/256/272/346/226/207.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs//344/270/255/346/226/207/350/256/272/346/226/2072.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs//344/270/255/346/226/207/350/256/272/346/226/2073.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/demo/pdfs//344/270/255/346/226/207/350/256/272/346/226/2074.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/docs/HTML_PROTOCOL.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/docs/JSON_PROTOCOL.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/docs/METADATA.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/docs/PDF_FONTS.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/docs/RENDER_OWNERSHIP.md +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/pyproject.toml +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/schemas/middle-2.0.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/schemas/model-2.0.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/setup.cfg +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/markup/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/markup/anchors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/markup/formula.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/markup/projector.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/markup/styles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/mathml.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/_shared/xycut.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/csv.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/constants.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/errors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/package.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/epub/properties.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/anchors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/constants.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/errors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/html/selector.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/assembly.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/constants.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/errors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/geometry.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/package.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/path.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/reading_order.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/resources.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/scene.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/ofd/text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/bookmarks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/doc_converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/fib.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/fields.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/formatting.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/images.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/lists.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/parser.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/pieces.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/records.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/sprm.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/doc/styles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/docx_converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/equationxml.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/fields.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/formatting_types.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/main.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/numbering.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/office_xml.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/package_normalizer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/resources.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/styles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/docx/tables.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/image.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/latex_dict.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/mtef.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/mtef_v5.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/omml.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/equation/ooxml.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/errors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/legacy/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/legacy/binary.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/legacy/officeart.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/legacy/ole.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/limits.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/chart.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/constants.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/converters.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/errors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/package.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/styles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/odf/table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ooxml_chart.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/opc.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ppt/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ppt/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ppt/parser.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ppt/ppt_converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ppt/records.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/ppt/style_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/lists.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/main.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/package_normalizer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/pptx_converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/resources.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/shapes.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/text_styles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/pptx/titles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rich_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/lexer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/math.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/rtf/parser.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/spreadsheet/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/spreadsheet/html.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/spreadsheet/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/spreadsheet/projector.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/streams.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/chart.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/embedded_chart.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/number_format.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/parser.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/records.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/strings.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xls/xls_converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xlsx/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xlsx/main.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xlsx/ooxml_ole.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xlsx/package_normalizer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/office/xlsx/xlsx_converter.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/__init__.py +0 -0
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/__init__.py +0 -0
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/engine.py +0 -0
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/sparse_common.py +0 -0
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/text_grid.py +0 -0
- {docvortex-0.3.0/src/docvortex/analyzers/native/pdf/table_recovery → docvortex-0.4.1/src/docvortex/analyzers/native/pdf/_table_recovery}/vector.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/auxiliary_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/geometry.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/index_blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/common.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/types.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_annotations.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_constants.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_detection.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_geometry.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/table_rows.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/annotations.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/footnotes.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_assembly/merging.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/text_blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/body_profile.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/common.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/document_profile.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/lane_titles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/page_titles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/prototype.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/title_analysis/structural.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/titles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/typography.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/visual_annotations.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/cli.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/html/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/html/contracts.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/html/materializer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/html/parser.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/html/resources.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/codecs/json.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/markup/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/spans.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/content.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/document.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/table/structure.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/content/tree.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/detection.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/filetypes.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/page_range.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/font_runtime.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/pdfium.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/pdf/raster.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/document/properties.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/errors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/export/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/export/files.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/foundation/__init__.py +0 -0
- docvortex-0.3.0/src/docvortex/foundation/geometry.py → docvortex-0.4.1/src/docvortex/foundation/_geometry.py +0 -0
- docvortex-0.3.0/src/docvortex/foundation/image_payload.py → docvortex-0.4.1/src/docvortex/foundation/_image_payload.py +1 -1
- /docvortex-0.3.0/src/docvortex/foundation/text.py → /docvortex-0.4.1/src/docvortex/foundation/_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/foundation/image_encoding.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/foundation/language.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/foundation/type_identity.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/foundation/xml_names.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/options.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/content.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/document.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/pages.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/postprocess/paragraphs.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/common/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/common/context.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/common/html_table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/common/index.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/common/list_items.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/common/planner.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/inline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/math.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/styles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/docx/table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/epub/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/epub/package.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/epub/renderer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/html/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/html/inline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/html/renderer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/html/table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/latex/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/latex/inline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/latex/renderer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/assets.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/escaping.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/inline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/renderer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/markdown/table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/formula.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/pdf/inline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/structured_content/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/_internal/structured_content/renderer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/api.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/contracts.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/docx.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/epub.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/fragments.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/html.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/latex.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/markdown.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/pdf.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/render/structured_content.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/epub/docvortex.css +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/fasttext-langdetect/lid.176.ftz +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/fonts/DroidSansFallbackFull.ttf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/fonts/NOTICE +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/fonts/manifest.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/html/docvortex.css +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/resources/html/docvortex.min.css +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/result.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/visualization.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex.egg-info/dependency_links.txt +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex.egg-info/entry_points.txt +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex.egg-info/requires.txt +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex.egg-info/top_level.txt +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/benchmarks/pipeline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/flash_layout_block_expectations.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/flash_layout_geometry_manifest.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/flash_layout_semantic_expectations.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/generate_synthetic_pdf_fixtures.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/native_pdf_table_cross_page_manifest.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/native_pdf_table_demo_manifest.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/native_pdf_table_script_truth.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/pdf_mixed_font_script_line.json +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/fixtures/rtf/semantic.rtf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_architecture.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_benchmark_entrypoint.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_brand_protocol.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_document_envelope.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_format_matrix.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_html_namespace.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_font_geometry.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_font_runtime.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_model_text_normalization.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_output_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_render_pool.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_pdf_source_row_merging.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_public_pipeline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_refactor_raster.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_refactor_rendering.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_refactor_resources.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_render_ownership.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_renderer_branding.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_system_font_pdf_pipeline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/test_validated_geometry.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_docx_equationxml_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_epub_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_flash_pdf_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_image_mtef_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_legacy_doc_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_legacy_ppt_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_legacy_xls_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_metafile_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_mtef_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_mtef_v5_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_native_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_odf_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_ofd_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_office_image_mtef_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_ooxml_mtef_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/_span_test_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/flash_layout/mixed_text_layout_sample.pdf.xor +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/flash_table_annotations_synthetic.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/metabolic_pathway_page_3.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_cjk_layout_synthetic.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/annual_report_fundraising_projects_table.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/annual_report_management_roles_table.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/annual_report_research_projects_table.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/conference_schedule_tables.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/engineering_process_restrictions_table.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/fund_asset_and_transaction_tables.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/fund_manager_profile_table.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/manufacturing_facilities_cross_page_table.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/pollutant_discharge_tables.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/procurement_contract_tables.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/procurement_document_blank_page_tables.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/native_pdf_tables/quarterly_report_financial_tables.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/pdfs/test.pdf +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_backend_architecture.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_backend_block_object_regressions.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_docx_assets.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_docx_complex_fields.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_docx_math.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_docx_render.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_docx_special_char_tables.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_docx_table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_emfplus_integration.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_epub_backlinks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_epub_quoted_note_types.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_csv.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_docx_equationxml.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_epub.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_image_mtef.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_legacy_chart_data.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_legacy_doc.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_legacy_doc_mtef.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_legacy_ppt.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_legacy_xls.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_legacy_xls_ppt_mtef.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_markup_anchors.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_mtef_v5.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_odf.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_ofd.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_office_image_mtef.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_office_models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_office_mtef_v5.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_office_package_normalizers.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_office_title_types.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_ooxml_mtef.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_auxiliary_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_document_profile.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_extractor.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_index_blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_line_metadata.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_native_text.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_text_blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_titles.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_pdf_visual_annotations.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_rtf.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_shared_helpers.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_flash_spreadsheet_projector.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_guess_suffix_ole2.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_html_css_build.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_html_render.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_latex_render.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_markdown_render.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_middle_json_block_models.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_middle_json_export.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_middle_json_validator.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_model_json.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_native_pdf_table_manifest.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_native_pdf_table_pipeline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_ofd_assembly.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_ofd_vector_tables.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_office_demo_exports.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_office_demo_pages.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_office_parser_regressions.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_render.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_pdf_render_diagnostics.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_postprocess_page_blocks.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_postprocess_pages.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_postprocess_paragraphs.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_postprocess_visual.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_render_api.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_render_html_table.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_render_image_renderer.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_render_list_index_utils.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_structured_content_render.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_table_merge.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_table_merge_cell_merge.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tests/unittest/test_text_block_anchor.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/__init__.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/build_html_css.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/calibrate_pdf_geometry.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/capture_baseline.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/capture_platform_layout.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/compare_font_platforms.py +0 -0
- {docvortex-0.3.0 → docvortex-0.4.1}/tools/font_geometry.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: docvortex
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.1
|
|
4
4
|
Summary: A fast, multi-format document parsing and conversion engine
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
Project-URL: Repository, https://github.com/myhloli/DocVortex
|
|
@@ -177,7 +177,11 @@ DocVortex markers and semantic round trips.
|
|
|
177
177
|
## Scope and development
|
|
178
178
|
|
|
179
179
|
PDF output is a semantic reflow of the document, not a lossless reproduction of
|
|
180
|
-
the original page drawing instructions.
|
|
180
|
+
the original page drawing instructions. Short paragraphs (up to a quarter of the
|
|
181
|
+
content area height) and short tables including annotations (up to half) stay
|
|
182
|
+
together when possible. Longer content can paginate; tables repeat existing
|
|
183
|
+
headers, and images scale to fit while keeping short captions on the same page.
|
|
184
|
+
Input support for PPTX/XLSX does not imply
|
|
181
185
|
PPTX/XLSX output support. Rust implementation work is a future stage behind these
|
|
182
186
|
public data and processing boundaries.
|
|
183
187
|
|
|
@@ -215,3 +219,7 @@ All 15 native document formats support this API. Normal parsing also carries the
|
|
|
215
219
|
DocVortex supports ordinary CPython 3.10–3.14. Physical text lines are joined by deterministic Unicode boundary rules, with URL and dehyphenation safeguards. Language detection models and the fast-langdetect / fasttext-predict dependencies are no longer required.
|
|
216
220
|
|
|
217
221
|
The shared `resolve_text_line_boundary` and `merge_text_line_contents` helpers no longer accept `block_language`; `detect_lang` has been removed. Hosts should call the shared boundary helpers directly. OCR language selection and Magika code-language recognition are unchanged.
|
|
222
|
+
|
|
223
|
+
## Public SDK and 0.4 migration
|
|
224
|
+
|
|
225
|
+
Geometry, document access, assets and regional PDF analysis have explicit public contracts. See [the SDK migration guide](docs/sdk-0.4.md). `docvortex.public_api.PUBLIC_API` lists supported cross-package modules and symbols. Replaced Python paths are removed in 0.4; document JSON and Bundle semantics are unchanged. Upgrade MinerU together, or constrain older hosts to `docvortex<0.4.0`.
|
|
@@ -124,7 +124,11 @@ DocVortex markers and semantic round trips.
|
|
|
124
124
|
## Scope and development
|
|
125
125
|
|
|
126
126
|
PDF output is a semantic reflow of the document, not a lossless reproduction of
|
|
127
|
-
the original page drawing instructions.
|
|
127
|
+
the original page drawing instructions. Short paragraphs (up to a quarter of the
|
|
128
|
+
content area height) and short tables including annotations (up to half) stay
|
|
129
|
+
together when possible. Longer content can paginate; tables repeat existing
|
|
130
|
+
headers, and images scale to fit while keeping short captions on the same page.
|
|
131
|
+
Input support for PPTX/XLSX does not imply
|
|
128
132
|
PPTX/XLSX output support. Rust implementation work is a future stage behind these
|
|
129
133
|
public data and processing boundaries.
|
|
130
134
|
|
|
@@ -162,3 +166,7 @@ All 15 native document formats support this API. Normal parsing also carries the
|
|
|
162
166
|
DocVortex supports ordinary CPython 3.10–3.14. Physical text lines are joined by deterministic Unicode boundary rules, with URL and dehyphenation safeguards. Language detection models and the fast-langdetect / fasttext-predict dependencies are no longer required.
|
|
163
167
|
|
|
164
168
|
The shared `resolve_text_line_boundary` and `merge_text_line_contents` helpers no longer accept `block_language`; `detect_lang` has been removed. Hosts should call the shared boundary helpers directly. OCR language selection and Magika code-language recognition are unchanged.
|
|
169
|
+
|
|
170
|
+
## Public SDK and 0.4 migration
|
|
171
|
+
|
|
172
|
+
Geometry, document access, assets and regional PDF analysis have explicit public contracts. See [the SDK migration guide](docs/sdk-0.4.md). `docvortex.public_api.PUBLIC_API` lists supported cross-package modules and symbols. Replaced Python paths are removed in 0.4; document JSON and Bundle semantics are unchanged. Upgrade MinerU together, or constrain older hosts to `docvortex<0.4.0`.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# DocVortex 0.4 公共 SDK 与宿主迁移
|
|
2
|
+
|
|
3
|
+
MinerU 使用 `docvortex>=0.4.0,<0.5.0`。本轮调整 Python 模块边界,保持文档协议、解析路由、模型回退与渲染语义。
|
|
4
|
+
|
|
5
|
+
## 公开入口
|
|
6
|
+
|
|
7
|
+
| 原入口或职责 | 新入口 |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| foundation 几何及 PDF 通用坐标原语 | `docvortex.geometry` |
|
|
10
|
+
| foundation 文本与链接规则 | `docvortex.content.text`、`docvortex.content.links` |
|
|
11
|
+
| 图像统计、素材编码与路径校验 | `docvortex.assets` |
|
|
12
|
+
| PDFDocument、PDFPage、字符和几何契约 | `docvortex.document.pdf` |
|
|
13
|
+
| HTML 来源上下文 | `docvortex.document.contracts.HtmlSourceContext` |
|
|
14
|
+
| 原生文字证据、区域表格及 OCR 文本投影 | `docvortex.analyzers.pdf` |
|
|
15
|
+
| 模型文本、坐标自动判断与虚拟 OCR token | MinerU PDF 分析层 |
|
|
16
|
+
| xhigh layout 容器补全 | MinerU PDF 分析层 |
|
|
17
|
+
| 推理平台支持判断 | MinerU model/runtime |
|
|
18
|
+
|
|
19
|
+
`docvortex.public_api.PUBLIC_API` 是静态模块及符号清单。新增跨库依赖必须同时更新清单、文档和契约测试;不能通过基础实现、私有模块或动态别名绕过边界。
|
|
20
|
+
|
|
21
|
+
## 行为与资源所有权
|
|
22
|
+
|
|
23
|
+
`prepare_text_evidence` 返回具名的 `PDFTextEvidence`,`apply_text_evidence` 统一完成链接、样式、脚本与 InlineSpan 物化。MinerU 仍决定调用时机、公式排除区域、超大字符页和 OCR 回退。
|
|
24
|
+
|
|
25
|
+
`prepare_table_page` 仅在存在候选表格时调用;同页复用其物化数据。`recover_table_region` 返回最终 HTML、来源、置信度和诊断,`None` 表示没有可接受结果。结构恢复异常以 `PDFTableRecoveryError` 保留原始原因,交给宿主回退;HTML 物化异常继续传播,避免改变旧异常边界。页面几何可以复用,证据不持有 PDFium 裸句柄。
|
|
26
|
+
|
|
27
|
+
通用 `convert_bbox` 显式声明 `unit`、`pixel` 或 `point`;`page_size` 使用 point,`render_scale` 是每 point 的像素数。模型 bbox 的自动解释与三位小数规则保留在 MinerU。共享 PDFium 锁、进程池和资源关闭职责仍归 DocVortex。
|
|
28
|
+
|
|
29
|
+
## 升级与回退
|
|
30
|
+
|
|
31
|
+
本轮直接删除被替代的旧门面及重导出,不提供过渡版本或旧 pickle 路径兼容。JSON、Bundle、HTTP API 和输出格式保持既有契约。
|
|
32
|
+
|
|
33
|
+
配套升级两个 wheel;旧版 MinerU 必须显式约束 `docvortex<0.4.0`。旧版依赖上限 `<1` 无法阻止解析器选择 0.4,因此不要只升级 DocVortex。回退时同时恢复旧版 MinerU 与其兼容的 DocVortex。
|
|
34
|
+
|
|
35
|
+
## 验证
|
|
36
|
+
|
|
37
|
+
`tools/validate_docvortex_boundary.py` 可对指定两仓库源码或当前安装包捕获真实 PDF 的中间协议与全部渲染。记录实际导入路径、样本 SHA256 和页数;比较时只允许忽略 DocVortex producer 版本、DOCX/EPUB 容器时间字段,以及经独立复算确认由 producer 版本派生的 EPUB 标识。
|
|
38
|
+
|
|
39
|
+
MinerU 的 `DocVortex boundary integration` 手动工作流接受未发布的 0.4 wheel URL,以及可选的 mineru-vl-utils 配套 wheel URL,在三种操作系统及 Python 3.10、3.13、3.14 上验证边界、协议和固定推理结果。DocVortex 自身 CI 验证独立安装与基础算法。配置工作流不代表已经通过远端 CI。
|
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from ....foundation.
|
|
5
|
+
from ....foundation._hyperlink import (
|
|
6
6
|
DEFAULT_EXTERNAL_HYPERLINK_SCHEMES,
|
|
7
7
|
OFFICE_EXTERNAL_HYPERLINK_SCHEMES,
|
|
8
8
|
sanitize_hyperlink_target,
|
|
9
9
|
)
|
|
10
10
|
|
|
11
|
-
|
|
12
11
|
__all__ = [
|
|
13
12
|
"DEFAULT_EXTERNAL_HYPERLINK_SCHEMES",
|
|
14
13
|
"OFFICE_EXTERNAL_HYPERLINK_SCHEMES",
|
|
@@ -7,7 +7,7 @@ from typing import TYPE_CHECKING, Any, BinaryIO, Protocol, TypedDict
|
|
|
7
7
|
from ...schema import BBox
|
|
8
8
|
|
|
9
9
|
if TYPE_CHECKING:
|
|
10
|
-
from ...document.pdf.
|
|
10
|
+
from ...document.pdf._document import _PDFPageSnapshot
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class RawBlock(TypedDict, total=False):
|
|
@@ -5,12 +5,9 @@ from __future__ import annotations
|
|
|
5
5
|
import base64
|
|
6
6
|
from dataclasses import dataclass
|
|
7
7
|
|
|
8
|
-
from lxml import html as lxml_html
|
|
9
8
|
from lxml import etree # type: ignore[reportMissingImports]
|
|
9
|
+
from lxml import html as lxml_html
|
|
10
10
|
|
|
11
|
-
from ....content.spans import normalize_span_dicts
|
|
12
|
-
from ....foundation.image_payload import parse_image_data_uri_strict
|
|
13
|
-
from .._shared.hyperlink import sanitize_hyperlink_target
|
|
14
11
|
from docvortex.content.markup import (
|
|
15
12
|
MarkupAnchorDocument,
|
|
16
13
|
MarkupAnchorRegistry,
|
|
@@ -22,11 +19,23 @@ from docvortex.content.markup import (
|
|
|
22
19
|
)
|
|
23
20
|
from docvortex.content.markup.projector import (
|
|
24
21
|
BLOCK_TAGS as _BLOCK_TAGS,
|
|
22
|
+
)
|
|
23
|
+
from docvortex.content.markup.projector import (
|
|
25
24
|
SKIPPED_TAGS as _SKIPPED_TAGS,
|
|
25
|
+
)
|
|
26
|
+
from docvortex.content.markup.projector import (
|
|
26
27
|
clean_text_node as _clean_text_node,
|
|
28
|
+
)
|
|
29
|
+
from docvortex.content.markup.projector import (
|
|
27
30
|
entity_text as _entity_text,
|
|
31
|
+
)
|
|
32
|
+
from docvortex.content.markup.projector import (
|
|
28
33
|
local_name as _local_name,
|
|
29
34
|
)
|
|
35
|
+
|
|
36
|
+
from ....content.spans import normalize_span_dicts
|
|
37
|
+
from ....foundation._image_payload import parse_image_data_uri_strict
|
|
38
|
+
from .._shared.hyperlink import sanitize_hyperlink_target
|
|
30
39
|
from .constants import IMAGE_MEDIA_BY_EXTENSION, SVG_MEDIA_TYPE
|
|
31
40
|
from .package import EpubPackage
|
|
32
41
|
|
|
@@ -8,17 +8,18 @@ from typing import Any, BinaryIO
|
|
|
8
8
|
|
|
9
9
|
from loguru import logger
|
|
10
10
|
|
|
11
|
-
from ....schema import BlockType
|
|
12
11
|
from docvortex.content.markup import MarkupProjector, MarkupStylesheet
|
|
12
|
+
from docvortex.document.contracts import HtmlSourceContext
|
|
13
|
+
|
|
14
|
+
from ....codecs.html import decode_docvortex_html_wire
|
|
13
15
|
from ....content.spans import text_spans
|
|
16
|
+
from ....schema import BlockType
|
|
14
17
|
from .anchors import HtmlAnchorRegistry, append_referenced_notes
|
|
15
18
|
from .constants import MAX_HTML_BYTES, MAX_HTML_RENDERED_BYTES
|
|
16
|
-
from docvortex.document.contracts import HtmlSourceContext
|
|
17
19
|
from .document import HtmlDocument, parse_html_document
|
|
18
20
|
from .errors import HtmlResourceLimitError
|
|
19
21
|
from .resources import HtmlResourceContext
|
|
20
22
|
from .selector import select_auto_content
|
|
21
|
-
from ....codecs.html import decode_docvortex_html_wire
|
|
22
23
|
|
|
23
24
|
|
|
24
25
|
class HtmlConverter:
|
|
@@ -3,19 +3,20 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import codecs
|
|
6
|
+
import re
|
|
6
7
|
from copy import deepcopy
|
|
7
8
|
from dataclasses import dataclass
|
|
8
|
-
import re
|
|
9
9
|
from typing import Literal
|
|
10
10
|
|
|
11
|
-
from lxml import etree
|
|
11
|
+
from lxml import etree # type: ignore[reportMissingImports]
|
|
12
|
+
from lxml import html as lxml_html
|
|
12
13
|
|
|
13
14
|
from docvortex.content.markup.formula import FormulaExtraction, extract_formula, is_tex_script
|
|
14
15
|
from docvortex.content.markup.projector import local_name
|
|
15
|
-
from .constants import MAX_HTML_BYTES, MAX_HTML_DEPTH, MAX_HTML_NODES
|
|
16
16
|
from docvortex.document.contracts import HtmlSourceContext
|
|
17
|
-
from .errors import HtmlParseError, HtmlResourceLimitError
|
|
18
17
|
|
|
18
|
+
from .constants import MAX_HTML_BYTES, MAX_HTML_DEPTH, MAX_HTML_NODES
|
|
19
|
+
from .errors import HtmlParseError, HtmlResourceLimitError
|
|
19
20
|
|
|
20
21
|
_ACTIVE_TAGS = frozenset(
|
|
21
22
|
{
|
|
@@ -9,19 +9,19 @@ from urllib.parse import SplitResult, unquote, urljoin, urlsplit, urlunsplit
|
|
|
9
9
|
|
|
10
10
|
from lxml import etree # type: ignore[reportMissingImports]
|
|
11
11
|
|
|
12
|
-
from ....foundation.image_payload import parse_image_data_uri_strict, validate_remote_image_url
|
|
13
|
-
from .._shared.hyperlink import sanitize_hyperlink_target
|
|
14
12
|
from docvortex.content.markup import ResolvedMarkupImage
|
|
13
|
+
from docvortex.document.contracts import HtmlSourceContext
|
|
14
|
+
|
|
15
|
+
from ....foundation._image_payload import parse_image_data_uri_strict, validate_remote_image_url
|
|
16
|
+
from .._shared.hyperlink import sanitize_hyperlink_target
|
|
15
17
|
from .constants import (
|
|
16
18
|
MAX_HTML_IMAGE_BYTES,
|
|
17
19
|
MAX_HTML_IMAGE_TOTAL_BYTES,
|
|
18
20
|
MAX_HTML_STYLESHEET_BYTES,
|
|
19
21
|
MAX_HTML_STYLESHEET_TOTAL_BYTES,
|
|
20
22
|
)
|
|
21
|
-
from docvortex.document.contracts import HtmlSourceContext
|
|
22
23
|
from .errors import HtmlResourceLimitError
|
|
23
24
|
|
|
24
|
-
|
|
25
25
|
_IMAGE_MIME_SIGNATURES: tuple[tuple[str, tuple[bytes, ...]], ...] = (
|
|
26
26
|
("image/jpeg", (b"\xff\xd8\xff",)),
|
|
27
27
|
("image/png", (b"\x89PNG\r\n\x1a\n",)),
|
|
@@ -7,7 +7,7 @@ from typing import TYPE_CHECKING, Any, BinaryIO
|
|
|
7
7
|
from docvortex.document.contracts import HtmlSourceContext
|
|
8
8
|
|
|
9
9
|
if TYPE_CHECKING:
|
|
10
|
-
from ...document.pdf.
|
|
10
|
+
from ...document.pdf._document import PDFDocument
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class PdfModel:
|
|
@@ -15,8 +15,8 @@ class PdfModel:
|
|
|
15
15
|
|
|
16
16
|
def predict(self, pdf_doc: PDFDocument) -> list[list[dict[str, Any]]]:
|
|
17
17
|
"""分析调用方持有的 PDFDocument,在所有文字匹配结束后统一输出可见英数。"""
|
|
18
|
-
from .pdf import pipeline
|
|
19
18
|
from ...content import normalize_pdf_model_text
|
|
19
|
+
from .pdf import pipeline
|
|
20
20
|
|
|
21
21
|
pages = pipeline._analyze_native_document(pdf_doc)
|
|
22
22
|
normalize_pdf_model_text(pages)
|
|
@@ -6,12 +6,12 @@ import math
|
|
|
6
6
|
from io import BytesIO
|
|
7
7
|
|
|
8
8
|
from loguru import logger
|
|
9
|
-
from PIL import Image, UnidentifiedImageError
|
|
10
9
|
from lxml import etree # type: ignore[reportMissingImports]
|
|
10
|
+
from PIL import Image, UnidentifiedImageError
|
|
11
11
|
|
|
12
|
-
from
|
|
12
|
+
from ....foundation._image_payload import validate_decoded_raster_size
|
|
13
|
+
from ....foundation.image_encoding import image_to_b64str
|
|
13
14
|
from ....schema import BBox
|
|
14
|
-
from ....foundation.image_payload import validate_decoded_raster_size
|
|
15
15
|
from .errors import OfdParseError
|
|
16
16
|
from .geometry import Affine, bbox_intersection, canonical_angle, parse_affine, parse_st_box, transform_angle, transform_bbox
|
|
17
17
|
from .models import ImageItem, ResourceRegistry
|
|
@@ -10,11 +10,11 @@ from xml.etree import ElementTree as ET
|
|
|
10
10
|
from lxml import etree
|
|
11
11
|
from PIL import Image, ImageChops
|
|
12
12
|
|
|
13
|
-
from ....foundation.
|
|
13
|
+
from ....foundation._image_payload import MAX_DECODED_RASTER_DIMENSION, MAX_DECODED_RASTER_PIXELS
|
|
14
14
|
from ....schema import BBox
|
|
15
15
|
from .constants import MAX_ENTRY_BYTES
|
|
16
16
|
from .errors import OfdResourceLimitError
|
|
17
|
-
from .geometry import Affine, bbox_intersection, parse_affine, parse_st_box, transform_bbox
|
|
17
|
+
from .geometry import Affine, bbox_intersection, parse_affine, parse_numbers, parse_st_box, transform_bbox
|
|
18
18
|
from .models import OfdPageScene
|
|
19
19
|
from .package import OfdPackage, element_text, first_child, local_name
|
|
20
20
|
from .path import OfdPathBudget, PathCommand, parse_path_commands
|
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
from dataclasses import dataclass, field
|
|
4
4
|
from pathlib import Path
|
|
5
5
|
from typing import Final, Optional, TypeAlias, Union
|
|
6
|
+
|
|
6
7
|
from pydantic import AnyUrl
|
|
8
|
+
|
|
9
|
+
from .....foundation.type_identity import preserve_type_module
|
|
7
10
|
from .formatting_types import Formatting
|
|
8
|
-
from docvortex.foundation.type_identity import preserve_type_module
|
|
9
11
|
|
|
10
12
|
_ParagraphHyperlink: TypeAlias = Optional[Union[AnyUrl, Path, str]]
|
|
11
13
|
_ParagraphElement: TypeAlias = tuple[str, Optional[Formatting], _ParagraphHyperlink]
|
|
@@ -11,7 +11,7 @@ from loguru import logger
|
|
|
11
11
|
from metafile_render import MetafileError, MetafileResourceLimitError, render_metafile
|
|
12
12
|
from PIL import Image, ImageDraw, ImageFont, UnidentifiedImageError
|
|
13
13
|
|
|
14
|
-
from
|
|
14
|
+
from ....foundation.image_encoding import image_to_b64str
|
|
15
15
|
|
|
16
16
|
VECTOR_IMAGE_FORMATS = frozenset({"WMF", "EMF"})
|
|
17
17
|
VECTOR_IMAGE_EXTENSIONS = frozenset({".wmf", ".emf"})
|
|
@@ -11,8 +11,8 @@ from typing import Any
|
|
|
11
11
|
|
|
12
12
|
from lxml import etree # type: ignore[reportMissingImports]
|
|
13
13
|
|
|
14
|
-
from
|
|
15
|
-
|
|
14
|
+
from docvortex.content.mathml import mathml_to_latex
|
|
15
|
+
|
|
16
16
|
from .....content.spans import (
|
|
17
17
|
append_equation_span,
|
|
18
18
|
append_text_span,
|
|
@@ -20,8 +20,9 @@ from .....content.spans import (
|
|
|
20
20
|
inline_span_plain_text,
|
|
21
21
|
strip_span_dicts,
|
|
22
22
|
)
|
|
23
|
-
from
|
|
24
|
-
from
|
|
23
|
+
from .....foundation.image_encoding import image_to_b64str
|
|
24
|
+
from .....schema import BlockType
|
|
25
|
+
from ..._shared.hyperlink import sanitize_hyperlink_target
|
|
25
26
|
from ..image import create_text_placeholder, serialize_office_image
|
|
26
27
|
from ..rich_text import OfficeRichTextSegment, build_rich_text_from_segments
|
|
27
28
|
from .chart import parse_chart_block
|
|
@@ -32,7 +33,6 @@ from .package import OdfPackage
|
|
|
32
33
|
from .styles import OdfStyles
|
|
33
34
|
from .table import OdfTableExpansionBudget, parse_table_grid, table_grid_to_html
|
|
34
35
|
|
|
35
|
-
|
|
36
36
|
_WHITESPACE_RE = re.compile(r"[\t\r\n ]+")
|
|
37
37
|
_MAX_EXPLICIT_SPACE_COUNT = 10_000
|
|
38
38
|
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
from dataclasses import dataclass
|
|
4
4
|
from typing import Any, Final, Optional
|
|
5
|
+
|
|
5
6
|
from pptx.enum.shapes import PP_PLACEHOLDER
|
|
6
|
-
from docvortex.foundation.type_identity import preserve_type_module
|
|
7
7
|
|
|
8
|
+
from .....foundation.type_identity import preserve_type_module
|
|
8
9
|
|
|
9
10
|
IGNORED_NOTES_PLACEHOLDER_TYPES: Final = {
|
|
10
11
|
PP_PLACEHOLDER.SLIDE_IMAGE,
|
|
@@ -7,11 +7,9 @@ import statistics
|
|
|
7
7
|
from dataclasses import dataclass
|
|
8
8
|
from typing import Any, Literal
|
|
9
9
|
|
|
10
|
-
from ....document.pdf.text.
|
|
11
|
-
|
|
10
|
+
from ....document.pdf.text._contracts import Char
|
|
12
11
|
from ....schema import BBox
|
|
13
12
|
|
|
14
|
-
|
|
15
13
|
SCRIPT_BODY_COMPARABLE_HEIGHT_RATIO = 0.9
|
|
16
14
|
SCRIPT_BASELINE_ABSOLUTE_TOLERANCE = 0.35
|
|
17
15
|
SCRIPT_BASELINE_LOOSE_HEIGHT_RATIO = 0.04
|
|
@@ -8,7 +8,6 @@ from collections.abc import Callable
|
|
|
8
8
|
from dataclasses import dataclass
|
|
9
9
|
|
|
10
10
|
from .....schema import BBox
|
|
11
|
-
|
|
12
11
|
from .contracts import NativeTableCandidate, NativeTableCandidateSource, NativeTableCell, NativeTableGlyph, NativeTableText
|
|
13
12
|
from .geometry import bbox_center
|
|
14
13
|
from .text import build_cell_text, glyph_overlap_ratio
|
|
@@ -5,8 +5,7 @@ from __future__ import annotations
|
|
|
5
5
|
from dataclasses import dataclass, field
|
|
6
6
|
from typing import Literal
|
|
7
7
|
|
|
8
|
-
from .....document.pdf.text.
|
|
9
|
-
|
|
8
|
+
from .....document.pdf.text._contracts import Char
|
|
10
9
|
from .....schema import BBox
|
|
11
10
|
|
|
12
11
|
NativeTableCandidateSource = Literal[
|
|
@@ -19,6 +18,10 @@ NativeTableCandidateSource = Literal[
|
|
|
19
18
|
]
|
|
20
19
|
|
|
21
20
|
|
|
21
|
+
class PDFTableRecoveryError(RuntimeError):
|
|
22
|
+
"""标记结构恢复阶段的失败,供宿主区分可回退错误与 HTML 物化异常。"""
|
|
23
|
+
|
|
24
|
+
|
|
22
25
|
@dataclass(frozen=True, slots=True)
|
|
23
26
|
class NativeTableRule:
|
|
24
27
|
"""保存页面坐标中的一条可见横线或竖线。"""
|
|
@@ -5,7 +5,7 @@ from __future__ import annotations
|
|
|
5
5
|
from collections.abc import Iterable
|
|
6
6
|
|
|
7
7
|
from .....schema import BBox
|
|
8
|
-
from ..table_geometry import normalize_bbox
|
|
8
|
+
from ..table_geometry import normalize_bbox, rotate_local_bbox
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
def normalize_angle(value: object) -> int:
|
|
@@ -8,10 +8,10 @@ from collections import Counter
|
|
|
8
8
|
from dataclasses import dataclass
|
|
9
9
|
from typing import Any
|
|
10
10
|
|
|
11
|
-
from .sparse_common import _LocalRule, _local_rules, cluster_members
|
|
12
11
|
from .candidate import GridCellSpec, build_candidate
|
|
13
12
|
from .contracts import NativeTableCandidate, NativeTableInput, NativeTableText, NativeTableTextRow
|
|
14
13
|
from .geometry import covered_interval_ratio, normalize_angle, normalize_bbox, page_bbox_to_table_local, table_local_size
|
|
14
|
+
from .sparse_common import _local_rules, _LocalRule, cluster_members
|
|
15
15
|
|
|
16
16
|
MIN_COLUMN_SUPPORT = 0.60
|
|
17
17
|
MIN_OVERALL_ANCHOR_SUPPORT = 0.80
|
|
@@ -8,10 +8,10 @@ from collections import Counter
|
|
|
8
8
|
from dataclasses import dataclass
|
|
9
9
|
from typing import Any
|
|
10
10
|
|
|
11
|
-
from .sparse_common import _LocalRule, _local_rules, cluster_members
|
|
12
11
|
from .candidate import GridCellSpec, build_candidate
|
|
13
12
|
from .contracts import NativeTableCandidate, NativeTableGlyph, NativeTableInput, NativeTableText, NativeTableTextRow
|
|
14
13
|
from .geometry import covered_interval_ratio, normalize_angle, normalize_bbox, page_bbox_to_table_local, table_local_size
|
|
14
|
+
from .sparse_common import _local_rules, _LocalRule, cluster_members
|
|
15
15
|
|
|
16
16
|
MIN_MULTILINE_RELIABILITY = 0.98
|
|
17
17
|
|
|
@@ -6,12 +6,10 @@ import statistics
|
|
|
6
6
|
import unicodedata
|
|
7
7
|
from dataclasses import dataclass
|
|
8
8
|
|
|
9
|
-
from .....document.pdf.text.
|
|
10
|
-
|
|
9
|
+
from .....document.pdf.text._contracts import Char
|
|
10
|
+
from .....foundation._text import resolve_text_line_boundary
|
|
11
11
|
from .....schema import BBox
|
|
12
|
-
from .....foundation.text import resolve_text_line_boundary
|
|
13
12
|
from ..spatial_text import _normalize_table_text
|
|
14
|
-
|
|
15
13
|
from .contracts import NativeTableGlyph, NativeTableInput, NativeTableText, NativeTableTextRow, NativeTableToken
|
|
16
14
|
from .geometry import bbox_center, bbox_intersection, bbox_union, normalize_angle, normalize_bbox, page_bbox_to_table_local
|
|
17
15
|
|
|
@@ -11,13 +11,13 @@ from dataclasses import dataclass, field
|
|
|
11
11
|
from functools import lru_cache
|
|
12
12
|
from typing import Any, Literal, Sequence, TypeAlias
|
|
13
13
|
|
|
14
|
+
from ....document.pdf._document import PDFPageTextGeometry
|
|
14
15
|
from ....schema import BBox
|
|
15
|
-
from ....document.pdf.document import PDFPageTextGeometry
|
|
16
16
|
from .geometry import (
|
|
17
|
-
_clip_validated_bbox,
|
|
18
17
|
_bbox_axis_overlap_ratio,
|
|
19
18
|
_bbox_union_many,
|
|
20
19
|
_clip_bbox,
|
|
20
|
+
_clip_validated_bbox,
|
|
21
21
|
_coerce_bbox,
|
|
22
22
|
_rotate_bbox_from_upright,
|
|
23
23
|
_rotate_bbox_to_upright,
|
|
@@ -25,7 +25,6 @@ from .geometry import (
|
|
|
25
25
|
)
|
|
26
26
|
from .models import _LineItem
|
|
27
27
|
|
|
28
|
-
|
|
29
28
|
X_RELIABLE_PAIR_MIN = 30
|
|
30
29
|
X_STRONG_MEDIAN_RATIO = 1.30
|
|
31
30
|
X_STRONG_RATIO_THRESHOLD = 1.35
|
|
@@ -7,10 +7,8 @@ import statistics
|
|
|
7
7
|
import unicodedata
|
|
8
8
|
from typing import Any
|
|
9
9
|
|
|
10
|
-
from .
|
|
10
|
+
from ....document.pdf._document import PDFPathInfo
|
|
11
11
|
from ....schema import BBox
|
|
12
|
-
from ....document.pdf.document import PDFPathInfo
|
|
13
|
-
|
|
14
12
|
from .geometry import (
|
|
15
13
|
_bbox_area,
|
|
16
14
|
_bbox_center_x,
|
|
@@ -21,7 +19,7 @@ from .geometry import (
|
|
|
21
19
|
)
|
|
22
20
|
from .models import _CodeCandidate, _LineItem, _PageSource
|
|
23
21
|
from .native_text import _sanitize_pdf_control_text
|
|
24
|
-
|
|
22
|
+
from .spatial_text import project_pdf_spatial_text
|
|
25
23
|
|
|
26
24
|
_MONOSPACE_FONT_HINTS = (
|
|
27
25
|
"mono",
|
|
@@ -8,12 +8,9 @@ import unicodedata
|
|
|
8
8
|
from dataclasses import dataclass, replace
|
|
9
9
|
from typing import Any
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
from ....document.pdf._document import PDFPathInfo
|
|
12
|
+
from ....foundation._text import build_tagged_formula_content
|
|
12
13
|
from ....schema import BBox
|
|
13
|
-
from ....document.pdf.document import PDFPathInfo
|
|
14
|
-
from ....foundation.text import build_tagged_formula_content
|
|
15
|
-
|
|
16
|
-
from .models import _AxisLine, _FormulaAnchor, _LineItem, _PageSource, _TextLane
|
|
17
14
|
from .geometry import (
|
|
18
15
|
_bbox_axis_overlap_ratio,
|
|
19
16
|
_bbox_center_x,
|
|
@@ -30,7 +27,6 @@ from .geometry import (
|
|
|
30
27
|
_rotate_bbox_to_upright,
|
|
31
28
|
_transform_axis_lines,
|
|
32
29
|
)
|
|
33
|
-
from .native_text import _sanitize_pdf_control_text
|
|
34
30
|
from .line_layout import (
|
|
35
31
|
_connection_crosses_table,
|
|
36
32
|
_infer_text_lanes,
|
|
@@ -40,7 +36,8 @@ from .line_layout import (
|
|
|
40
36
|
_lines_tight_output_bbox,
|
|
41
37
|
)
|
|
42
38
|
from .line_merging import _join_formula_visual_row, _merge_overlapping_inline_cluster
|
|
43
|
-
|
|
39
|
+
from .models import _AxisLine, _FormulaAnchor, _LineItem, _PageSource, _TextLane
|
|
40
|
+
from .native_text import _sanitize_pdf_control_text
|
|
44
41
|
|
|
45
42
|
_FORMULA_NUMBER_SUFFIX_RE = re.compile(r"^(?P<prefix>.*?)(?P<marker>[((﹙][^()()﹙﹚\r\n]+[))﹚])\s*$")
|
|
46
43
|
_FORMULA_NUMBER_MARKER_RE = re.compile(
|
|
@@ -2,17 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from dataclasses import replace
|
|
6
5
|
import math
|
|
7
6
|
import re
|
|
8
7
|
import statistics
|
|
8
|
+
from dataclasses import replace
|
|
9
9
|
from typing import Any
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
from ....document.pdf._document import PDFPathInfo
|
|
12
12
|
from ....schema import BBox
|
|
13
|
-
from ....document.pdf.document import PDFPathInfo
|
|
14
|
-
|
|
15
|
-
from .models import _AxisLine, _GraphicCandidate, _LineItem, _PageSource, _TextLane
|
|
16
13
|
from .geometry import (
|
|
17
14
|
_bbox_area,
|
|
18
15
|
_bbox_axis_overlap_ratio,
|
|
@@ -29,10 +26,10 @@ from .geometry import (
|
|
|
29
26
|
_point_in_bbox,
|
|
30
27
|
_rotate_bbox_to_upright,
|
|
31
28
|
)
|
|
32
|
-
from .native_text import _fill_native_typography, _normalize_native_run_text, _sanitize_pdf_control_text
|
|
33
29
|
from .line_layout import _infer_text_lanes, _line_effective_height
|
|
34
30
|
from .line_merging import _join_formula_visual_row
|
|
35
|
-
|
|
31
|
+
from .models import _AxisLine, _GraphicCandidate, _LineItem, _PageSource, _TextLane
|
|
32
|
+
from .native_text import _fill_native_typography, _normalize_native_run_text, _sanitize_pdf_control_text
|
|
36
33
|
|
|
37
34
|
_MIN_RASTER_IMAGE_PAGE_AREA_RATIO = 0.0038
|
|
38
35
|
|
|
@@ -6,8 +6,8 @@ import math
|
|
|
6
6
|
import statistics
|
|
7
7
|
from typing import Any, Sequence
|
|
8
8
|
|
|
9
|
+
from .....document.pdf._document import PDFLinkAnnotation
|
|
9
10
|
from .....schema import BBox
|
|
10
|
-
from .....document.pdf.document import PDFLinkAnnotation
|
|
11
11
|
from .common import (
|
|
12
12
|
_bbox_intersection_area,
|
|
13
13
|
_canonical_styles,
|
|
@@ -7,8 +7,8 @@ from typing import TYPE_CHECKING, Any, Sequence
|
|
|
7
7
|
|
|
8
8
|
from loguru import logger
|
|
9
9
|
|
|
10
|
+
from .....foundation._text import is_hyphen_at_line_end
|
|
10
11
|
from .....schema import BBox
|
|
11
|
-
from .....foundation.text import is_hyphen_at_line_end
|
|
12
12
|
|
|
13
13
|
if TYPE_CHECKING:
|
|
14
14
|
from ..models import _LineItem
|
{docvortex-0.3.0 → docvortex-0.4.1}/src/docvortex/analyzers/native/pdf/inline/materialize.py
RENAMED
|
@@ -5,7 +5,6 @@ from __future__ import annotations
|
|
|
5
5
|
import re
|
|
6
6
|
from typing import Any, Sequence
|
|
7
7
|
|
|
8
|
-
from .....schema import BBox
|
|
9
8
|
from .....content.spans import (
|
|
10
9
|
append_equation_span,
|
|
11
10
|
append_hyperlink_span,
|
|
@@ -13,6 +12,7 @@ from .....content.spans import (
|
|
|
13
12
|
extend_inline_spans,
|
|
14
13
|
normalize_span_dicts,
|
|
15
14
|
)
|
|
15
|
+
from .....schema import BBox
|
|
16
16
|
from .common import _canonical_styles
|
|
17
17
|
from .matching import (
|
|
18
18
|
_assign_lines_to_blocks,
|
|
@@ -455,3 +455,19 @@ __all__ = [
|
|
|
455
455
|
"_parse_native_script_markup",
|
|
456
456
|
"materialize_pdf_inline_spans",
|
|
457
457
|
]
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
def apply_pdf_inline_evidence(
|
|
461
|
+
blocks: list[dict[str, Any]],
|
|
462
|
+
link_lines: list[PDFTextLinkLine],
|
|
463
|
+
style_lines: list[PDFTextStyleLine],
|
|
464
|
+
script_lines: list[PDFTextScriptLine],
|
|
465
|
+
page_size: tuple[float, float],
|
|
466
|
+
*,
|
|
467
|
+
materialized_diagnostics: list[dict[str, Any]] | None = None,
|
|
468
|
+
) -> None:
|
|
469
|
+
"""在调用方已有页面准备之后统一执行行内语义物化顺序。"""
|
|
470
|
+
apply_pdf_text_links(blocks, link_lines, page_size)
|
|
471
|
+
apply_pdf_text_styles(blocks, style_lines, page_size)
|
|
472
|
+
apply_pdf_text_scripts(blocks, script_lines, page_size, materialized_diagnostics=materialized_diagnostics)
|
|
473
|
+
materialize_pdf_inline_spans(blocks)
|