gpt4 book ai didi

python - 使用 python-docx 使表格中的单元格变粗

转载 作者:太空宇宙 更新时间:2023-11-03 15:01:18 26 4
gpt4 key购买 nike

下面的代码片段基本上是在一个新的 word 文档中创建一个包含所需行数和列数的表格,即 2 列和 14 行。然后将内容相应地添加到行和列。

from docx import Document
newDoc=Document()
newDoc.add_heading ('GIS Request Form')
newDoc.add_paragraph()

#inserting a table and the header and value objects to the table
table=newDoc.add_table(rows=14,cols=2)
table.style='Table Grid'
table.autofit=False
table.columns[0].width=2500000
table.columns[1].width=3500000

#inserting contents into table cells
for i in range(0,14):
row=table.rows[i]
row.cells[0].text=reqdheaderList[i]
row.cells[1].text=reqdvalueList[i]

我一直在尝试将第 1 列中的所有内容加粗,但它不起作用。

  #inserting contents into table cells
for i in range(0,14):
row=table.rows[i]
row.cells[0].text=reqdheaderList[i]
row.cells[0].paragraphs[0].add_run(line[0]).bold=True
row.cells[1].text=reqdvalueList[i]

帮忙吗?

最佳答案

扩展@Nikos Tavoularis 的回答;您还可以添加辅助功能。例如:

from docx import Document

def make_rows_bold(*rows):
for row in rows:
for cell in row.cells:
for paragraph in cell.paragraphs:
for run in paragraph.runs:
run.font.bold = True

doc = Document()

table = doc.add_table(rows=4, cols=2)
table.cell(0, 0).text = "Some text"
table.cell(1, 0).text = "Some bold text"
table.cell(1, 1).text = "Some more bold text"
table.cell(2, 0).text = "Some text"
table.cell(3, 1).text = "And more bold text"

make_rows_bold(table.rows[1], table.rows[3])

doc.save('test.docx')

编写更多函数,例如 make_rows_bold 可以使使用 docx 的方式更加愉快。

关于python - 使用 python-docx 使表格中的单元格变粗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37757203/

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