如何阻止python-docx在单元格文本之前插入回车符

时间:2018-11-12 16:28:17

标签: python-3.x ms-word python-docx

我想要一个单元格内的段落,但是我得到了一个错误的回车符,它将文本向下推一行:

enter image description here

我的代码:

from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.shared import Cm


document = Document()
document.add_heading("The Heading", 1).alignment = WD_ALIGN_PARAGRAPH.CENTER

table = document.add_table(rows=0, cols=2)
table.style = 'Table Grid'
for i in range(3):
    row_cells = table.add_row().cells
    row_cells[0].text = 'row {}, col 1'.format(i)
    row_cells[0].width = Cm(3)
    row_cells[1].width = Cm(8)
    p = row_cells[1].add_paragraph()
    p.add_run('This is an example of')
    p.add_run(' some text').bold = True
    p.add_run(' in a table cell.')

document.save('test.docx')

如何在没有杂散CR的情况下使单元格文本在单元格顶部对齐?以及如何将像元宽度设置为3 cm和8 cm:不遵守设置_Cell.width

2 个答案:

答案 0 :(得分:2)

我解决了这个问题:每个单元格都有一个免费的段落,所以我只需要在此段落中添加文字即可。

p = row_cells[1].paragraphs[0]
p.add_run('This is an example of')
p.add_run(' some text').bold = True
p.add_run(' in a table cell.')

要设置宽度,我必须直接操作列,而不是逐个单元地设置它们(尽管this answer):

table.columns[0].width = Cm(3)
table.columns[1].width = Cm(8)

答案 1 :(得分:0)

clear_content 的储罐使我的图像不被放置在换行下方,而储罐则被用作胶粘剂,这是经过数小时的问题解决之后我需要提供的最后一个建议:

:read !echo hello | fzf | sed 's/h/j/g'