gpt4 book ai didi

docx - Python-docx - 添加值后将现有表格中的单元格内容居中

转载 作者:行者123 更新时间:2023-12-01 13:19:29 29 4
gpt4 key购买 nike

我有一个带有空表的 .docx 模板,我要在其中添加值:

def manipulate_table():

table = doc.tables[0]

table.cell(0, 0).text = 'A'
table.cell(0, 1).text = 'B'
table.cell(0, 2).text = 'C'
table.cell(0, 3).text = 'D'

添加这些值后,表格属性“居中”消失了,这是标准行为。

如何遍历表格并再次将所有值居中?我已经用谷歌搜索过,但没有找到任何帮助。例如:不起作用:

for cell in ....????:
tc = cell._tc
tcPr = tc.get_or_add_tcPr()
tcVAlign = OxmlElement('w:vAlign')
tcVAlign.set(qn('w:val'), "center")
tcPr.append(tcVAlign)

非常感谢您的帮助。

最佳答案

单元格的 .text 属性完全替换了单元格中的文本,包括之前的段落。

“居中”属性在每个段落上,而不是在单元格上。所以你需要做类似的事情:

from docx.enum.text import WD_ALIGN_PARAGRAPH
cell.paragraphs[0].alignment = WD_ALIGN_PARAGRAPH.CENTER

每个"new"段落(分配给 .text 将在每个单元格中留下一个)。

关于docx - Python-docx - 添加值后将现有表格中的单元格内容居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51026082/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com