Разделенный стол
Таблица, представленная в объектной модели документа Aspose.Words, состоит из независимых строк и ячеек, что упрощает разделение таблицы.
Чтобы разделить таблицу на две части, нам просто нужно переместить некоторые строки из исходной таблицы в новую. Для этого нам нужно выбрать строку, на которую мы хотим разделить таблицу.
Мы можем создать две таблицы из исходной таблицы, выполнив следующие простые действия:
- Создайте клон таблицы без клонирования дочерних элементов, чтобы сохранить перемещенные строки и вставить их после исходной таблицы
- Начиная с указанной строки, переместите все последующие строки во вторую таблицу
В следующем примере кода показано, как разделить таблицу на две таблицы в определенной строке:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git. | |
doc = aw.Document(MY_DIR + "Tables.docx") | |
first_table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table() | |
# We will split the table at the third row (inclusive). | |
row = first_table.rows[2] | |
# Create a new container for the split table. | |
table = first_table.clone(False).as_table() | |
# Insert the container after the original. | |
first_table.parent_node.insert_after(table, first_table) | |
# Add a buffer paragraph to ensure the tables stay apart. | |
first_table.parent_node.insert_after(aw.Paragraph(doc), first_table) | |
while True: | |
current_row = first_table.last_row | |
table.prepend_child(current_row) | |
if current_row == row: | |
break | |
doc.save(ARTIFACTS_DIR + "WorkingWithTables.split_table.docx") |