zoukankan      html  css  js  c++  java
  • C# 处理PPT水印(一)——添加水印效果(文字水印、图片水印)

    对文档添加水印可以有效声明和保护文档,是保护重要文件的方式之一。在PPT文档中同样也可以设置水印,包括文本水印和图片水印,本文将讲述如何通过Spire.Presentation for .NET来对PPT添加水印,下载安装Free Spire.Presentationfor .NET后,添加引用dll文件,参考下面的操作步骤,完成水印添加。

    1.添加文本水印

    步骤一:初始化Presentation类实例,并加载文档

    Presentation ppt = new Presentation();
    ppt.LoadFromFile(@"C:UsersAdministratorDesktopsample.pptx", FileFormat.Pptx2010);

    步骤二:初始化一个Font类实例,并实例化字体格式

    Font stringFont = new Font("Arial", 90);
    Size size = TextRenderer.MeasureText("内部资料", stringFont);

    步骤三:绘制一个shape并指定大小、填充颜色、边框颜色和旋转角度

    RectangleF rect = new RectangleF((ppt.SlideSize.Size.Width - size.Width) / 2, (ppt.SlideSize.Size.Height - size.Height) / 2, size.Width, size.Height);
    IAutoShape shape = ppt.Slides[0].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 = "内部资料";
    TextRange textRange = shape.TextFrame.TextRange;
    textRange.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.Solid;
    textRange.Fill.SolidColor.Color = Color.FromArgb(120, Color.Gray);
    textRange.FontHeight = 45;

    步骤六:保存文档

    ppt.SaveToFile("TextWatermark.pptx", FileFormat.Pptx2010);

    完成以上代码步骤后,调试运行项目程序,生成文件(可在该项目文件中bin>Debug中查看),如下图所示:

     

    全部代码:

    using System;
    using System.Text;
    using Spire.Presentation;
    using System.Drawing;
    using Spire.Presentation.Drawing;
    using System.Windows.Forms;
    
    namespace InsertWatermark_PPT
    {
        class Program
        {
            static void Main(string[] args)
            {
                //初始化一个Presentation类实例并加载文档
                Presentation ppt = new Presentation();
                ppt.LoadFromFile(@"C:UsersAdministratorDesktopsample.pptx", FileFormat.Pptx2010);
    
                //初始化一个Font类字体实例并实例化字体格式
                Font stringFont = new Font("Arial", 90);
                Size size = TextRenderer.MeasureText("内部资料", stringFont);
    
                //绘制一个Shape并指定大小、填充颜色、边框颜色和旋转度
                RectangleF rect = new RectangleF((ppt.SlideSize.Size.Width - size.Width) / 2, (ppt.SlideSize.Size.Height - size.Height) / 2, size.Width, size.Height);
                IAutoShape shape = ppt.Slides[0].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 = "内部资料";
                TextRange textRange = shape.TextFrame.TextRange;
                textRange.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.Solid;
                textRange.Fill.SolidColor.Color = Color.FromArgb(150, Color.LightBlue);
                textRange.FontHeight = 90;
    
                //保存文档
                ppt.SaveToFile("TextWatermark.pptx", FileFormat.Pptx2010);
            }
        }
    View full Code

    2.添加图片水印

    步骤一:初始化一个Presentation类实例并加载文档

    Presentation ppt = new Presentation();
    ppt.LoadFromFile(@"C:UsersAdministratorDesktopsample.pptx", FileFormat.Pptx2010);

    步骤二: 为第一张幻灯片设置背景图片类型和样式

    ppt.Slides[0].SlideBackground.Type = Spire.Presentation.Drawing.BackgroundType.Custom;
    ppt.Slides[0].SlideBackground.Fill.FillType = FillFormatType.Picture;
    ppt.Slides[0].SlideBackground.Fill.PictureFill.FillType = PictureFillType.Stretch;

    步骤三:加载图片并为第一张幻灯片设置水印

    Image img = Image.FromFile(@"C:UsersAdministratorDesktopimages1.jpg");
    IImageData image = ppt.Images.Append(img);
    ppt.Slides[0].SlideBackground.Fill.PictureFill.Picture.EmbedImage = image;

    步骤四:保存文档

     ppt.SaveToFile("ImageWatermark1.pptx", FileFormat.Pptx2010);

    全部代码:

    using System;
    using System.Drawing;
    using Spire.Presentation;
    using Spire.Presentation.Drawing;
    
    namespace ImageWatermark_PPT
    {
        class Program
        {
            static void Main(string[] args)
            {
                //初始化一个Presentation类实例并加载文档
                Presentation ppt = new Presentation();
                ppt.LoadFromFile(@"C:UsersAdministratorDesktopsample.pptx", FileFormat.Pptx2010);
    
                //为第一张幻灯片设置背景图片类型和样式
                ppt.Slides[0].SlideBackground.Type = Spire.Presentation.Drawing.BackgroundType.Custom;
                ppt.Slides[0].SlideBackground.Fill.FillType = FillFormatType.Picture;
                ppt.Slides[0].SlideBackground.Fill.PictureFill.FillType = PictureFillType.Stretch;
    
                //加载图片并为第一张幻灯片设置水印效果
                Image img = Image.FromFile(@"C:UsersAdministratorDesktopimages1.jpg");
                IImageData image = ppt.Images.Append(img);
                ppt.Slides[0].SlideBackground.Fill.PictureFill.Picture.EmbedImage = image;
    
                //保存文档
                ppt.SaveToFile("ImageWatermark1.pptx", FileFormat.Pptx2010);
            }
        }
    }
    View full Code

    以上是对PPT添加水印的代码操作,希望该方法能提供帮助,感谢阅读!

  • 相关阅读:
    git
    node cheerio
    Git是目前世界上最先进的分布式版本控制系统
    精华 ionic入门之色彩、图标、边距和界面组件:列表
    如何将腾讯视频的qlv格式转换为mp4格式
    php无限级分类实战——评论及回复功能
    Yii2 前后台登陆退出分离、登陆验证
    linux 更改文件所属用户及用户组
    wdcp 开启某个Mysql数据库远程访问
    Rem实现自适应初体验
  • 原文地址:https://www.cnblogs.com/Yesi/p/7737456.html
Copyright © 2011-2022 走看看