DevExpress发布新一代PowerPoint Presentation API库,支持跨平台与 PDF 导出

翻译|行业资讯|编辑:龚雪|2025-08-22 10:42:34.497|阅读 11 次

概述:本文将为大家介绍DevExpress近期全新发布得新一代PowerPoint Presentation API库,欢迎下载最新版组件体验!

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

DevExpress专注于为 .NET、JavaScript、VCL 等多种平台提供高性能 UI 控件、报表工具、数据可视化组件及开发框架,产品覆盖桌面、Web、移动及跨平台应用开发领域。凭借稳定的性能、丰富的功能与优质的技术支持,DevExpress 的解决方案已广泛应用于金融、制造、医疗、能源、政府及教育等行业,帮助开发者更高效地构建现代化应用程序。

DevExpress官方宣布全新 .NET PowerPoint Presentation API 库的 Community Tech Preview(CTP)版现已发布(需使用 v25.1.4 及以上版本),该库旨在帮助您在 .NET 应用中创建、读取、编辑、转换、合并、拆分以及打印 Microsoft PowerPoint 文件。

在本文中,我将介绍该 CTP 版的关键功能,分享产品架构的见解,并演示如何通过代码构建一个演示文稿管理应用程序。

注意:DevExpress Presentation API 库目前为 Community Technology Preview(CTP)版本。

DevExpress 发布新一代PowerPoint Presentation API库,支持跨平台与 PDF 导出

获取DevExpress v25.1正式版下载

DevExpress技术交流群11:749942875      欢迎一起进群讨论


Presentation API概览
跨平台PowerPoint文件处理

DevExpress Presentation API 构建于 .NET 之上,开箱即用地支持广泛的平台与操作系统。无论您在开发传统桌面应用、Web 后端,还是跨平台解决方案,都可以无缝集成 PowerPoint 文件处理能力,无需依赖 Microsoft Office 或 PowerPoint 的安装环境。

支持的框架、操作系统和环境包括:

  • NET 8/9, .NET Framework 4.6.2+
  • Windows, Linux, macOS
  • Azure, AWS, Docker
DevExpress 发布新一代PowerPoint Presentation API库,支持跨平台与 PDF 导出
支持的文件格式与文档元素

当前版本(v25.1.x)的 PowerPoint Presentation API 库支持导入与保存 PPTX 格式演示文稿文件,同时支持将文件打印或导出为 PDF。

该库提供了一整套 API 和设置,帮助您以编程方式创建/管理演示文稿元素——包括:

  • 幻灯片、幻灯片布局、母版
  • 幻灯片备注、备注母版
  • 形状、连接器、文本框、图片
  • 形状文本、段落、占位符
  • 项目符号和编号列表
  • 演示文稿页眉与页脚
  • 内置与自定义文档属性
  • 演示文稿视图属性

代码示例 — 将演示文稿转换为 PDF

using DevExpress.Docs.Presentation;
//...
// Load a presentation
Presentation presentation = new Presentation(File.ReadAllBytes("mypresentation.pptx"));
// Export to PDF
presentation.ExportToPdf(new FileStream(@"D:\exported-document.pdf", FileMode.Create));
核心功能 — 程序化管理演示文稿

DevExpress Presentation API 让您能够以编程方式生成及组织演示内容,支持以下使用场景:

  • 添加、复制、重新排序、调整大小、隐藏或删除幻灯片
  • 创建、自定义及应用不同的幻灯片布局
  • 访问并更新幻灯片母版内容
  • 合并多个演示文稿,或将幻灯片从一个文档复制到另一个文档
  • 将一个演示文稿按幻灯片拆分成多个演示文稿
  • 提取或指定特定段落、形状、幻灯片、演讲者备注或整个演示文稿的文本
  • 格式化文本、段落、形状及幻灯片背景
  • 管理演示文稿元数据

代码示例 — 合并两个演示文稿

using DevExpress.Docs.Presentation;
//...
// Load presentations
Presentation presentation1 = new Presentation(File.ReadAllBytes("presentation1.pptx"));
Presentation presentation2 = new Presentation(File.ReadAllBytes("presentation2.pptx"));
// Merge presentation slides
foreach (Slide slide in presentation2.Slides) {
presentation1.Slides.Add(slide);
}
// Save the merged document to the PPTX file
FileStream outputStream = new FileStream(@"D:\merged_presentation.pptx", FileMode.Create);
presentation.SaveDocument(outputStream);
DevExpress 发布新一代PowerPoint Presentation API库,支持跨平台与 PDF 导出
面向对象的文档模型

与依赖接口型文档模型的其他 PowerPoint 处理库不同,DevExpress Presentation API 库采用了具体的面向对象模型设计。这种架构选择旨在提供更清晰、更灵活且更便于开发者使用的体验。

使用DevExpress Presentation API库,您可以直接使用直观的类——Slide、Shape、TextParagraph等。在向表示中添加新元素之前,可以初始化文档对象并配置所有必要的设置,这为基于流的文档生成提供了一种自然和结构化的方法。

此外,您可以跨多个幻灯片和演示文稿重用文档元素和配置设置。例如,您可以将相同的幻灯片添加到多个演示文稿中,或者对多个幻灯片或形状应用相同的格式(如下面的示例所示)。

// Create and apply the custom background to multiple slides in two different presentations
SolidFill fill = new SolidFill(Color.LightCyan);
CustomSlideBackground background = new CustomSlideBackground(fill);
presentation1.Slides[0].Background = background;
presentation1.Slides[1].Background = background;
presentation2.Slides[0].Background = background;

该方法允许您用更少的代码对表示文档进行更改,同时如果需要唯一的实例来防止意外更改,可以创建文档元素和设置单独的复制。

开始使用 PowerPoint Presentation API

若要在项目中使用 DevExpress Presentation API,请按以下步骤操作:

1. 从 Nuget.org 安装 DevExpress.Docs.Presentation NuGet 包(版本 v25.1.4 及以上):

dotnet add package DevExpress.Docs.Presentation --version 25.1.4

(也可通过 DevExpress 本地或个人 NuGet 源安装 Office File API 组件)

2. 在项目文件中添加 DevExpress.Docs.Presentation 命名空间。

3. 创建 Presentation 实例:

  • 使用无参数构造函数来新建一个带有一个空白幻灯片的演示文稿;
  • 使用字节数组或流参数的构造函数来加载已有的 PPTX 文件。

4. 使用 API 构建或修改演示文稿(生成内容、设置格式、更新元数据、重新组织幻灯片等)。

5. 生成输出:

  • 使用 Presentation.SaveDocument 保存为 PPTX;
  • 使用 Presentation.ExportToPdf 生成 PDF;
  • 使用 Presentation.Print 打印文档。

代码示例 — 从零创建新演示文稿

using DevExpress.Docs.Presentation;
//...
// Create a presentation with a single empty slide
Presentation presentation = new Presentation();

// Configure Slide Master
SlideMaster slideMaster = presentation.SlideMasters[0];
slideMaster.Background = new CustomSlideBackground(new SolidFill(Color.FromArgb(194, 228, 249)));

// Add a new slide with content
presentation.Slides.Clear();
Slide slide1 = new Slide(slideMaster.Layouts.Get(SlideLayoutType.Title));
foreach (Shape shape in slide1.Shapes) {
if (shape.PlaceholderSettings.Type is PlaceholderType.CenteredTitle) {
shape.TextArea = new TextArea("Daily Testing Status Report");
}
if (shape.PlaceholderSettings.Type is PlaceholderType.Subtitle) {
shape.TextArea = new TextArea($"{DateTime.Now: dddd, MMMM d, yyyy}");
}
}
presentation.Slides.Add(slide1);

// Save Presentation to PPTX
FileStream outputStream = new FileStream(@"D:\mypresentation.pptx", FileMode.Create);
presentation.SaveDocument(outputStream);

更多产品资讯及授权,欢迎来电咨询:023-68661681


更多DevExpress线上公开课、中文教程资讯请上中文网获取

关于慧都科技

慧都是⼀家⾏业数字化解决⽅案公司,专注于软件、⽯油与⼯业领域,以深⼊的业务理解和⾏业经验,帮助企业实现智能化转型与持续竞争优势。

慧都是DevExpress的中国区的合作伙伴,DevExpress作为用户界面领域的优秀产品,帮助企业高效构建权限管理、数据可视化(如网格/图表/仪表盘)、跨平台系统(WinForms/ASP.NET/.NET MAUI)及行业定制解决方案,加速开发并强化交互体验。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:慧都网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
DevExpress Universal Subscription

优秀的界面控件开发包,帮助企业构建卓越应用!

DevExpress DXperience Subscription

高性价比的企业级.NET用户界面套包,助力企业创建卓越应用!

DevExpress WinForms Subscription

为Windows Forms平台创建具有影响力的业务解决方案,高性价比WinForms界面控件套包。

DevExpress WPF Subscription

高效MVVM开发模式,WPF界面解决方案首选工具,帮助企业实现酷炫动效界面。

DevExpress ASP.NET Controls

多款重量级ASP.NET用户界面组件套包,让您快速开发出完美、强大的应用程序!

title
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP