在C#里面给PPT文档添加注释的实现代码

C#中通过对PowerPoint对象模型的操作,可以实现在PPT文档中添加注释的功能。下面是具体的步骤:

1. 引用PowerPoint对象模型

首先需要引用PowerPoint对象模型,方法如下:

using Microsoft.Office.Interop.PowerPoint;

2. 创建PowerPoint文档对象并打开文件

使用下面的代码可以创建一个PowerPoint文档对象并打开指定文件:

Application pptApp = new Application();
Presentation pptDoc = pptApp.Presentations.Open(@"C:\example.pptx", MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);

3. 添加注释

使用下面的代码可以在PowerPoint文档中添加一个注释:

Slide slide = pptDoc.Slides[1];
TextRange noteTextRange = slide.NotesPage.Shapes[2].TextFrame.TextRange;
noteTextRange.InsertAfter("这是一个注释。");

首先用Slides属性索引到指定幻灯片,再使用NotesPage属性索引到指定幻灯片的注释页,最后使用Shapes属性和TextFrame属性索引到注释文本框,从而在注释文本框后插入要添加的注释。

4. 保存并关闭文档

添加完注释后,记得要保存文档并关闭PowerPoint应用程序:

pptDoc.Save();
pptDoc.Close();

下面是一个完整的示例代码,演示如何在PPT文档中添加两个注释:

using Microsoft.Office.Core;
using Microsoft.Office.Interop.PowerPoint;

namespace AddPPTNotesDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            Application pptApp = new Application();
            Presentation pptDoc = pptApp.Presentations.Open(@"C:\example.pptx", MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);

            try
            {
                // 在第1个幻灯片上添加第1个注释
                Slide slide1 = pptDoc.Slides[1];
                TextRange note1TextRange = slide1.NotesPage.Shapes[2].TextFrame.TextRange;
                note1TextRange.InsertAfter("这是第1个注释。");

                // 在第2个幻灯片上添加第2个注释
                Slide slide2 = pptDoc.Slides[2];
                TextRange note2TextRange = slide2.NotesPage.Shapes[2].TextFrame.TextRange;
                note2TextRange.InsertAfter("这是第2个注释。");
            }
            finally
            {
                pptDoc.Save();
                pptDoc.Close();
            }
        }
    }
}

以上就是给PPT文档添加注释的实现代码的完整攻略,通过以上代码可以实现在指定PPT文档中添加多个注释,并且可以添加到指定幻灯片的注释区域。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在C#里面给PPT文档添加注释的实现代码 - Python技术站

(0)
上一篇 2023年6月6日
下一篇 2023年6月6日

相关文章

  • 两种获取connectionString的方式案例详解

    下面是“两种获取connectionString的方式案例详解”的完整攻略: 概述 在使用ASP.NET的开发中,我们常常需要连接数据库,在连接数据库时,需要首先获取连接字符串。获取连接字符串的方式有很多种,本文将介绍两种常用的方式,分别是: 通过web.config文件获取连接字符串 通过代码获取连接字符串 通过web.config文件获取连接字符串 在A…

    C# 2023年5月31日
    00
  • 分享两种实现Winform程序的多语言支持的多种解决方案

    接下来我将详细讲解Winform程序实现多语言支持的多种解决方案。 1. 利用Resx文件实现多语言支持 Resx文件是.NET中专门用于多语言支持的文件格式,可以用来存储不同语言的文本信息,在程序中通过读取Resx文件来实现不同语言的界面显示。 1.1 创建Resx文件 创建Resx文件有多种方式,这里以Visual Studio为例。 在Visual S…

    C# 2023年6月7日
    00
  • C#图片截取压缩(百分比压缩/大小压缩)实现代码

    下面我将为您详细讲解“C#图片截取压缩(百分比压缩/大小压缩)实现代码”的完整攻略。 一、实现思路 图片截取和压缩功能可以通过C#中内置的System.Drawing命名空间的方法来实现。具体实现流程如下: 读取原始图片文件,创建一个Image对象; 将Image对象转换为Bitmap对象; 调用Bitmap对象的Crop方法对图片进行截取,得到截取后的Bi…

    C# 2023年6月7日
    00
  • C#使用System.Environment获取电脑的相关属性

    关于C#使用System.Environment获取电脑的相关属性的攻略,以下是我总结的步骤: 步骤一:引用命名空间 在使用System.Environment类获取电脑的相关属性之前,需要先引用命名空间using System;。 步骤二:使用System.Environment类中的方法获取电脑的相关属性 System.Environment类中提供的方…

    C# 2023年6月7日
    00
  • c#中的interface abstract与virtual介绍

    针对“c#中的interface abstract与virtual介绍”的问题,我将会给出详细的解答。 一、介绍 在 C# 中,我们常常会用到 interface、abstract 和 virtual 这三个关键字。它们在面向对象的编程中,起到了非常重要的作用。 1.1 interface interface 是一种特殊的类,它只能包含成员的声明,而不提供任…

    C# 2023年5月31日
    00
  • C#实现获取程序路径方法小结

    C#实现获取程序路径方法小结 在开发C#程序时,有时候需要获取当前程序的路径,可以使用以下方法。 获取当前程序运行路径 以下是获取当前程序运行的路径的代码: string path = AppDomain.CurrentDomain.BaseDirectory; //或者使用以下逻辑 string path2 = System.IO.Directory.Ge…

    C# 2023年6月7日
    00
  • C#多线程学习(一) 多线程的相关概念

    C#多线程学习(一) 多线程的相关概念 什么是进程? 当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。 而一个进程又是由多个线程所组成的。 什么是线程? 线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等), 但代码区是共享的,即不同的线程可以执行同样的函数。 什么是多线程? 多线程是指程序…

    C# 2023年4月19日
    00
  • .NET创建、删除、复制文件夹及其子文件的实例方法

    以下是“.NET创建、删除、复制文件夹及其子文件的实例方法”的完整攻略: 创建文件夹及子目录 在.NET中,可以使用Directory.CreateDirectory()方法来创建一个新的文件夹。如果指定的目录路径已经存在,则不会创建任何内容。此外,如果想在新的文件夹中创建子目录,可以将完整的路径添加到方法中。例如: Directory.CreateDire…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部