You need to enable JavaScript to run this app. 如何通过VSTO/C#读取PowerPoint的文档属性(含字数统计)
优惠活动
大模型
产品
解决方案
定价
更多

如何通过VSTO/C#读取PowerPoint的文档属性(含字数统计)

VSTO+C# 读取PowerPoint信息面板文档属性实现指南

核心对象模型说明

  • PowerPoint「信息」面板内展示的所有文档属性、统计指标,都可以通过VSTO暴露的COM互操作接口直接读取,不需要解析UI层元素
  • 面板展示的所有属性和对象模型存储的内容一一对应,具体分为三类:
    • 基础元数据(作者、文档标题、创建时间、最后修改人等):存储在Presentation.BuiltInDocumentProperties内置属性集合中
    • 统计类指标(字数、备注段落数、幻灯片页数等):归属于内置属性集合,通过固定枚举值索引读取
    • 自定义属性项:存储在Presentation.CustomDocumentProperties集合中,和「高级属性」弹窗内自定义标签页的内容完全一致

可复用参考示例代码

// 开发前需引用对应版本的 Office 互操作程序集:Microsoft.Office.Interop.PowerPoint、Office 核心互操作库
using Microsoft.Office.Core;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;

public void ReadInfoPanelProperties()
{
    // 获取当前激活的打开演示文稿
    PowerPoint.Presentation activePres = Globals.ThisAddIn.Application.ActivePresentation;
    
    // 加载内置文档属性集合
    dynamic builtInProps = activePres.BuiltInDocumentProperties;
    
    // 读取面板展示的字数统计指标
    int totalWordCount = Convert.ToInt32(builtInProps[MsoDocProperties.msoPropertyNumberOfWords].Value);
    
    // 读取其他常用面板属性
    string docAuthor = builtInProps[MsoDocProperties.msoPropertyAuthor].Value.ToString();
    string docTitle = builtInProps[MsoDocProperties.msoPropertySubject].Value.ToString();
    DateTime lastModifyTime = Convert.ToDateTime(builtInProps[MsoDocProperties.msoPropertyLastSaveTime].Value);
    
    // 读取自定义属性集合内容(对应面板高级属性的自定义页展示项)
    dynamic customProps = activePres.CustomDocumentProperties;
    foreach (dynamic customProp in customProps)
    {
        // 遍历输出所有自定义属性的名称和值
        Console.WriteLine($"自定义属性:{customProp.Name} = {customProp.Value}");
    }
}

实现注意事项

  • 从内置/自定义属性集合取出的属性值为动态对象类型,所有取值必须做显式类型转换,否则会触发运行时绑定错误
  • 新建未保存的演示文稿,部分统计属性默认返回0值,可直接读取不需要做额外兼容
  • 幻灯片总数、页面尺寸这类基础参数属于Presentation对象的原生属性,不需要通过文档属性集合读取,直接访问对应属性即可
  • 整个读取过程对用户无感知,不会弹出额外的PowerPoint窗口或打断用户操作流程
  • 若读取属性时触发空引用异常,需先判断对应属性的Value字段是否为null,再做类型转换

内容的提问来源于stack exchange,提问作者Roger Heckly

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.22 22:06:04