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


    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

     

    [C#]

    复制代码
    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);
                }
            }
        }
    }
    复制代码

    [VB.NET]

    复制代码
    Imports Spire.Presentation
    Imports System
    Imports System.Drawing
    Imports 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 Class
    End Namespace
    复制代码

     

    将PPT或PPTX转换为SVG

     

     

    [C#]

    复制代码
    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();
                }
            }
        }
    }
    复制代码

     

    [VB.NET]

    复制代码
    Imports System.Collections.Generic
    Imports System.IO
    Namespace 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 Class
    End Namespace
    复制代码

  • 相关阅读:
    必应bing国内广告怎样开户投放呢?
    分享一下做一个电商小程序可以实现什么功能
    两年Java开发工作经验面试总结
    PostgreSQL JIT(Just-In-Time Compilation)With LLVM 的实现原理
    10 路由协议:西出网关无故人,敢问路在何方
    学习笔记——动态路由——RIP(RIP工作原理/防环机制)
    Optional避免判空嵌套过多,优雅解决空指针异常
    永州水质检测实验室建设:家具说明
    Python大数据之PySpark(四)SparkBase&Core
    TensorFlow实战教程(十九)-Keras搭建循环神经网络分类案例及RNN原理详解
  • 原文地址:https://www.cnblogs.com/Gia-/p/16539060.html