python 给word动态添加水印
最近项目需要,动态给word添加水印,网上找个一些方便 基本都是给pdf添加水印的。
只看到这篇有些帮助。https://blog.csdn.net/qq980469001/article/details/106008798
在此基础上新增了一些自己想要的功能。具体见代码:
# coding:utf8
# =============================================
# @Time : 2021-09-22
# @Author : lip
# @FileName: WaterMark.py
# @Software: Python IDE
# =============================================
import win32com
from win32com.client import Dispatch, constants
from reportlab.lib.units import cmdef getWordAddWatermark(content):wordApp = win32com.client.DispatchEx("Word.Application") # 打开word进程wordApp.Visible = TruewordApp.DisplayAlerts = False# doc = wordApp.Documents.Add() # 新建一个空白文件# doc.Paragraphs.Last.Range.Text = "hello!!!"# actDoc = wordApp.ActiveDocument#测试文件,可以在桌面自己创建一个doc=wordApp.Documents.Open("C:\\Users\\user\\Desktop\\2222.docx")actDoc = wordApp.ActiveDocumentSect = actDoc.Sections(1).Range.Select()wordApp.ActiveWindow.ActivePane.View.SeekView = 9# selectObj = wordApp.Selection#此处循环是平铺界面,如果不想要可以去掉,效果是一个水印占据中间位置。for i in range(3):for j in range(5):leftWidth = 10 * (i-1)*cm + 50topWidth = 10 * (j-2)*cmwordApp.Selection.HeaderFooter.Shapes.AddTextEffect(0, content, "等线", 1, False, False, 0, 0).Select()wordApp.Selection.ShapeRange.Name = 'WaterMark'# wordApp.Selection.ShapeRange.TextEffect.NormalizedHeight = FalsewordApp.Selection.ShapeRange.Line.Visible = False# wordApp.Selection.ShapeRange.Fill.Visible = True# wordApp.Selection.ShapeRange.Fill.Solid()wordApp.Selection.ShapeRange.Fill.ForeColor = 0wordApp.Selection.ShapeRange.Fill.Transparency = 0.5# 设置颜色wordApp.Selection.ShapeRange.Fill.ForeColor.RGB = 12632256wordApp.Selection.ShapeRange.Fill.ForeColor.TintAndShade = 0wordApp.Selection.ShapeRange.Rotation = 325wordApp.Selection.ShapeRange.LockAspectRatio = TruewordApp.Selection.ShapeRange.Height = 186wordApp.Selection.ShapeRange.Width = 186# wordApp.Selection.ShapeRange.WrapFormat.AllowOverlap = True# wordApp.Selection.ShapeRange.WrapFormat.Side = wdWrapNonewordApp.Selection.ShapeRange.WrapFormat.Type = 3wordApp.Selection.ShapeRange.WrapFormat.Side = 3# wordApp.Selection.ShapeRange.RelativeVerticalPosition = 0wordApp.Selection.ShapeRange.Left = leftWidthwordApp.Selection.ShapeRange.Top = topWidth# wordApp.Selection.ShapeRange.Left = -999995# wordApp.Selection.ShapeRange.Top = -999995# 关闭页眉页脚wordApp.ActiveWindow.ActivePane.View.SeekView = 0actDoc.Save()# actDoc.Close()# wordApp.Close()if __name__ == '__main__':getWordAddWatermark("WaterMark")
python 给word动态添加水印相关推荐
- Python检查Word文件中包含特定关键字的所有页码
推荐教材:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: 配套资源: 用书教师可以联系董老师获取教学大纲.课件.源码.教案. ...
- Python实战案例,requests模块,Python实现获取动态图表
前言 利用Python实现获取动态图表,废话不多说~ 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: re模块: requests模块: urllib模块: pandas模 ...
- python怎么分析各个时间段的数据_Python数据分析:Python对Word数据的读写
<大数据和人工智能交流>头条号向广大初学者新增C .Java .Python .Scala.javascript 等目前流行的计算机.大数据编程语言,希望大家以后关注本头条号更多的内容. ...
- Python提取Word文档中所有超链接地址和文本
使用Python扩展库python-docx操作Word文档的相关文章,可以阅读: Python批量导入图片到Word文件 Python查找Word文件中红色和加粗的文字(附元宵节送书活动中奖名单) ...
- python写word表格_使用表格—— 使用Python读写Office文档之三
本文介绍使用Python在Word中创建一个表格,以及读取表格中的数据. =============================================================== ...
- python操作word、ppt、pdf
1.python操作word 相关概念:目前使用的Word文件后缀名一般为.docx 可以实现的功能:官方文档 需要导入的库: lxml是一个Python库,使用它可以轻松处理XML和HTML文件,还 ...
- 【python操作word和pdf】
python操作word和pdf 一.python操作word 1.python新建word文档及常规操作 2.python对word的字体设置 3.python向word插入图片和表格 4.pyth ...
- 用Python爬取动态加载的诸如百度的图片
用Python爬取动态加载的诸如百度的图片 使用原因 代码如下 模块介绍 selenium模块 lxml解析模块 requests模块 去除重复 开启多线程 效果如下 留言 使用原因 学习Python ...
- Python办公自动化实战 05 | Python-docx库:Python与Word的完美结合_ 利用代码实现Word中插入图片
一.专题内容简介 本专题主要介绍Python针对Word办公自动化如何利用Python代码动态向Word中插入图片.并且对格式做简单设定. 二.专题案例效果 最终运行效果如下: 三.专题代码实现 3 ...
最新文章
- (已解决)linux如何删除-开头的文件或者目录
- 你不知道的JavaScript·第一部分
- 二十三、oracle pl/sql分类三 包
- html如何与php,html页面怎么跟php文件连接
- docker jenkins
- 华为数据通信产品VRP操作系统的使用
- 信息学奥赛C++语言:斐波那契第n项
- [BAT] 执行xcopy命令后出现Invalid num of parameters错误的解决办法
- 【服务器】【个人图床】宝塔安装Chevereto
- 天空U盘装机助理 v1.51正式版(UD版_U盘启动制作工具)
- 计算机编码器的工作原理,优先级编码器74LS148的电路结构、工作原理及使用方法...
- bootstrap-datepicker属性和方法
- SAT词汇备考之(Barrons)巴朗3500基础词汇(List 49)
- 如何破解百度文库的防复制功能
- node-opcua的使用 --- [1] 简单server
- HDU_1709 The Balence (生成函数)
- hdoj 2199 Can you solve this equation? 【二分枚举】
- 用EXCEL统计分段数据的个数
- 网络基础 - 探秘无线速度(一)
- 美食小吃加盟网站源码 餐饮奶茶招商加盟类网站pbootcms模板 带安装视频教程【已测试】