打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C# 处理PPT水印(三)—— 在PPT中添加多行(平铺)文本水印效果

在PPT幻灯片中,可通过添加形状的方式,来实现类似水印的效果,可添加单一文本水印效果,即幻灯片中只有一个文本水印;也可以添加多行(平铺)文本水印效果,即幻灯片中以一定方式平铺排列多个文本水印效果。本文主要以C#程序代码为例介绍第二种水印添加方法,另附VB.NET代码供参考。

程序环境

  • 需引入以下程序集文件,如图:

 

 

其中,Spire.Presentation.dll程序集,需下载安装至本地(也可以通过Nuget下载),这里使用的免费版

  • .NET Framework 4.8

 

详细代码

【C#】

using Spire.Presentation;using Spire.Presentation.Drawing;using System;using System.Drawing;using System.Windows.Forms;namespace TextWatermark2{    class Program    {        static void Main(string[] args)        {            //加载PPT文档            Presentation ppt = new Presentation();            ppt.LoadFromFile("test.pptx");            //获取需要添加的水印的幻灯片(第一张幻灯片)            ISlide slide = ppt.Slides[0];            //创建水印文本            Font font = new Font("宋体", 20);            String watermarkText = "内部资料";            SizeF size = TextRenderer.MeasureText(watermarkText, font);            //指定水印添加的起始坐标位置            float x = 50;            float y = 80;            for (int i = 0; i < 4; i++)            {                for (int j = 0; j < 4; j++)                {                    //绘制文本,设置文本格式                    RectangleF rect = new RectangleF(x, y, size.Width, size.Height);                    IAutoShape shape = slide.Shapes.AppendShape(Spire.Presentation.ShapeType.Rectangle, rect);                    shape.Fill.FillType = FillFormatType.None;                    shape.ShapeStyle.LineColor.Color = Color.White;                    shape.Rotation = -45;                    shape.Locking.SelectionProtection = true;                    shape.Line.FillType = FillFormatType.None;                    shape.TextFrame.Text = watermarkText;                    TextRange textRange = shape.TextFrame.TextRange;                    textRange.Fill.FillType = FillFormatType.Solid;                    textRange.Fill.SolidColor.Color = Color.FromArgb(120, Color.HotPink);                    textRange.EastAsianFont = new TextFont(font.Name);                    textRange.FontHeight = font.Size;                    x += (100 + size.Width);                }                x = 30;                y += (100 + size.Height);            }            //保存文档            ppt.SaveToFile("TextWatermark.pptx", FileFormat.Pptx2013);            System.Diagnostics.Process.Start("TextWatermark.pptx");        }    }}

【VB.NET】

Imports Spire.PresentationImports Spire.Presentation.DrawingImports System.DrawingImports System.Windows.FormsNamespace TextWatermark2    Class Program        Private Shared Sub Main(args As String())            '加载PPT文档            Dim ppt As New Presentation()            ppt.LoadFromFile("test.pptx")            '获取需要添加的水印的幻灯片(第一张幻灯片)            Dim slide As ISlide = ppt.Slides(0)            '创建水印文本            Dim font As New Font("宋体", 20)            Dim watermarkText As [String] = "内部资料"            Dim size As SizeF = TextRenderer.MeasureText(watermarkText, font)            '指定水印添加的起始坐标位置            Dim x As Single = 50            Dim y As Single = 80            For i As Integer = 0 To 3                For j As Integer = 0 To 3                    '绘制文本,设置文本格式                    Dim rect As New RectangleF(x, y, size.Width, size.Height)                    Dim shape As IAutoShape = slide.Shapes.AppendShape(Spire.Presentation.ShapeType.Rectangle, rect)                    shape.Fill.FillType = FillFormatType.None                    shape.ShapeStyle.LineColor.Color = Color.White                    shape.Rotation = -45                    shape.Locking.SelectionProtection = True                    shape.Line.FillType = FillFormatType.None                    shape.TextFrame.Text = watermarkText                    Dim textRange As TextRange = shape.TextFrame.TextRange                    textRange.Fill.FillType = FillFormatType.Solid                    textRange.Fill.SolidColor.Color = Color.FromArgb(120, Color.HotPink)                    textRange.EastAsianFont = New TextFont(font.Name)                    textRange.FontHeight = font.Size                    x += (100 + size.Width)                Next                x = 30                y += (100 + size.Height)            Next            '保存文档            ppt.SaveToFile("TextWatermark.pptx", FileFormat.Pptx2013)            System.Diagnostics.Process.Start("TextWatermark.pptx")        End Sub    End ClassEnd Namespace

完成代码后,执行程序,生成结果文档。在结果文档中可查看水印添加效果,如下图:

 

其他关于C#操作PPT水印的方法可参考以下相关文章:

 

(本文完)

转载请注明出处!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
批量修改ppt中所有字的字体颜色
PPT VBA小白入门之5段有代表性代码
PPT转Word的4个实例,含怎么把大纲不显示文字的PPT转换Word和如何保留原格式将PPT转换成...
最全总结 | 聊聊 Python 办公自动化之 PPT(下)
被自己做的PPT丑哭了?掌握这几点,化腐朽为神奇
学会这5个简单小技巧,你也能成为ppt大神
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服