python-docx中心表内容

标签 python python-docx

我刚开始使用 python-docx,我正在尝试将表格的内容居中。我有:

table = document.add_table(rows=1, cols=1)
tableHeader = table.rows[0].cells
tableHeader[0].text = 'test'
row_cells = table.add_row().cells
row_cells[0].text = 'example'
table.style = 'MediumGrid3'

它输出一个带有标题 test 和文本 example 的表格。

我认为 table.alignment = 1 会起作用,但它什么也没做。

那么如何将所有文本居中对齐呢?

最佳答案

下面是表格单元格垂直对齐的方法:

import traceback
from docx.oxml.shared import OxmlElement, qn

def set_cell_vertical_alignment(cell, align="center"): 
    try:   
        tc = cell._tc
        tcPr = tc.get_or_add_tcPr()
        tcValign = OxmlElement('w:vAlign')  
        tcValign.set(qn('w:val'), align)  
        tcPr.append(tcValign)
        return True 
    except:
        traceback.print_exc()             
        return False

关于python-docx中心表内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26946291/

相关文章:

python - 使用windows用python打开word文档

python - 使用 python-docx 指定表格中的边框外观

javascript - 使用python从网站获取音频源链接

python - 为什么 python requests.get() 的默认超时对于不同的机器不同

python - 如何将多个 PDF 页面拼接成一个大 Canvas 式 PDF?

python - 将 Microsoft Word 方程转换为 Latex

python - numpy.savetxt 的分隔符

Python - 仅当条件适用时的组合

Python Docx - 部分 - 页面方向

python - Django 和 python-docx