python-docx如何生成含有多级编号的标题

网上找了一遍,有三种答案:

1、多级编号的样式,python-docx还没有开发;

2、python-docx生成多级编号数字列表 - Dr.P+P - 博客园 (cnblogs.com)

3、python docx-如何编号标题? - Python社区 (python88.com)    这个答案的源头在stackoverflow

按照答案2和3尝试,都没有成功。后来,自己想了一种方法,成功。步骤如下:

1、先建立一个含有标题多级编号的docx文档作为默认文档,比如module_default.docx,module_default.docx的内容如下:

  1. Heading1
    1. Heading2
      1. Heading3

2、在代码中,从module_default.docx创建文档,
document = Document('default_module.docx')
这样,再使用以下命令创建标题时,就含有多级编号了。
T1 = document.add_heading('', level=1)
T2 = document.add_heading('', level=2)
T3 = document.add_heading('', level=3)

注意:使用document = Document('default_module.docx')生成的文档,在文档的起始会含有default_module.docx文档的内容,如何解决呢?
    document = Document('default_module.docx')
    document._body.clear_content()
    调用document._body.clear_content()后,模板中原有的内容就被清除了。

存在的问题:多级编号的颜色,一直呈现为浅蓝色,即时在module_default.docx中设置为黑色,仍然改不过来。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值