新行/制表符在生成的文档中变为空格

时间:2014-04-13 21:07:47

标签: python python-docx

我对\n\t标记有疑问。当我在 OpenOffice 中打开生成的.docx时,一切看起来都不错,但是当我在 Microsoft Word 中打开相同的文档时,我只能获得最后两个制表符"Surname"和空格而不是其他部分中的换行符/制表符。有什么问题?

p = document.add_paragraph('Simple paragraph')
p.add_run('Name:\t\t' + name).bold = True
p.add_run('\n\nSurname:\t\t' + surname)

1 个答案:

答案 0 :(得分:3)

在Word中,我们通常认为换行符会转换为段落对象。如果您想在文档中使用空段落,则需要明确插入它们。

首先,您应该询问是否使用段落进行格式化,这是Word用户常见的随意练习,但您可能希望以不同方式处理,特别是使用空格 - 和/或空格 - 在段落的属性之后。在HTML中,这大致对应于padding-top和padding-bottom。

在这种情况下,如果您只想要换行,请考虑使用如下段落:

document.add_paragraph('Simple paragraph')
p = document.add_paragraph()
p.add_run('Name:\t\t').bold = True
p.add_run(name)
document.add_paragraph()
p = document.add_paragraph()
p.add_run('Surname:\t\t').bold = True
p.add_run(surname)