鱼C论坛

 找回密码
 立即注册
查看: 2056|回复: 2

python 添加文档页码

[复制链接]
发表于 2023-5-17 09:26:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
友友好,
      我现在碰到个问题,就是我有一份百多页的纸质文件,需要添加页码。
我通过空word添加页码打印,但是这个打印机是先打印反面,再打印正面,
导致页码先2,后1,先4,后3。
    现在我想通过python给文档添加页码,网上找到相关代码,试了下只能添加第一页的页码,
我想通过循环进行添加页码,但提示报错。请教友友指导。万分感谢!!
测试代码如下:

# 页脚
def ye_jiao():

    # for i in range(8):
    footer = document.sections[1].footer  # 获取第一个节的页脚
    paragraph = footer.paragraphs[1]  # 获取页脚的第一个段落
    paragraph.add_run(f'2')  # 添加页脚内容

测试了下,只能是0才能运行,
换作是1以后就会报错IndexError: list index out of range
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-17 09:27:20 | 显示全部楼层
你好,可以尝试以下代码来实现给文档添加页码:
from docx import Documentfrom docx.enum.text import WD_ALIGN_PARAGRAPHfrom docx.shared import Pt# 打开文档doc = Document('your_document.docx')# 获取页脚footer = doc.sections[0].footer# 循环添加页码for i in range(len(doc.sections)):    # 获取页脚段落    paragraph = footer.paragraphs[0]    # 添加页码    run = paragraph.add_run()    run.add_text(str(i+1))    # 设置页码格式    run.font.size = Pt(10)    run.font.name = 'Times New Roman'    run.alignment = WD_ALIGN_PARAGRAPH.CENTER# 保存文档doc.save('your_document_with_page_numbers.docx')
其中, your_document.docx 是需要添加页码的文档名, your_document_with_page_numbers.docx 是添加了页码后的文档名。如果你的文档有多个节,则需要在循环中添加相应的页码。另外,需要注意的是,添加页码时需要设置页码的格式,包括字体大小、字体名称和对齐方式等。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-5-17 10:56:05 | 显示全部楼层
isdkz 发表于 2023-5-17 09:27
你好,可以尝试以下代码来实现给文档添加页码:

这个页码会同步,出现第个页的页码都是一样的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-23 05:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表