diff options
| author | Bruno Herfst <hello@brunoherfst.com> | 2016-10-26 11:04:09 +1100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-12-10 23:07:48 +0000 |
| commit | bc8c341b37bfac34bbeaccdd5368c2d7edc309ac (patch) | |
| tree | 5c18d634763f5f6ae0defeb07368f0ae28d8ef4d /mammoth/docx | |
| parent | 8661cad2a82b66254fff564f4a514cbd67ad371d (diff) | |
Add support for page and column breaks
Diffstat (limited to 'mammoth/docx')
| -rw-r--r-- | mammoth/docx/body_xml.py | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/mammoth/docx/body_xml.py b/mammoth/docx/body_xml.py index 22d8440..1fcd567 100644 --- a/mammoth/docx/body_xml.py +++ b/mammoth/docx/body_xml.py @@ -253,7 +253,8 @@ def _create_reader(numbering, content_types, relationships, styles, docx_file, f return children_result.map(lambda children: documents.hyperlink(anchor=anchor, children=children)) else: return children_result - + + def bookmark_start(element): name = element.attributes.get("w:name") if name == "_GoBack": @@ -262,13 +263,19 @@ def _create_reader(numbering, content_types, relationships, styles, docx_file, f return _success(documents.bookmark(name)) - def br(element): + def break_(element): break_type = element.attributes.get("w:type") - if break_type: + + if not break_type or break_type == "textWrapping": + return _success(documents.line_break) + elif break_type == "page": + return _success(documents.page_break) + elif break_type == "column": + return _success(documents.column_break) + else: warning = results.warning("Unsupported break type: {0}".format(break_type)) return _empty_result_with_message(warning) - else: - return _success(documents.line_break()) + def inline(element): properties = element.find_child_or_null("wp:docPr").attributes @@ -372,7 +379,7 @@ def _create_reader(numbering, content_types, relationships, styles, docx_file, f "w:pict": pict, "w:hyperlink": hyperlink, "w:bookmarkStart": bookmark_start, - "w:br": br, + "w:br": break_, "wp:inline": inline, "wp:anchor": inline, "v:imagedata": read_imagedata, |
