如何使用 python-docx 在 word 中添加分节符
How to add a Sectional Break in word using python-docx
我一直在尝试使用 python-docx 在我的 word 文档中添加分节符。我基本上想在每个具有 style = "heading 1" 的段落之前添加一个分节符。我写了下面的代码。代码如下:
1)获取总段落数
2)找到style = "heading 1"的段落索引
3) 添加 运行 样式 = "heading 1"
段落之前的段落
4)在 运行
中添加分节符
z=len(doc.paragraphs)
for i in range(0,z):
if doc.paragraphs[i].style.name == "Heading 1":
run_new=doc.paragraphs[i-1].add_run()
run_new.add_break(docx.enum.text.WD_BREAK.SECTION_NEXT_PAGE)
但是它给了我这个错误。
Traceback (most recent call last):
File "D:/Pycharm Projects/pydocx/trial4.py", line 8, in <module>
run_new.add_break(docx.enum.text.WD_BREAK.SECTION_NEXT_PAGE)
File "D:\Pycharm Projects\pydocx\env\lib\site-packages\docx\text\run.py", line 42, in add_break
}[break_type]
KeyError: 2
我应该如何添加分节符?
python-docx
目前 API 不支持在任意位置 插入 分节符。您只能在文档末尾添加 一个新部分,通常是在从上到下生成新文档的过程中。
>>> new_section = document.add_section(WD_SECTION.ODD_PAGE)
>>> new_section.start_type
ODD_PAGE (4)
这里有更多关于在文档页面上添加部分的内容:
https://python-docx.readthedocs.io/en/latest/user/sections.html
我一直在尝试使用 python-docx 在我的 word 文档中添加分节符。我基本上想在每个具有 style = "heading 1" 的段落之前添加一个分节符。我写了下面的代码。代码如下:
1)获取总段落数
2)找到style = "heading 1"的段落索引
3) 添加 运行 样式 = "heading 1"
段落之前的段落4)在 运行
中添加分节符z=len(doc.paragraphs)
for i in range(0,z):
if doc.paragraphs[i].style.name == "Heading 1":
run_new=doc.paragraphs[i-1].add_run()
run_new.add_break(docx.enum.text.WD_BREAK.SECTION_NEXT_PAGE)
但是它给了我这个错误。
Traceback (most recent call last):
File "D:/Pycharm Projects/pydocx/trial4.py", line 8, in <module>
run_new.add_break(docx.enum.text.WD_BREAK.SECTION_NEXT_PAGE)
File "D:\Pycharm Projects\pydocx\env\lib\site-packages\docx\text\run.py", line 42, in add_break
}[break_type]
KeyError: 2
我应该如何添加分节符?
python-docx
目前 API 不支持在任意位置 插入 分节符。您只能在文档末尾添加 一个新部分,通常是在从上到下生成新文档的过程中。
>>> new_section = document.add_section(WD_SECTION.ODD_PAGE)
>>> new_section.start_type
ODD_PAGE (4)
这里有更多关于在文档页面上添加部分的内容:
https://python-docx.readthedocs.io/en/latest/user/sections.html