写点什么

C#/VB.NET 将 PPT 或 PPTX 转换为图像

作者:Geek_249eec
  • 2022 年 8 月 01 日
  • 本文字数:2037 字

    阅读完需:约 7 分钟

C#/VB.NET 将 PPT 或 PPTX 转换为图像

 

由于大多数便携式设备支持浏览图片而不支持浏览 PowerPoint 文件,所以相比较而言,图像对于用户而言更加友好。除此之外,将 PowerPoint 文档转换为图像也可以防止对内容做出修改。在本文中,我将展示如何使用 Spire.Presentation for .NET 在 C#/VB.NET 程序中,将 PowerPoint(PPT 和 PPTX)转换为 PNG 或 SVG。

 

将PPT或PPTX转换为PNG

将PPT或PPTX转换为SVG

 

安装 Spire.Presentation for .NET

 

首先,我们需要将 Spire.Presentation for .NET 包中包含的 DLL 文件添加为 .NET 项目中的引用。可以从此链接下载 DLL 文件,也可以通过NuGet 安装 DLL 文件。

 

PM> Install-Package Spire.Presentation

 

将 PPT 或 PPTX 转换为 PNG

 

using Spire.Presentation;using System;using System.Drawing;using System.Drawing.Imaging; namespace ConvertPowerPointToPng{    class Program    {        static void Main(string[] args)        {            //初始化Presentation实例            Presentation presentation = new Presentation();
//加载一个PowerPoint文档 presentation.LoadFromFile("模板.pptx");
//遍历PowerPoint文档中的幻灯片并保存为PNG图片 for (int i = 0; i < presentation.Slides.Count; i++) { Image image = presentation.Slides[i].SaveAsImage(); String fileName = String.Format("图片{0}.png", i); image.Save(fileName, System.Drawing.Imaging.ImageFormat.Png); } } }}
复制代码


Imports Spire.PresentationImports SystemImports System.DrawingImports System.Drawing.Imaging Namespace ConvertPowerPointToPng    Class Program        Shared  Sub Main(ByVal args() As String)            '初始化Presentation实例            Dim presentation As Presentation =  New Presentation()              '加载一个PowerPoint文档            presentation.LoadFromFile("模板.pptx")             '遍历PowerPoint文档中的幻灯片并保存为PNG图片            Dim i As Integer            For  i = 0 To  presentation.Slides.Count- 1  Step  i + 1                Dim image As Image =  presentation.Slides(i).SaveAsImage()                 Dim fileName As String =  String.Format("图片{0}.png",i)                 image.Save(fileName, System.Drawing.Imaging.ImageFormat.Png)            Next        End Sub    End ClassEnd Namespace
复制代码




将 PPT 或 PPTX 转换为 SVG

using System.Collections.Generic;using System.IO;namespace PPTtoSVG{    class Program    {        static void Main(string[] args)        {            //初始化Presentation实例            Presentation presentation = new Presentation();
//加载一个PowerPoint文档 presentation.LoadFromFile("模板.pptx");
//将PowerPoint转换为SVG图像并以字节形式存储在列队中 Queue<byte[]> svgBytes = presentation.SaveToSVG();
//获取列队中字节数组生成SVG文件 int len = svgBytes.Count; for (int i = 0; i < len; i++) { FileStream fs = new FileStream(string.Format("图片-{0}.svg", i), FileMode.Create); byte[] bytes = svgBytes.Dequeue(); fs.Write(bytes, 0, bytes.Length); presentation.Dispose(); } } }}
复制代码


Imports System.Collections.GenericImports System.IONamespace PPTtoSVG    Class Program        Shared  Sub Main(ByVal args() As String)            '初始化Presentation实例            Dim presentation As Presentation =  New Presentation()              '加载一个PowerPoint文档            presentation.LoadFromFile("模板.pptx")             '将PowerPoint转换为SVG图像并以字节形式存储在列队中            Dim svgBytes()> As Queue<byte =  presentation.SaveToSVG()              '获取列队中字节数组生成SVG文件            Dim len As Integer =  svgBytes.Count             Dim i As Integer            For  i = 0 To  len- 1  Step  i + 1                Dim fs As FileStream =  New FileStream(String.Format("图片-{0}.svg",i),FileMode.Create)                 Dim bytes() As Byte =  svgBytes.Dequeue()                 fs.Write(bytes, 0, bytes.Length)                presentation.Dispose()            Next        End Sub    End ClassEnd Namespace
复制代码




用户头像

Geek_249eec

关注

还未添加个人签名 2022.07.13 加入

还未添加个人简介

评论

发布
暂无评论
C#/VB.NET 将PPT或PPTX转换为图像_C#_Geek_249eec_InfoQ写作社区