將水印添加到 PowerPoint C#

水印通常用於指定所有權或防止未經授權使用文檔。此外,它們還用於顯示手稿、草稿等文檔的狀態。在本文中,我們將演示如何通過以編程方式應用水印來保護 PowerPoint 演示文稿。特別是,您將學習如何使用 C# 向 PowerPoint 幻燈片添加文本或圖像水印。

用於向 PowerPoint 幻燈片添加水印的 C# API

為了給 PowerPoint 幻燈片添加水印,我們將使用 Aspose.Slides for .NET。它是一個功能豐富的 API,可讓您從 .NET 應用程序中創建演示文稿。此外,它還允許您操作現有的演示文稿文件。您可以 下載 API 或使用 NuGet 安裝它。

PM> Install-Package Aspose.Slides.NET

在 C# 中向 PowerPoint 幻燈片添加文本水印

以下是使用 C# 向 PowerPoint 幻燈片添加文本水印的步驟。

  • 首先,使用 Presentation 類加載 PowerPoint 演示文稿。
  • 獲取要在 ISlide 對像中添加水印的幻燈片的引用。
  • 計算水印的位置。
  • 將新的自動形狀添加到幻燈片的 Shapes 集合,並在 IAutoShape 對像中獲取其引用。
  • 將文本框添加到形狀並使用 IAutoShape.AddTextFrame(string) 方法設置其文本。
  • 設置水印的字體大小、顏色和旋轉角度。
  • 鎖定水印以避免刪除或修改。
  • 最後,使用 Presentation.Save(string, SaveFormat) 方法保存更新後的 PowerPoint 文件。

以下代碼示例顯示如何向 PowerPoint 幻燈片添加文本水印。

// 負載演示 
Presentation presentation = new Presentation("presentation.pptx");

// 獲取幻燈片的參考
ISlide slide = presentation.Slides[0];

// 獲取幻燈片的中心併計算水印的位置
PointF center = new PointF(presentation.SlideSize.Size.Width / 2, presentation.SlideSize.Size.Height / 2);
float width = 300;
float height = 300;
float x = center.X - width / 2;
float y = center.Y - height / 2;

// 添加水印形狀
IAutoShape watermarkShape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, x, y, width, height);

// 設置填充類型
watermarkShape.FillFormat.FillType = FillType.NoFill;
watermarkShape.LineFormat.FillFormat.FillType = FillType.NoFill;

// 設置旋轉角度
watermarkShape.Rotation = -45;
            
// 設置文字
ITextFrame watermarkTextFrame = watermarkShape.AddTextFrame("Watermark");
IPortion watermarkPortion = watermarkTextFrame.Paragraphs[0].Portions[0];

// 設置水印的字體大小和填充類型
watermarkPortion.PortionFormat.FontHeight = 52;
watermarkPortion.PortionFormat.FillFormat.FillType = FillType.Solid;
int alpha = 150, red = 200, green = 200, blue = 200;
watermarkPortion.PortionFormat.FillFormat.SolidFillColor.Color = System.Drawing.Color.FromArgb(alpha, red, green, blue);

// 鎖定形狀以防止修改
watermarkShape.ShapeLock.SelectLocked = true;
watermarkShape.ShapeLock.SizeLocked = true;
watermarkShape.ShapeLock.TextLocked = true;
watermarkShape.ShapeLock.PositionLocked = true;
watermarkShape.ShapeLock.GroupingLocked = true;

// 保存演示文稿
presentation.Save("watermarked-presentation.pptx", SaveFormat.Pptx);

輸出

以下是添加水印後的PowerPoint幻燈片截圖。

在 C# 中為 PowerPoint 幻燈片添加水印

C#給PPT幻燈片添加圖片水印

下面是用C#給PPT幻燈片添加圖片水印的步驟。

以下代碼示例演示如何將圖像水印添加到 PowerPoint 幻燈片。

// 負載演示 
Presentation presentation = new Presentation("presentation.pptx");

// 獲取幻燈片的參考
ISlide slide = presentation.Slides[0];

// 獲取幻燈片的中心併計算水印的位置
PointF center = new PointF(presentation.SlideSize.Size.Width / 2, presentation.SlideSize.Size.Height / 2);
float width = 300;
float height = 300;
float x = center.X - width / 2;
float y = center.Y - height / 2;

// 載入圖片
IPPImage image = presentation.Images.AddImage(File.ReadAllBytes("watermark.png"));

// 添加水印形狀並設置圖像
IAutoShape watermarkShape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, x, y, width, height);
watermarkShape.FillFormat.FillType = FillType.Picture;
watermarkShape.FillFormat.PictureFillFormat.Picture.Image = image;
watermarkShape.FillFormat.PictureFillFormat.PictureFillMode = PictureFillMode.Stretch;         
watermarkShape.LineFormat.FillFormat.FillType = FillType.NoFill;

// 鎖定形狀以防止修改
watermarkShape.ShapeLock.SelectLocked = true;
watermarkShape.ShapeLock.SizeLocked = true;
watermarkShape.ShapeLock.TextLocked = true;
watermarkShape.ShapeLock.PositionLocked = true;
watermarkShape.ShapeLock.GroupingLocked = true;

// 保存演示文稿
presentation.Save("watermarked-presentation.pptx", SaveFormat.Pptx);

適用於 C# .NET 的 PowerPoint Watermarking API - 獲取免費許可證

通過申請臨時許可,您可以在沒有評估限制的情況下使用 Aspose.Slides for .NET。

結論

在本文中,您學習瞭如何使用 C# 向 PowerPoint 幻燈片添加水印。分步指南和代碼示例演示瞭如何向 PowerPoint 演示文稿添加文本和圖像水印。此外,您可以查閱 文檔 來探索 API 的其他功能。此外,您可以隨時通過我們的 論壇 告訴我們您的疑問。

也可以看看

信息:您可能需要查看 Aspose.Slides 免費的 向 PowerPoint 添加水印從 PowerPoint 刪除水印 在線工具。