我正在编写 python 代码来使用 python-pptx 修改现有的 powerpoint 文档。通过在运行中设置文本,我通常可以在保留格式的同时设置文本:
shape.text_frame.paragraphs[0].runs[0].text = 'mytext'
但是,在我正在修改的表格中,单元格没有运行。他们有一个段落[0],它包含一个没有信息的字体对象(font.name,font.size,都是空白的)。我不知道表格字体信息存储在哪里,但它必须有一些,因为表格在 powerpoint 中工作。如果我在段落中添加运行并设置其文本,则文本的大小与我在 powerpoint UI 中手动执行此操作的大小不同。如何在表格单元格中设置文本,同时保留原始表格中的字体信息?
# this does not preserve table cell formatting...
table = shape.table
cell = table.rows[0].cells[0]
run = cell.text_frame.paragraphs[0].add_run()
run.text = 'mytext'