Таблиці зазвичай використовуються в документах Word для організації інформації у вигляді сітки. Вони дозволяють узагальнювати інформацію у вигляді рядків і стовпців. У цій статті ви дізнаєтесь, як програмно створити таблицю в документах Word за допомогою Python. Крім того, у статті буде описано, як створити вкладені таблиці або клонувати існуючу таблицю в документах Word.
- Бібліотека Python для створення таблиць у документах Word
- Створення таблиці в документі Word
- Створення вкладеної таблиці в документі Word
- Клонуйте існуючу таблицю в документі Word
Бібліотека Python для створення таблиць у документах Word
Для роботи з таблицями в документах Word ми будемо використовувати Aspose.Words for Python. Бібліотека призначена для динамічного створення документів Word і керування ними з програм Python. Ви можете встановити бібліотеку з PyPI за допомогою такої команди pip.
pip install aspose-words
Створення таблиці в документі Word на Python
Нижче наведено кроки для створення таблиці в документі Word DOCX за допомогою Python.
- Створіть об’єкт класу Document.
- Створити об’єкт класу DocumentBuilder.
- Запустіть таблицю за допомогою методу DocumentBuilder.starttable() і отримайте посилання на таблицю в об’єкті.
- Вставте клітинку за допомогою методу DocumentBuilder.insertcell().
- Встановіть форматування комірки за допомогою властивості DocumentBuilder.cellformat.
- Встановіть автоматичне припасування за допомогою методу autofit(aw.tables.AutoFitBehavior.FIXEDCOLUMNWIDTHS).
- Встановити вирівнювання комірки.
- Вставте текст у клітинку за допомогою методу DocumentBuilder.write().
- Повторіть вставлення клітинок і тексту в клітинки за потреби.
- Завершіть рядок, коли завершите вставлення клітинок.
- Завершіть таблицю, коли ви вставите всі рядки.
- Збережіть документ Word за допомогою методу Document.save().
У наведеному нижче прикладі коду показано, як створити таблицю в документах DOCX за допомогою Python.
import aspose.words as aw
# Створіть новий документ Word.
doc = aw.Document()
# Створення конструктора документів.
builder = aw.DocumentBuilder(doc)
# Почніть стіл.
table = builder.start_table()
# Вставити клітинку.
builder.insert_cell()
# Широке форматування таблиці має застосовуватися після того, як у таблиці присутній принаймні один рядок.
table.left_indent = 20.0
# Установіть висоту та визначте правило висоти для рядка заголовка.
builder.row_format.height = 40.0
builder.row_format.height_rule = aw.HeightRule.AT_LEAST
# Встановіть параметри вирівнювання та шрифту.
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER
builder.font.size = 16
builder.font.name = "Arial"
builder.font.bold = True
builder.cell_format.width = 100.0
builder.write("Header Row,\n Cell 1")
# Нам не потрібно вказувати ширину цієї комірки, оскільки вона успадкована від попередньої комірки.
builder.insert_cell()
builder.write("Header Row,\n Cell 2")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Header Row,\n Cell 3")
builder.end_row()
builder.cell_format.width = 100.0
builder.cell_format.vertical_alignment = aw.tables.CellVerticalAlignment.CENTER
# Скиньте висоту та визначте інше правило висоти для тіла таблиці.
builder.row_format.height = 30.0
builder.row_format.height_rule = aw.HeightRule.AUTO
builder.insert_cell()
# Скинути форматування шрифту.
builder.font.size = 12
builder.font.bold = False
builder.write("Row 1, Cell 1 Content")
builder.insert_cell()
builder.write("Row 1, Cell 2 Content")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 1, Cell 3 Content")
builder.end_row()
builder.insert_cell()
builder.cell_format.width = 100.0
builder.write("Row 2, Cell 1 Content")
builder.insert_cell()
builder.write("Row 2, Cell 2 Content")
builder.insert_cell()
builder.cell_format.width = 200.0
builder.write("Row 2, Cell 3 Content.")
builder.end_row()
# Кінець таблиці.
builder.end_table()
# Збережіть документ.
doc.save("table_formatted.docx")
Нижче наведено знімок екрана таблиці, яку ми створили за допомогою прикладу коду вище.
Створіть вкладену таблицю в документі Word на Python
Aspose.Words for Python також дозволяє легко створювати вкладену таблицю. Іншими словами, ви можете створити нову таблицю в клітинці таблиці. Нижче наведено кроки для створення вкладеної таблиці у файлі Word DOCX.
- Створіть об’єкт класу Document.
- Створити об’єкт класу DocumentBuilder.
- Запустіть таблицю за допомогою методу DocumentBuilder.starttable() і отримайте посилання на таблицю в об’єкті.
- Вставте комірку за допомогою методу DocumentBuilder.insertcell() і отримайте посилання на комірку в об’єкті.
- Вставте текст у клітинку за допомогою методу DocumentBuilder.write().
- Повторіть вставлення клітинок і тексту в клітинки за потреби.
- Завершіть таблицю, коли ви вставите всі рядки.
- Перемістіть елемент керування всередину потрібної клітинки за допомогою методу DocumentBuilder.moveto(Cell.firstparagraph).
- Створіть ще одну таблицю, вставивши клітинки, і завершіть таблицю, коли закінчите.
- Збережіть документ Word за допомогою методу Document.save().
У наведеному нижче прикладі коду показано, як створити вкладену таблицю в документі DOCX за допомогою Python.
import aspose.words as aw
# Створіть новий документ Word.
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
# Вставити клітинку.
cell = builder.insert_cell()
builder.writeln("Outer Table Cell 1")
builder.insert_cell()
builder.writeln("Outer Table Cell 2")
# Цей виклик важливий для створення вкладеної таблиці в першій таблиці.
# Без цього виклику клітинки, вставлені нижче, будуть додані до зовнішньої таблиці.
builder.end_table()
# Перехід до першої комірки зовнішньої таблиці.
builder.move_to(cell.first_paragraph)
# Побудуйте внутрішній стіл.
builder.insert_cell()
builder.writeln("Inner Table Cell 1")
builder.insert_cell()
builder.writeln("Inner Table Cell 2")
builder.end_table()
# Збережіть документ.
doc.save("table_nested.docx")
Нижче наведено результат прикладу коду вище.
Клонуйте існуючу таблицю в документі Word на Python
Ви також можете клонувати існуючу таблицю в документі Word. Нижче наведено кроки для виконання цієї операції.
- Завантажте документ за допомогою класу документа.
- Отримати посилання на таблицю в об’єкті за допомогою методу Document.getchild(NodeType.TABLE, int, boolean).astable().
- Викликати метод clone(True).astable() за допомогою об’єкта таблиці та отримати посилання на клоновану таблицю в іншому об’єкті.
- Вставте клоновану таблицю за допомогою методу Table.parentnode.insertafter().
- Вставте порожній абзац між таблицями за допомогою методу Table.parentnode.insertafter(Paragraph(Document), Table).
- Збережіть документ Word за допомогою методу Document.save().
У наведеному нижче прикладі коду показано, як клонувати таблицю в документі Word DOCX за допомогою Python.
import aspose.words as aw
# Завантажте документ Word.
doc = aw.Document("table_formatted.docx")
# Отримайте посилання на потрібну таблицю.
table = doc.get_child(aw.NodeType.TABLE, 0, True).as_table()
# Клонуйте таблицю та вставте її в документ після вихідної таблиці.
tableClone = table.clone(True).as_table()
table.parent_node.insert_after(tableClone, table)
# Вставте порожній абзац між двома таблицями,
# інакше вони будуть об'єднані в один під час збереження.
table.parent_node.insert_after(aw.Paragraph(doc), table)
# Збережіть документ.
doc.save("table_clone.docx")
На наступному знімку екрана показано клоновану таблицю в документі Word.
Отримайте безкоштовну ліцензію API
Ви можете отримати тимчасову ліцензію на використання Aspose.Words for Python без оціночних обмежень.
Висновок
У цій статті ви дізналися, як створювати таблиці в документах Word за допомогою Python. Крім того, ви бачили, як динамічно створювати вкладені таблиці або клонувати існуючі таблиці в документах Word. Крім того, ви можете відвідати документацію Aspose.Words for Python, щоб дослідити інші функції. У разі будь-яких запитань, не соромтеся повідомити нас через наш форум.
Дивись також
- Створюйте документи MS Word за допомогою Python
- Перетворіть документ Word на HTML за допомогою Python
- Перетворюйте документи Word у PNG, JPEG або BMP у Python
- Документи Word у Markdown за допомогою Python
- Порівняйте два документи Word у Python
Інформація: якщо вам колись знадобиться отримати документ Word із презентації PowerPoint, ви можете скористатися конвертером Aspose Презентація в документ Word.