1、简介
水印通常用于保护文档或指定其所有权。另一方面,它们用于显示文档的状态,例如手稿、草稿等。在本文中,我们将演示如何在 PowerPoint 演示文稿中插入水印。您将学习如何在 Python 中为 PowerPoint PPT 幻灯片添加文本或图像水印。
2、ppt添加水印
2.1 PowerPoint幻灯片母版
在 PowerPoint 中,可以在幻灯片中放置文本背景以获取该水印效果。 步骤简述如下:
- 若要向所有幻灯片添加水印,选择“视图”>“幻灯片母版”。 滚动到左侧缩略图窗格的顶部,选择第一项“幻灯片母版”。
- 选择“插入”>“文本框”,然后在幻灯片母版上单击并拖动鼠标,画出文本框。
- 在文本框中键入水印文字(如“草稿”)。
- 若要更改水印文本的对齐方式,请在文本框顶部单击并按住旋转图柄,然后向左或向右移动鼠标。
- 选中文本框中的文本。 选择浅色字体填充颜色,然后对字体和样式进行任何其他更改。 (如果看不到“ 格式 ”选项卡,请确保已选择文本框。)
- 退出“幻灯片母版”。 除标题页外的所有幻灯片都会具有该文本。
详细步骤如下:
-
1、打开ppt,在菜单栏找到“视图”——“幻灯片母版”
-
2、打开后选择需要加水印的版式。如果想给所有页面都加上水印,可以选择母版,就是最上面那个。
-
3、选择“插入”>“文本框”,然后在幻灯片母版上单击并拖动鼠标,画出文本框。在文本框中键入水印文字(如“内部资料”)。并按住旋转图柄向左或向右移动鼠标。
-
4、退出“幻灯片母版”。一般所有幻灯片都会具有该文本。
<font color=blue>这个方法有一个缺点,就是添加的水印容易被遮挡。
2.2 iSlide插件(收费)
iSlide 是一款基于 PPT 的插件工具,包含 52 个设计辅助功能,9 大在线资源库,超 50 万专业 PPT 模板/素材 支持 macOS 和 Windows 系统(兼容 Office 和 WPS)
2.2.1 iSlide简介
iSlide 专门针对 PPT 编辑过程中的问题,通过功能、模板及课程学习的方式,帮助用户做出改变, 更高效的创建专业 PPT 演示文档。 即装即用,与 PPT/WPS 软件无缝对接,下载模板直接插入 PPT/WPS 演示文档;简单快捷,会使用 PPT 就能使用 iSlide,节约学习成本。
2.2.2 iSlide定价
2.2.3 iSlide水印
借助iSlide插件的【增删水印】功能。批量添加和删除页面水印,可将页面上选中的任意元素(文本框,图形,图片,图标,图表,表格)批量添加到所有页面或指定的页面,并保持位置不变。
-
插入水印到PPT中;
-
打开【增删水印】,右键点击选中水印,【增加水印】并点击【使用所选形状】;
-
选择需要添加水印的页面,比如【所选幻灯片】;编辑好水印的内容,通常是文本框,形状,或插入的图片。选择要应用成水印的内容,点击增删水印面板中的“应用”按钮,可以快速将水印内容复制到所有幻灯片页面(或指定页面)。
-
对于已增加的水印也可以通过“删除水印”的选项,快速清除。打开【增删水印】,左键点击选中水印,【删除水印】并点击【使用所选形状】;选择需要删除水印的页面,比如【所有幻灯片】
<font color=blue>iSlide添加的水印会在最上层,不会被遮挡。
2.3 Python代码
2.3.1 Aspose.Slides for Python(收费)
要在 PPT 幻灯片中添加或删除水印,我们将使用 Aspose.Slides for Python via .NET。该库使您能够从 Python 应用程序中无缝地创建和操作 PowerPoint 演示文稿。
- (1)使用以下 pip 命令从 PyPI 安装库。
pip install aspose.slides
- (2)实现步骤:
- 首先,使用 Presentation 类加载 PowerPoint PPT/PPTX。
- 获取要添加水印的幻灯片的参考。
- 计算水印的位置。
- 使用 addautoshape() 方法为水印添加新的自动形状。
- 使用 addtextframe() 方法将文本框架添加到形状。
- 设置水印的字体大小、颜色、顺序和旋转角度。
- 锁定水印以避免删除或修改。
- 最后,使用 Presentation.save(string, SaveFormat) 方法保存更新的 PowerPoint 文件。
- (3)测试代码如下:
import aspose.slides as slides
import aspose.pydrawing as drawing
# 加载演示
with slides.Presentation("d:\\test.pptx") as presentation:
# 选择幻灯片
# slide = presentation.slides[0]
slide = presentation.masters[0]
# 设置水印位置
center = drawing.PointF(presentation.slide_size.size.width / 2, presentation.slide_size.size.height / 2)
width = 600
height = 500
x = center.x - width / 2
y = center.y - height / 2
# 加水印
watermarkShape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, x, y, height, width)
watermarkShape.name = "watermark"
watermarkShape.fill_format.fill_type = slides.FillType.NO_FILL
watermarkShape.line_format.fill_format.fill_type = slides.FillType.NO_FILL
print(dir(drawing.Color))
# 设置水印文字、字体和颜色
watermarkTextFrame = watermarkShape.add_text_frame("内部资料2023年")
watermarkPortion = watermarkTextFrame.paragraphs[0].portions[0]
watermarkPortion.portion_format.font_height = 91
watermarkPortion.portion_format.fill_format.fill_type = slides.FillType.SOLID
watermarkPortion.portion_format.fill_format.solid_fill_color.color = drawing.Color.light_gray
# 锁定水印避免修改
watermarkShape.shape_lock.select_locked = True
watermarkShape.shape_lock.size_locked = True
watermarkShape.shape_lock.text_locked = True
watermarkShape.shape_lock.position_locked = True
watermarkShape.shape_lock.grouping_locked = True
# 设置旋转
watermarkShape.rotation = -45
# 发回
slide.shapes.reorder(0, watermarkShape)
# 保存演示文稿
presentation.save("d:\\out.pptx", slides.export.SaveFormat.PPTX)
测试结果如下:
结语
如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;
╮( ̄▽ ̄)╭
如果您感觉方法或代码不咋地
//(ㄒoㄒ)//,就在评论处留言,作者继续改进;
o_O???
如果您需要相关功能的代码定制化开发,可以留言私信作者;
(✿◡‿◡)
感谢各位大佬童鞋们的支持!
( ´ ▽´ )ノ ( ´ ▽´)っ!!!