Esempio n. 1
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
            ('BBB', 1, 1),
            ('CCC', 2, 1),
            ('DDD', 2, 1),
            ('EEE', 1, 1),
            ('FFF', 2, 1),
            ('GGG', 2, 1),
            ('HHH', 1, 1),
            ('III', 2, 1),
            ('JJJ', 2, 1),
            ('KKK', 0, 1),
            ('LLL', 0, 2),
            ('MMM', 1, 2),
            ('NNN', 1, 2),
            ('OOO', 0, 2),
            ('PPP', 1, 2),
            ('QQQ', 1, 2),
            ('RRR', 2, 2),
            ('SSS', 0, 2),
            ('TTT', 1, 2),
            ('UUU', 1, 2),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 2
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
            ('BBB', 1, 1),
            ('CCC', 2, 1),
            ('DDD', 2, 1),
            ('EEE', 1, 1),
            ('FFF', 2, 1),
            ('GGG', 2, 1),
            ('HHH', 1, 1),
            ('III', 2, 1),
            ('JJJ', 2, 1),
            ('KKK', 0, 1),
            ('LLL', 0, 2),
            ('MMM', 1, 2),
            ('NNN', 1, 2),
            ('OOO', 0, 2),
            ('PPP', 1, 2),
            ('QQQ', 1, 2),
            ('RRR', 2, 2),
            ('SSS', 0, 2),
            ('TTT', 1, 2),
            ('UUU', 1, 2),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 3
0
    def get_xml(self):
        body = b''
        body += DXB.li(text='AAA', ilvl=0, numId=1)
        body += DXB.sdt_tag(p_tag=DXB.p_tag(text='BBB'))
        body += DXB.li(text='CCC', ilvl=0, numId=1)

        xml = DXB.xml(body)
        return xml
Esempio n. 4
0
    def get_xml(self):
        body = b''
        body += DXB.li(text='AAA', ilvl=0, numId=1)
        body += DXB.sdt_tag(p_tag=DXB.p_tag(text='BBB'))
        body += DXB.li(text='CCC', ilvl=0, numId=1)

        xml = DXB.xml(body)
        return xml
Esempio n. 5
0
    def get_xml(self):
        p_tag = DXB.p_tag(None)  # No text
        run_tags = [p_tag]
        # The bug is only present in a hyperlink
        run_tags = [DXB.hyperlink_tag(r_id='rId0', run_tags=run_tags)]
        body = DXB.p_tag(run_tags)

        xml = DXB.xml(body)
        return xml
Esempio n. 6
0
 def get_xml(self):
     # Make sure it is over 1000 (which is the recursion limit)
     paragraphs = [DXB.p_tag('%d' % i) for i in range(1000)]
     cell = DXB.table_cell(paragraphs)
     row = DXB.table_cell([cell])
     table = DXB.table([row])
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 7
0
 def get_xml(self):
     # Make sure it is over 1000 (which is the recursion limit)
     paragraphs = [DXB.p_tag('%d' % i) for i in range(1000)]
     cell = DXB.table_cell(paragraphs)
     row = DXB.table_cell([cell])
     table = DXB.table([row])
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 8
0
    def get_xml(self):
        p_tag = DXB.p_tag(None)  # No text
        run_tags = [p_tag]
        # The bug is only present in a hyperlink
        run_tags = [DXB.hyperlink_tag(r_id='rId0', run_tags=run_tags)]
        body = DXB.p_tag(run_tags)

        xml = DXB.xml(body)
        return xml
Esempio n. 9
0
    def get_xml(self):
        delete_tags = DXB.delete_tag(['BBB'])
        p_tag = DXB.p_tag([delete_tags])

        body = DXB.li(text='AAA', ilvl=0, numId=1)
        body += p_tag
        body += DXB.li(text='CCC', ilvl=0, numId=1)

        xml = DXB.xml(body)
        return xml
Esempio n. 10
0
 def get_xml(self):
     li = DXB.li(text='AAA', ilvl=0, numId=1)
     p_tags = [
         DXB.p_tag('BBB'),
     ]
     body = li
     for p_tag in p_tags:
         body += p_tag
     xml = DXB.xml(body)
     return xml
Esempio n. 11
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 12
0
 def get_xml(self):
     li = DXB.li(text='AAA', ilvl=0, numId=1)
     p_tags = [
         DXB.p_tag('BBB'),
     ]
     body = li
     for p_tag in p_tags:
         body += p_tag
     xml = DXB.xml(body)
     return xml
Esempio n. 13
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 14
0
    def get_xml(self):
        paragraph = DXB.p_tag('AAA')

        for _ in range(1000):
            cell = DXB.table_cell(paragraph)
            row = DXB.table_cell([cell])
            table = DXB.table([row])
        body = table
        xml = DXB.xml(body)
        return xml
Esempio n. 15
0
    def get_xml(self):
        delete_tags = DXB.delete_tag(['BBB'])
        p_tag = DXB.p_tag([delete_tags])

        body = DXB.li(text='AAA', ilvl=0, numId=1)
        body += p_tag
        body += DXB.li(text='CCC', ilvl=0, numId=1)

        xml = DXB.xml(body)
        return xml
Esempio n. 16
0
    def get_xml(self):
        paragraph = DXB.p_tag('AAA')

        for _ in range(1000):
            cell = DXB.table_cell(paragraph)
            row = DXB.table_cell([cell])
            table = DXB.table([row])
        body = table
        xml = DXB.xml(body)
        return xml
Esempio n. 17
0
    def get_xml(self):
        drawing = DXB.drawing(height=None, width=None, r_id='rId0')
        pict = DXB.pict(height=None, width=None, r_id='rId1')
        tags = [
            drawing,
            pict,
        ]
        body = b''
        for el in tags:
            body += el

        return DXB.xml(body)
Esempio n. 18
0
 def get_xml(self):
     li_text = [
         ('AAA', 0, 1),
         ('BBB', None, 1),  # Because why not.
         ('CCC', 0, 1),
     ]
     lis = b''
     for text, ilvl, numId in li_text:
         lis += DXB.li(text=text, ilvl=ilvl, numId=numId)
     body = lis
     xml = DXB.xml(body)
     return xml
Esempio n. 19
0
    def get_xml(self):
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=2),
            DXB.li(text='BBB', ilvl=1, numId=1),
            DXB.li(text='CCC', ilvl=0, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 20
0
    def get_xml(self):
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=2),
            DXB.li(text='BBB', ilvl=1, numId=1),
            DXB.li(text='CCC', ilvl=0, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 21
0
 def get_xml(self):
     li_text = [
         ('AAA', 0, 1),
         ('BBB', None, 1),  # Because why not.
         ('CCC', 0, 1),
     ]
     lis = b''
     for text, ilvl, numId in li_text:
         lis += DXB.li(text=text, ilvl=ilvl, numId=numId)
     body = lis
     xml = DXB.xml(body)
     return xml
Esempio n. 22
0
    def get_xml(self):
        tags = [
            # purposefully start at 1 instead of 0
            DXB.li(text='AAA', ilvl=1, numId=1),
            DXB.li(text='BBB', ilvl=3, numId=1),
            DXB.li(text='CCC', ilvl=2, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 23
0
    def get_xml(self):
        drawing = DXB.drawing(height=20, width=40, r_id='rId0')
        pict = DXB.pict(height=21, width=41, r_id='rId1')
        tags = [
            drawing,
            pict,
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 24
0
    def get_xml(self):
        tags = [
            # purposefully start at 1 instead of 0
            DXB.li(text='AAA', ilvl=1, numId=1),
            DXB.li(text='BBB', ilvl=3, numId=1),
            DXB.li(text='CCC', ilvl=2, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 25
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
            ('BBB', 1, 1),
            ('CCC', 0, 1),
            ('DDD', 1, 1),
            ('EEE', 2, 1),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 26
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
            ('BBB', 1, 1),
            ('CCC', 0, 1),
            ('DDD', 1, 1),
            ('EEE', 2, 1),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 27
0
    def get_xml(self):
        drawing = DXB.drawing(height=None, width=None, r_id='rId0')
        pict = DXB.pict(height=None, width=None, r_id='rId1')
        rect = DXB.rect(height=None, width=None, r_id='rId2')
        tags = [
            drawing,
            pict,
            rect,
        ]
        body = b''
        for el in tags:
            body += el

        return DXB.xml(body)
Esempio n. 28
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 2),
            # Because AAA and CCC are part of the same list (same list id)
            # and BBB is different, these need to be split into three
            # lists (or lose everything from BBB and after.
            ('BBB', 0, 1),
            ('CCC', 0, 2),
        ]
        lis = b''
        for text, ilvl, numId in li_text:
            lis += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(lis)
        return xml
Esempio n. 29
0
    def get_xml(self):
        drawing = DXB.drawing(height=20, width=40, r_id='rId0')
        pict = DXB.pict(height=21, width=41, r_id='rId1')
        rect = DXB.rect(height=22, width=42, r_id='rId2')
        tags = [
            drawing,
            pict,
            rect,
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 30
0
    def get_xml(self):
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=2),
            # Because AAA and CCC are part of the same list (same list id)
            # and BBB is different, these need to be split into three
            # lists (or lose everything from BBB and after.
            DXB.li(text='BBB', ilvl=0, numId=1),
            DXB.li(text='CCC', ilvl=0, numId=2),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 31
0
    def get_xml(self):
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=2),
            # Because AAA and CCC are part of the same list (same list id)
            # and BBB is different, these need to be split into three
            # lists (or lose everything from BBB and after.
            DXB.li(text='BBB', ilvl=0, numId=1),
            DXB.li(text='CCC', ilvl=0, numId=2),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 32
0
    def get_xml(self):
        li_text = [
            ('AAA', 0, 1),
            ('BBB', 1, 1),
            ('CCC', 0, 2),
            ('DDD', 1, 2),
            ('EEE', 0, 3),
            ('FFF', 1, 3),
            ('GGG', 2, 3),
        ]
        body = b''
        for text, ilvl, numId in li_text:
            body += DXB.li(text=text, ilvl=ilvl, numId=numId)

        xml = DXB.xml(body)
        return xml
Esempio n. 33
0
    def get_xml(self):
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=2),
            # Because AAA and DDD are part of the same list (same list id)
            # and BBB,CCC are different, these need to be properly formatted
            # into a single list where BBB,CCC are added as nested list to AAA item
            DXB.li(text='BBB', ilvl=0, numId=1),
            DXB.li(text='CCC', ilvl=0, numId=1),
            DXB.li(text='DDD', ilvl=0, numId=2),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 34
0
    def get_xml(self):
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=2),
            # Because AAA and DDD are part of the same list (same list id)
            # and BBB,CCC are different, these need to be properly formatted
            # into a single list where BBB,CCC are added as nested list to AAA item
            DXB.li(text='BBB', ilvl=0, numId=1),
            DXB.li(text='CCC', ilvl=0, numId=1),
            DXB.li(text='DDD', ilvl=0, numId=2),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 35
0
    def get_xml(self):
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'insert ']
        insert_tag = DXB.insert_tag(run_tags)
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'smarttag']
        smart_tag = DXB.smart_tag(run_tags)

        run_tags = [insert_tag, smart_tag]
        body = DXB.p_tag(run_tags)
        xml = DXB.xml(body)
        return xml
Esempio n. 36
0
    def get_xml(self):
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'insert ']
        insert_tag = DXB.insert_tag(run_tags)
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'smarttag']
        smart_tag = DXB.smart_tag(run_tags)

        run_tags = [insert_tag, smart_tag]
        body = DXB.p_tag(run_tags)
        xml = DXB.xml(body)
        return xml
Esempio n. 37
0
    def load_document(self):
        # It's likely that we could replace this logic with a
        # WordprocessingDocumentFactory
        document = WordprocessingDocument(path=None)
        package = document.package
        document_part = package.create_part(uri="/word/document.xml")

        if self.numbering_dict is not None:
            numbering_xml = DXB.numbering(self.numbering_dict)
            self.relationships.append(
                {
                    "external": False,
                    "target_path": "numbering.xml",
                    "data": numbering_xml,
                    "relationship_id": "numbering",
                    "relationship_type": NumberingDefinitionsPart.relationship_type,  # noqa
                }
            )

        if self.styles_xml:
            self.relationships.append(
                {
                    "external": False,
                    "target_path": "styles.xml",
                    "data": self.styles_xml,
                    "relationship_id": "styles",
                    "relationship_type": StyleDefinitionsPart.relationship_type,
                }
            )

        for relationship in self.relationships:
            target_mode = "Internal"
            if relationship["external"]:
                target_mode = "External"
            target_uri = relationship["target_path"]
            if "data" in relationship:
                full_target_uri = posixpath.join(package.uri, "word", target_uri)
                package.streams[full_target_uri] = BytesIO(relationship["data"])
                package.create_part(uri=full_target_uri)
            document_part.create_relationship(
                target_uri=target_uri,
                target_mode=target_mode,
                relationship_type=relationship["relationship_type"],
                relationship_id=relationship["relationship_id"],
            )

        package.streams[document_part.uri] = BytesIO(self.document_xml)
        package.create_relationship(
            target_uri=document_part.uri, target_mode="Internal", relationship_type=MainDocumentPart.relationship_type
        )

        # This is the standard page width for a word document (in points), Also
        # the page width that we are looking for in the test.
        self._page_width = 612

        return document
Esempio n. 38
0
    def get_xml(self):
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'BBB']
        smart_tag = DXB.smart_tag(run_tags)
        p_tag = DXB.p_tag([smart_tag])

        body = DXB.li(text='AAA', ilvl=0, numId=1)
        body += p_tag
        body += DXB.li(text='CCC', ilvl=0, numId=1)

        xml = DXB.xml(body)
        return xml
Esempio n. 39
0
    def get_xml(self):
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'BBB']
        smart_tag = DXB.smart_tag(run_tags)
        p_tag = DXB.p_tag([smart_tag])

        body = DXB.li(text='AAA', ilvl=0, numId=1)
        body += p_tag
        body += DXB.li(text='CCC', ilvl=0, numId=1)

        xml = DXB.xml(body)
        return xml
Esempio n. 40
0
    def get_xml(self):
        run_tags = [DXB.r_tag([DXB.t_tag(i)]) for i in 'BBB']
        insert_tags = DXB.insert_tag(run_tags)
        p_tag = DXB.p_tag([insert_tags])

        body = DXB.li(text='AAA', ilvl=0, numId=0)
        body += p_tag
        body += DXB.li(text='CCC', ilvl=0, numId=0)

        xml = DXB.xml(body)
        return xml
Esempio n. 41
0
 def get_xml(self):
     li_text = [
         ('BBB', 0, 1),
     ]
     lis = b''
     for text, ilvl, numId in li_text:
         lis += DXB.li(text=text, ilvl=ilvl, numId=numId)
     cell1 = DXB.table_cell(lis)
     rows = DXB.table_row([cell1])
     table = DXB.table([rows])
     lis = b''
     lis += DXB.li(text='AAA', ilvl=0, numId=1)
     lis += table
     lis += DXB.li(text='CCC', ilvl=0, numId=1)
     body = lis
     xml = DXB.xml(body)
     return xml
Esempio n. 42
0
 def get_xml(self):
     li_text = [
         ('BBB', 0, 1),
     ]
     lis = b''
     for text, ilvl, numId in li_text:
         lis += DXB.li(text=text, ilvl=ilvl, numId=numId)
     cell1 = DXB.table_cell(lis)
     rows = DXB.table_row([cell1])
     table = DXB.table([rows])
     lis = b''
     lis += DXB.li(text='AAA', ilvl=0, numId=1)
     lis += table
     lis += DXB.li(text='CCC', ilvl=0, numId=1)
     body = lis
     xml = DXB.xml(body)
     return xml
Esempio n. 43
0
 def get_xml(self):
     li_text = [
         ('AAA', 0, 1),
         ('BBB', 0, 1),
     ]
     lis = b''
     for text, ilvl, numId in li_text:
         lis += DXB.li(text=text, ilvl=ilvl, numId=numId)
     els = [
         lis,
         DXB.p_tag('CCC'),
         DXB.p_tag('DDD'),
     ]
     td = b''
     for el in els:
         td += el
     cell1 = DXB.table_cell(td)
     row = DXB.table_row([cell1])
     table = DXB.table([row])
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 44
0
 def get_xml(self):
     li_text = [
         ('AAA', 0, 1),
         ('BBB', 0, 1),
     ]
     lis = b''
     for text, ilvl, numId in li_text:
         lis += DXB.li(text=text, ilvl=ilvl, numId=numId)
     els = [
         lis,
         DXB.p_tag('CCC'),
         DXB.p_tag('DDD'),
     ]
     td = b''
     for el in els:
         td += el
     cell1 = DXB.table_cell(td)
     row = DXB.table_row([cell1])
     table = DXB.table([row])
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 45
0
 def get_xml(self):
     cell1 = DXB.table_cell(
         paragraph=DXB.p_tag('AAA'), merge=True, merge_continue=False)
     cell2 = DXB.table_cell(
         paragraph=DXB.p_tag(None), merge=False, merge_continue=True)
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('BBB'))
     cell4 = DXB.table_cell(paragraph=DXB.p_tag('CCC'))
     rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
     table = DXB.table(rows)
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 46
0
    def get_xml(self):
        p_tags = [
            DXB.p_tag(
                [
                    DXB.r_tag([DXB.t_tag('AAA')]),
                    DXB.r_tag(
                        [DXB.t_tag('BBB')],
                        rpr=DXB.rpr_tag({'vertAlign': 'superscript'}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('CCC')],
                        rpr=DXB.rpr_tag({'vertAlign': 'subscript'}),
                    ),
                    DXB.r_tag([DXB.t_tag('DDD')]),
                ],
            ),
        ]
        body = b''
        for p_tag in p_tags:
            body += p_tag

        xml = DXB.xml(body)
        return xml
Esempio n. 47
0
 def get_xml(self):
     cell1 = DXB.table_cell(paragraph=DXB.p_tag('DDD'))
     cell2 = DXB.table_cell(paragraph=DXB.p_tag('FFF'))
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('EEE'))
     cell4 = DXB.table_cell(paragraph=DXB.p_tag('GGG'))
     rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
     nested_table = DXB.table(rows)
     cell1 = DXB.table_cell(paragraph=DXB.p_tag('AAA'))
     cell2 = DXB.table_cell(paragraph=DXB.p_tag('CCC'))
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('BBB'))
     cell4 = DXB.table_cell(nested_table)
     rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
     table = DXB.table(rows)
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 48
0
    def get_xml(self):
        p_tags = [
            DXB.p_tag(
                [
                    DXB.r_tag([DXB.t_tag('AAA')]),
                    DXB.r_tag(
                        [DXB.t_tag('BBB')],
                        rpr=DXB.rpr_tag({'vertAlign': 'superscript'}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('CCC')],
                        rpr=DXB.rpr_tag({'vertAlign': 'subscript'}),
                    ),
                    DXB.r_tag([DXB.t_tag('DDD')]),
                ],
            ),
        ]
        body = b''
        for p_tag in p_tags:
            body += p_tag

        xml = DXB.xml(body)
        return xml
Esempio n. 49
0
 def get_xml(self):
     cell1 = DXB.table_cell(paragraph=DXB.p_tag('AAA'))
     cell2 = DXB.table_cell('<w:invalidTag>CCC</w:invalidTag>')
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('BBB'))
     cell4 = DXB.table_cell(paragraph=DXB.p_tag('DDD'))
     rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
     table = DXB.table(rows)
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 50
0
 def get_xml(self):
     cell1 = DXB.table_cell(paragraph=DXB.p_tag('Blank'))
     cell2 = DXB.table_cell(paragraph=DXB.p_tag('Row 1'))
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('Row 2'))
     cell4 = DXB.table_cell(paragraph=DXB.p_tag('Column 1'))
     cell5 = DXB.table_cell(paragraph=DXB.p_tag('First'))
     cell6 = DXB.table_cell(paragraph=DXB.p_tag('Third'))
     cell7 = DXB.table_cell(paragraph=DXB.p_tag('Column 2'))
     cell8 = DXB.table_cell(paragraph=DXB.p_tag('Second'))
     cell9 = DXB.table_cell(paragraph=DXB.p_tag('Fourth'))
     rows = [DXB.table_row([cell1, cell4, cell7]),
             DXB.table_row([cell2, cell5, cell8]),
             DXB.table_row([cell3, cell6, cell9])]
     table = DXB.table(rows)
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 51
0
 def get_xml(self):
     cell1 = DXB.table_cell(paragraph=DXB.p_tag('Blank'))
     cell2 = DXB.table_cell(paragraph=DXB.p_tag('Row 1'))
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('Row 2'))
     cell4 = DXB.table_cell(paragraph=DXB.p_tag('Column 1'))
     cell5 = DXB.table_cell(paragraph=DXB.p_tag('First'))
     cell6 = DXB.table_cell(paragraph=DXB.p_tag('Third'))
     cell7 = DXB.table_cell(paragraph=DXB.p_tag('Column 2'))
     cell8 = DXB.table_cell(paragraph=DXB.p_tag('Second'))
     cell9 = DXB.table_cell(paragraph=DXB.p_tag('Fourth'))
     rows = [DXB.table_row([cell1, cell4, cell7]),
             DXB.table_row([cell2, cell5, cell8]),
             DXB.table_row([cell3, cell6, cell9])]
     table = DXB.table(rows)
     body = table
     xml = DXB.xml(body)
     return xml
Esempio n. 52
0
    def get_xml(self):
        cell = DXB.table_cell(paragraph=DXB.p_tag('BBB'))
        row = DXB.table_row([cell])
        table1 = DXB.table([row])
        cell = DXB.table_cell(paragraph=DXB.p_tag('CCC'))
        row = DXB.table_row([cell])
        table2 = DXB.table([row])
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=1),
            table1,
            table2,
            DXB.li(text='DDD', ilvl=0, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 53
0
    def get_xml(self):
        p_tags = [
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('aaa')],
                        rpr=DXB.rpr_tag({'b': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('bbb')],
                        rpr=DXB.rpr_tag({'u': 'single'}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('ccc')],
                        rpr=DXB.rpr_tag({'i': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('ddd')],
                        rpr=DXB.rpr_tag({'caps': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('eee')],
                        rpr=DXB.rpr_tag({'smallCaps': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('fff')],
                        rpr=DXB.rpr_tag({'strike': None})
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('ggg')],
                        rpr=DXB.rpr_tag({'dstrike': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('hhh')],
                        rpr=DXB.rpr_tag({'vanish': None})
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('iii')],
                        rpr=DXB.rpr_tag({'webHidden': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('jjj')],
                        rpr=DXB.rpr_tag({'vertAlign': 'superscript'}),
                    ),
                ],
            ),
        ]
        body = b''
        for p_tag in p_tags:
            body += p_tag

        xml = DXB.xml(body)
        return xml
Esempio n. 54
0
    def load_document(self):
        # It's likely that we could replace this logic with a
        # WordprocessingDocumentFactory
        document = WordprocessingDocument(path=None)
        package = document.package
        document_part = package.create_part(uri='/word/document.xml', )

        if self.numbering_dict is not None:
            numbering_xml = DXB.numbering(self.numbering_dict)
            self.relationships.append({
                'external':
                False,
                'target_path':
                'numbering.xml',
                'data':
                numbering_xml,
                'relationship_id':
                'numbering',
                'relationship_type':
                NumberingDefinitionsPart.relationship_type,  # noqa
            })

        if self.styles_xml:
            self.relationships.append({
                'external':
                False,
                'target_path':
                'styles.xml',
                'data':
                self.styles_xml,
                'relationship_id':
                'styles',
                'relationship_type':
                StyleDefinitionsPart.relationship_type,
            })

        for relationship in self.relationships:
            target_mode = 'Internal'
            if relationship['external']:
                target_mode = 'External'
            target_uri = relationship['target_path']
            if 'data' in relationship:
                full_target_uri = posixpath.join(
                    package.uri,
                    'word',
                    target_uri,
                )
                package.streams[full_target_uri] = BytesIO(
                    relationship['data'], )
                package.create_part(uri=full_target_uri)
            document_part.create_relationship(
                target_uri=target_uri,
                target_mode=target_mode,
                relationship_type=relationship['relationship_type'],
                relationship_id=relationship['relationship_id'],
            )

        package.streams[document_part.uri] = BytesIO(self.document_xml)
        package.create_relationship(
            target_uri=document_part.uri,
            target_mode='Internal',
            relationship_type=MainDocumentPart.relationship_type,
        )

        # This is the standard page width for a word document (in points), Also
        # the page width that we are looking for in the test.
        self._page_width = 612

        return document
Esempio n. 55
0
    def get_xml(self):
        cell = DXB.table_cell(paragraph=DXB.p_tag('BBB'))
        row = DXB.table_row([cell])
        table1 = DXB.table([row])
        cell = DXB.table_cell(paragraph=DXB.p_tag('CCC'))
        row = DXB.table_row([cell])
        table2 = DXB.table([row])
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=1),
            table1,
            table2,
            DXB.li(text='DDD', ilvl=0, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 56
0
    def get_xml(self):
        p_tags = [
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('aaa')],
                        rpr=DXB.rpr_tag({'b': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('bbb')],
                        rpr=DXB.rpr_tag({'u': 'single'}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('ccc')],
                        rpr=DXB.rpr_tag({'i': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('ddd')],
                        rpr=DXB.rpr_tag({'caps': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('eee')],
                        rpr=DXB.rpr_tag({'smallCaps': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('fff')],
                        rpr=DXB.rpr_tag({'strike': None})
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('ggg')],
                        rpr=DXB.rpr_tag({'dstrike': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('hhh')],
                        rpr=DXB.rpr_tag({'vanish': None})
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('iii')],
                        rpr=DXB.rpr_tag({'webHidden': None}),
                    ),
                ],
            ),
            DXB.p_tag(
                [
                    DXB.r_tag(
                        [DXB.t_tag('jjj')],
                        rpr=DXB.rpr_tag({'vertAlign': 'superscript'}),
                    ),
                ],
            ),
        ]
        body = b''
        for p_tag in p_tags:
            body += p_tag

        xml = DXB.xml(body)
        return xml
Esempio n. 57
0
    def get_xml(self):
        cell1 = DXB.table_cell(paragraph=DXB.p_tag('DDD'))
        cell2 = DXB.table_cell(paragraph=DXB.p_tag('FFF'))
        cell3 = DXB.table_cell(paragraph=DXB.p_tag('EEE'))
        cell4 = DXB.table_cell(paragraph=DXB.p_tag('GGG'))
        rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
        table = DXB.table(rows)
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=1),
            DXB.p_tag('BBB'),
            DXB.li(text='CCC', ilvl=0, numId=1),
            table,
            DXB.li(text='HHH', ilvl=0, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 58
0
    def get_xml(self):
        cell1 = DXB.table_cell(paragraph=DXB.p_tag('DDD'))
        cell2 = DXB.table_cell(paragraph=DXB.p_tag('FFF'))
        cell3 = DXB.table_cell(paragraph=DXB.p_tag('EEE'))
        cell4 = DXB.table_cell(paragraph=DXB.p_tag('GGG'))
        rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
        table = DXB.table(rows)
        tags = [
            DXB.li(text='AAA', ilvl=0, numId=1),
            DXB.p_tag('BBB'),
            DXB.li(text='CCC', ilvl=0, numId=1),
            table,
            DXB.li(text='HHH', ilvl=0, numId=1),
        ]
        body = b''
        for el in tags:
            body += el

        xml = DXB.xml(body)
        return xml
Esempio n. 59
0
 def get_xml(self):
     cell1 = DXB.table_cell(paragraph=DXB.p_tag('AAA'))
     cell2 = DXB.table_cell('<w:invalidTag>CCC</w:invalidTag>')
     cell3 = DXB.table_cell(paragraph=DXB.p_tag('BBB'))
     cell4 = DXB.table_cell(paragraph=DXB.p_tag('DDD'))
     rows = [DXB.table_row([cell1, cell3]), DXB.table_row([cell2, cell4])]
     table = DXB.table(rows)
     body = table
     xml = DXB.xml(body)
     return xml