用Python实现给Word文档盖章

目录
  • 模块分解
  • 设置加粗
  • 功能块练习
  • 知识归纳与总结
  • 总结

目标文件夹内有多份 Word 文件 ——【xxx涨薪通告.docx】,我们需要在这些文档的末尾处添加公司的电子章与公司名称。

这次的任务困难吗?手动操作起来其实很简单,无非就是先打开一个文档,接着在结尾处添加文字盖章:并且插入电子章图片,然后另起一行,添加公司名称闪光科技金融公司(Shining Fintech Company),将公司名称的字号设置为四号,字体加粗,右对齐;完成这些操作后,复制这些文字和图片,最后保存文档。

实现代码:

import os
from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.shared import Pt

# 设置目标文件夹路径
path = "../工作/涨薪通告-练习/"

# 获取目标文件夹下的所有文件名
file_list = os.listdir(path)

for file in file_list:
    # 拼接文件路径
    file_path = path + file

    # 打开 Word 文件
    doc = Document(file_path)

    # 添加 Paragraph 对象 para_1
    para_1 = doc.add_paragraph('盖章: ')
    # 添加 Run 对象 run_stamp
    run_stamp = para_1.add_run()
    run_stamp.add_picture("./Shining.png")

    # 添加 Paragraph 对象 para_2
    para_2 = doc.add_paragraph()
    # 设置对齐方式
    para_2.paragraph_format.alignment = WD_ALIGN_PARAGRAPH.RIGHT
    # 添加 Run 对象 run_comp
    run_comp = para_2.add_run('闪光科技金融公司(Shining Fintech Company)')
    # 设置字体
    run_comp.font.size = Pt(14) # 字体大小
    run_comp.font.bold = True # 字体加粗

    # 保存文件
    doc.save(file_path)

本次代码的详细流程图如下所示:

值得一提的是,流程图中添加文字的逻辑对应了简化版的代码。

你也可以使用常规版的流程(添加 Paragraph 对象 -> 添加 Run 对象 -> 添加文字)来添加文字。

本次项目需要使用到的新语法如下图所示:

模块分解

接着就可以打开下一个文档,在文档的最后粘贴刚才的文字和图片,然后保存并关闭文档。一直重复此操作,直到处理完所有的文档。

然后再让属性 font 调用 size,根据上面的表格,将导入的 Pt 设置好后赋值给 size 就可以设置字体的大小了。

具体写法如下所示:

from docx.shared import Pt

# 设置字体大小
Run 对象.font.size = Pt(14) # 字体大小

设置加粗

设置字体加粗的方式特别简单,一行代码就可以解决。

我们可以通过属性 font 调用 bold,然后将值设置为 True 即可。

具体写法如下所示:

# 设置字体加粗
Run 对象.font.bold = True # 字体加粗

font 属性还有很多其他功能,常用的还有给字体加下划线、删除线、斜体、颜色、指定字体等,只是他们与本项目无关,这里就用图片简单介绍一下,感兴趣的自己去操作。

功能块练习

这个功能块都是些记忆性的知识,写代码的时候记得参考上面的那些示例代码,照猫画虎就可以实现添加带样式的文字这个功能块了。

from docx import Document
# 导入控制对齐方式所需
from docx.enum.text import WD_ALIGN_PARAGRAPH
# 导入控制字体大小所需
from docx.shared import Pt

# 设置文件路径
file_path = './马邦德涨薪通告.docx'

# 打开文档
doc = Document(file_path)
# 添加段落2
para = doc.add_paragraph()
# 设置对齐方式
para.paragraph_format.alignment=WD_ALIGN_PARAGRAPH.RIGHT
# 添加 run_comp
run_comp = para.add_run("闪光金融公司(Shining Finance Company)")
# 设置字体大小为 14pt
run_comp.font.size=Pt(14)
# 设置字体加粗
run_comp.font.bold=True
# 保存文件
doc.save('./添加带样式的文字.docx')

运行效果:

一定要记住,设置字体要在 Run 对象中进行,不要越俎代庖。Paragraph 对象的属性管段落在文档中的位置,Run 对象的属性负责文字在段落中的样式。分工明确,各司其职。

知识归纳与总结

本节是对使用 python-docx 处理 Word 文件的知识讲解。

首先是 python-docx 会将 Word 文件分为三个层级:Document 对象、Paragraph 对象和 Run 对象。

然后是添加文字的两种方法:

添加图片可以使用Run 对象.add_picture(path)。

另外需要铭记的是:

设置段落的排版与布局,需要使用 Paragraph 对象的属性:paragraph_format。
设置文字的字体样式,需要使用 Run 对象的属性:font。

最后来看看本节的知识点思维导图。

总结

到此这篇关于用Python实现给Word文档盖章的文章就介绍到这了,更多相关Python Word文档盖章内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 用python将word文档合并实例代码

    目录 背景: 设计思路: 脚本环境说明: 完整代码: 功能执行效果图: 总结: 背景:         由于工作需要,现在有这么一个需求,要合并大量的word文档,而且要在不同的目录下找到同一个人的word文档,进行合并,最终输出一个合并后的word文档.一般来说几个或者十几个量不多的话,就手工合并一下好了,但现在这个量是真的大.目录有十多个,每个目录又有50多个不同人的word文档,而且同一个人在不同目录下又不一定都有word文档,因此,整个合并工作就出现了人工操作的困难: 工作量多:容易疏漏

  • 利用Python实现读取Word表格计算汇总并写入Excel

    目录 前言 一.首先导入包 二.读评价表所在的目录文件 三.读word文件,处理word中的表格数据 四.统计计算 五.将统计计算结果写入汇总Excel 完整代码 总结 前言 快过年了,又到了公司年底评级的时候了.今年的评级和往常一下,每个人都要填写公司的民主评议表,给各个同事进行评价打分,然后部门收集起来根据收集上来的评价表进行汇总统计.想想要收集几十号人的评价表,并根据每个人的评价表又要填到Excel中进行汇总计算统计给出每个人的评价,就头大.虽然不是个什么难事,但是是个无脑的细致活.几十个

  • Python操作word文档的示例详解

    目录 写在前面 创建一个文档 先实现第一步,写入一个标题 添加文字段落 列表的添加 图片的添加 表格添加 相关样式设置 页眉和页脚 写在前面 python-docx 不支持 doc 文档,一定要注意该点,如果使用 doc 文档,需要提前将其用 Word 相关软件转换为 docx 格式. doc 和 docx 是存在本质差异的,一个是二进制,另一个 XML 格式的文件. 模块的安装 pip install python-docx . 以下网址首先准备好 官方手册:https://python-do

  • Python实现Word的读写改操作

    目录 用 docx 模块读取 Word Word 调整样式 Word 写入操作 用 docx 模块读取 Word docx 安装 cmd 中输入pip install python-docx 即可安装 docx 模块 docx 常用函数 创建空白文档 from docx import Document document = Document() document.save("word.docx") # 生成空白 word print(document) 读取文档 from docx i

  • 用Python实现给Word文档盖章

    目录 模块分解 设置加粗 功能块练习 知识归纳与总结 总结 目标文件夹内有多份 Word 文件 ——[xxx涨薪通告.docx],我们需要在这些文档的末尾处添加公司的电子章与公司名称. 这次的任务困难吗?手动操作起来其实很简单,无非就是先打开一个文档,接着在结尾处添加文字盖章:并且插入电子章图片,然后另起一行,添加公司名称闪光科技金融公司(Shining Fintech Company),将公司名称的字号设置为四号,字体加粗,右对齐:完成这些操作后,复制这些文字和图片,最后保存文档. 实现代码:

  • 使用python批量读取word文档并整理关键信息到excel表格的实例

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下所示) 方便后面建立电子数据库 从而使得其他人可以迅速地搜索到相关记录 据说"人生苦短,我用python" 所以决定用python从docx文档中提取文件头的信息 然后把信息更新到一个xls电子表格中,像下面这样(直接po结果好了) 而且点击文件路径可以直接打开对应的文件(含超链接) 代码

  • 使用Python 自动生成 Word 文档的教程

    当然要用第三方库啦 :) 使用以下命令安装: pip install python-docx 使用该库的基本步骤为: 1.建立一个文档对象(可自动使用默认模板建立,也可以使用已有文件). 2.设置文档的格式(默认字体.页面边距等). 3.在文档对象中加入段落文本.表格.图像等,并指定其样式. 4.保存文档. 注:本库仅支持生成Word2007以后版本的文档类型,即扩展名为.docx 的. 下面分步介绍其基本使用方法: 步骤一: from docx import Document doc = Do

  • Python实现对word文档添加密码去除密码的示例代码

    代码实现如下: import win32com.client,os,time def word_encryption(path, password): # 若加密保存.docx时,覆盖原文件,则无法成功添加密码.但是保存为另一个文件名,则可以添加密码. # 因此将A存为B,删A,再将B改为A. dirname, tempname = os.path.split(path) path_temp = os.path.join(dirname, tempname) while os.path.exis

  • Python批量对word文档进行操作步骤

    目录 导读 应用 细节介绍 导读 前面几章我们以经介绍了怎么批量对excel和ppt操作今天我们说说对word文档的批量操作 应用 python-docx允许您创建新文档以及对现有文档进行更改.实际上,它只允许您对现有文档进行更改:只是如果您从一个没有任何内容的文档开始,一开始可能会觉得您是从头开始创建一个文档. 这个特性是一个强大的特性.文档的外观很大程度上取决于删除所有内容时留下的部分.样式.页眉和页脚等内容与主要内容分开包含,允许您在起始文档中进行大量自定义,然后出现在您生成的文档中. 让

  • 运用Python巧妙处理Word文档的方法详解

    目录 工具 生成Word案例 读取操作word文档 总结 工具 python3.7 Pycharm Excel python-docx 生成Word案例 创建一个demo.doc文档,代码如下: from docx import Document from docx.shared import Cm,Pt from docx.document import Document as Doc #构建doc对象 document = Document() #操作文档标题 document.add_he

  • Python快速优雅的批量修改Word文档样式

    需求描述 手上现有若干份财务分析报告的Word文档,如下: 每一份Word文档中的内容如下: 为了方便后续审阅,需要将所有文档中所有含有资金的语句标红加粗,如图所示 步骤分析和前置知识 为了解决这个需求简单复习一下相关知识.Word文档一般而言由文档(document) - 段落(paragraph) - 文字块(run) 三级结构组成: 从需求反馈中可以看出,本质上我们需要做的就是对所有含有资金的文字块Run进行样式调整 因此,本需求的逻辑如下: 1.创建一个空文件夹(用于存放修改后的财务报告

  • python3处理word文档实例分析

    直接使用word文档已经难不倒大家了,有没有想过用python构建一个word文档写点文章呢?当然这个文章的框架需要我们用代码一点点的建立,在过程上有一点繁琐,一下子看不懂的小伙伴可以把它拆分成几个部分来看.下面就在python3处理word文档的代码给大家带来讲解,还会有一些设置文章格式的技巧. 一个Word文档,主要由下面这些内容元素构成,每个元素都有对应的方法处理: 标题:add_heading() 段落:add_paragraph() 文本:add_run(),其返回对象支持设置文本属性

  • python读取word文档的方法

    本文实例讲述了python读取word文档的方法.分享给大家供大家参考.具体如下: 首先下载安装win32com from win32com import client as wc word = wc.Dispatch('Word.Application') doc = word.Documents.Open('c:/test') doc.SaveAs('c:/test.text', 2) doc.Close() word.Quit() 这种方式产生的text文档,不能用python用普通的r方

  • python解析html提取数据,并生成word文档实例解析

    简介 今天试着用ptyhon做了一个抓取网页内容,并生成word文档的功能,功能很简单,做一下记录以备以后用到. 生成word用到了第三方组件python-docx,所以先进行第三方组件的安装.由于windows下安装的python默认不带setuptools这个模块,所以要先安装setuptools这个模块. 安装 1.在python官网上找到 https://bootstrap.pypa.io/ez_setup.py ,把代码保存到本地并执行: python ez_setup.py 2.下载

随机推荐