C# ppt文件转换为pdf文件

这篇具有很好参考价值的文章主要介绍了C# ppt文件转换为pdf文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用第三方插件 Office 实现转换

1.Application方式转换



        /// <summary>
        /// Microsoft.Office.Interop.PowerPoint
        /// 使用第三方软件 office
        /// </summary>
        /// <param name="pptPath">需要转换的ppt文件路径</param>
        /// <param name="pdfPath">转换后的路径</param>
        public static void OfferPptToPdf(string pptPath, string pdfPath)
        {
            try
            {
                pdfPath=pdfPath.Replace('/', '\\');
                //创建对象 并且打开ppt文件
                Microsoft.Office.Interop.PowerPoint.Application pptApplication = new Microsoft.Office.Interop.PowerPoint.Application();
                Microsoft.Office.Interop.PowerPoint.Presentation pptPresentation = pptApplication.Presentations.Open(pptPath, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);

                //if (!File.Exists(newfilePath))//不存在
                //{
                //ppt文件 保存为pdf文件
                pptPresentation.SaveAs(pdfPath, Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsPDF, Microsoft.Office.Core.MsoTriState.msoFalse);
                //}

                //关闭对象
                pptPresentation.Close();
            }
            catch (Exception ex)
            {

                throw;
            }
        }

2.ApplicationClass方式转换文章来源地址https://www.toymoban.com/news/detail-733472.html


        /// <summary>
        /// Microsoft.Office.Interop.PowerPoint
        /// 把PowerPoing文件转换成PDF格式文件
        /// </summary>
        /// <param name="pptPath">源文件路径</param>
        /// <param name="pdfPath">目标文件路径</param>
        /// <returns>true=转换成功</returns>
        public static bool PPTConvertToPDF(string pptPath, string pdfPath)
        {
            bool result;

            pdfPath = pdfPath.Replace('/', '\\');
            Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType targetFileType = Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsPDF;
            object missing = Type.Missing;
            Microsoft.Office.Interop.PowerPoint.ApplicationClass application = null;
            Microsoft.Office.Interop.PowerPoint.Presentation persentation = null;
            try
            {
                application = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();
                persentation = application.Presentations.Open(pptPath, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);
                persentation.SaveAs(pdfPath, targetFileType, Microsoft.Office.Core.MsoTriState.msoTrue);

                result = true;
            }
            catch (Exception ex)
            {
                result = false;
            }
            finally
            {
                if (persentation != null)
                {
                    persentation.Close();
                    persentation = null;
                }
                if (application != null)
                {
                    application.Quit();
                    application = null;
                }
                GC.Collect();
                GC.WaitForPendingFinalizers();
                GC.Collect();
                GC.WaitForPendingFinalizers();
            }
            return result;
        }

使用第三方插件 Spire.Presentation 实现转换


        /// <summary>
        /// Spire.Presentation 正版需要付费
        /// </summary>
        /// <param name="pptPath"></param>
        /// <param name="pdfPath"></param>
        public static void pptToPdf(string pptPath, string pdfPath)
        {
            Spire.Presentation.Presentation presentation = new Spire.Presentation.Presentation();
            presentation.LoadFromFile(pptPath);
            presentation.SaveToFile(pdfPath, Spire.Presentation.FileFormat.PDF);
        }

使用第三方插件 Aspose.Slides 实现转换


        public const string Key =
            "PExpY2Vuc2U+DQogIDxEYXRhPg0KICAgIDxMaWNlbnNlZFRvPkFzcG9zZSBTY290bGFuZCB" +
            "UZWFtPC9MaWNlbnNlZFRvPg0KICAgIDxFbWFpbFRvPmJpbGx5Lmx1bmRpZUBhc3Bvc2UuY2" +
            "9tPC9FbWFpbFRvPg0KICAgIDxMaWNlbnNlVHlwZT5EZXZlbG9wZXIgT0VNPC9MaWNlbnNlV" +
            "HlwZT4NCiAgICA8TGljZW5zZU5vdGU+TGltaXRlZCB0byAxIGRldmVsb3BlciwgdW5saW1p" +
            "dGVkIHBoeXNpY2FsIGxvY2F0aW9uczwvTGljZW5zZU5vdGU+DQogICAgPE9yZGVySUQ+MTQ" +
            "wNDA4MDUyMzI0PC9PcmRlcklEPg0KICAgIDxVc2VySUQ+OTQyMzY8L1VzZXJJRD4NCiAgIC" +
            "A8T0VNPlRoaXMgaXMgYSByZWRpc3RyaWJ1dGFibGUgbGljZW5zZTwvT0VNPg0KICAgIDxQc" +
            "m9kdWN0cz4NCiAgICAgIDxQcm9kdWN0PkFzcG9zZS5Ub3RhbCBmb3IgLk5FVDwvUHJvZHVj" +
            "dD4NCiAgICA8L1Byb2R1Y3RzPg0KICAgIDxFZGl0aW9uVHlwZT5FbnRlcnByaXNlPC9FZGl" +
            "0aW9uVHlwZT4NCiAgICA8U2VyaWFsTnVtYmVyPjlhNTk1NDdjLTQxZjAtNDI4Yi1iYTcyLT" +
            "djNDM2OGYxNTFkNzwvU2VyaWFsTnVtYmVyPg0KICAgIDxTdWJzY3JpcHRpb25FeHBpcnk+M" +
            "jAxNTEyMzE8L1N1YnNjcmlwdGlvbkV4cGlyeT4NCiAgICA8TGljZW5zZVZlcnNpb24+My4w" +
            "PC9MaWNlbnNlVmVyc2lvbj4NCiAgICA8TGljZW5zZUluc3RydWN0aW9ucz5odHRwOi8vd3d" +
            "3LmFzcG9zZS5jb20vY29ycG9yYXRlL3B1cmNoYXNlL2xpY2Vuc2UtaW5zdHJ1Y3Rpb25zLm" +
            "FzcHg8L0xpY2Vuc2VJbnN0cnVjdGlvbnM+DQogIDwvRGF0YT4NCiAgPFNpZ25hdHVyZT5GT" +
            "zNQSHNibGdEdDhGNTlzTVQxbDFhbXlpOXFrMlY2RThkUWtJUDdMZFRKU3hEaWJORUZ1MXpP" +
            "aW5RYnFGZkt2L3J1dHR2Y3hvUk9rYzF0VWUwRHRPNmNQMVpmNkowVmVtZ1NZOGkvTFpFQ1R" +
            "Hc3pScUpWUVJaME1vVm5CaHVQQUprNWVsaTdmaFZjRjhoV2QzRTRYUTNMemZtSkN1YWoyTk" +
            "V0ZVJpNUhyZmc9PC9TaWduYXR1cmU+DQo8L0xpY2Vuc2U+";
        //去掉水印
        //new Aspose.Slides.License().SetLicense(new MemoryStream(Convert.FromBase64String(Key)));

        /// <summary>
        /// Aspose.Slides 正版需要付费
        /// ppt文件转化为pdf文件  AsposepptToPdf
        /// </summary>
        /// <param name="pptPath"></param>
        /// <param name="pdfPath"></param>
        /// <returns></returns>
        public static bool AsposepptToPdf(string pptPath, string pdfPath)
        {
            try
            {
                new Aspose.Slides.License().SetLicense(new MemoryStream(Convert.FromBase64String(Key)));
                Aspose.Slides.Presentation ppt = new Aspose.Slides.Presentation(pptPath);
                FileStream fileOS = new FileStream(pdfPath, FileMode.Create);
                ppt.Save(fileOS, Aspose.Slides.Export.SaveFormat.Pdf);
                return true;

            }
            catch (Exception ex)
            {
                return false;
            }
        }

ppt转换帮助类

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;

namespace TTApi.Methods
{
    /// <summary>
    /// Aspose.Slides v:15.1.0
    /// Spire.Presentation
    /// Microsoft.Office.Interop.PowerPoint
    /// ppt转换为pdf
    /// </summary>
    public class PresentationHelper
    {
        public const string Key =
            "PExpY2Vuc2U+DQogIDxEYXRhPg0KICAgIDxMaWNlbnNlZFRvPkFzcG9zZSBTY290bGFuZCB" +
            "UZWFtPC9MaWNlbnNlZFRvPg0KICAgIDxFbWFpbFRvPmJpbGx5Lmx1bmRpZUBhc3Bvc2UuY2" +
            "9tPC9FbWFpbFRvPg0KICAgIDxMaWNlbnNlVHlwZT5EZXZlbG9wZXIgT0VNPC9MaWNlbnNlV" +
            "HlwZT4NCiAgICA8TGljZW5zZU5vdGU+TGltaXRlZCB0byAxIGRldmVsb3BlciwgdW5saW1p" +
            "dGVkIHBoeXNpY2FsIGxvY2F0aW9uczwvTGljZW5zZU5vdGU+DQogICAgPE9yZGVySUQ+MTQ" +
            "wNDA4MDUyMzI0PC9PcmRlcklEPg0KICAgIDxVc2VySUQ+OTQyMzY8L1VzZXJJRD4NCiAgIC" +
            "A8T0VNPlRoaXMgaXMgYSByZWRpc3RyaWJ1dGFibGUgbGljZW5zZTwvT0VNPg0KICAgIDxQc" +
            "m9kdWN0cz4NCiAgICAgIDxQcm9kdWN0PkFzcG9zZS5Ub3RhbCBmb3IgLk5FVDwvUHJvZHVj" +
            "dD4NCiAgICA8L1Byb2R1Y3RzPg0KICAgIDxFZGl0aW9uVHlwZT5FbnRlcnByaXNlPC9FZGl" +
            "0aW9uVHlwZT4NCiAgICA8U2VyaWFsTnVtYmVyPjlhNTk1NDdjLTQxZjAtNDI4Yi1iYTcyLT" +
            "djNDM2OGYxNTFkNzwvU2VyaWFsTnVtYmVyPg0KICAgIDxTdWJzY3JpcHRpb25FeHBpcnk+M" +
            "jAxNTEyMzE8L1N1YnNjcmlwdGlvbkV4cGlyeT4NCiAgICA8TGljZW5zZVZlcnNpb24+My4w" +
            "PC9MaWNlbnNlVmVyc2lvbj4NCiAgICA8TGljZW5zZUluc3RydWN0aW9ucz5odHRwOi8vd3d" +
            "3LmFzcG9zZS5jb20vY29ycG9yYXRlL3B1cmNoYXNlL2xpY2Vuc2UtaW5zdHJ1Y3Rpb25zLm" +
            "FzcHg8L0xpY2Vuc2VJbnN0cnVjdGlvbnM+DQogIDwvRGF0YT4NCiAgPFNpZ25hdHVyZT5GT" +
            "zNQSHNibGdEdDhGNTlzTVQxbDFhbXlpOXFrMlY2RThkUWtJUDdMZFRKU3hEaWJORUZ1MXpP" +
            "aW5RYnFGZkt2L3J1dHR2Y3hvUk9rYzF0VWUwRHRPNmNQMVpmNkowVmVtZ1NZOGkvTFpFQ1R" +
            "Hc3pScUpWUVJaME1vVm5CaHVQQUprNWVsaTdmaFZjRjhoV2QzRTRYUTNMemZtSkN1YWoyTk" +
            "V0ZVJpNUhyZmc9PC9TaWduYXR1cmU+DQo8L0xpY2Vuc2U+";
        //去掉水印
        //new Aspose.Slides.License().SetLicense(new MemoryStream(Convert.FromBase64String(Key)));

        /// <summary>
        /// Aspose.Slides 正版需要付费
        /// ppt文件转化为pdf文件  AsposepptToPdf
        /// </summary>
        /// <param name="pptPath"></param>
        /// <param name="pdfPath"></param>
        /// <returns></returns>
        public static bool AsposepptToPdf(string pptPath, string pdfPath)
        {
            try
            {
                new Aspose.Slides.License().SetLicense(new MemoryStream(Convert.FromBase64String(Key)));
                Aspose.Slides.Presentation ppt = new Aspose.Slides.Presentation(pptPath);
                FileStream fileOS = new FileStream(pdfPath, FileMode.Create);
                ppt.Save(fileOS, Aspose.Slides.Export.SaveFormat.Pdf);
                return true;

            }
            catch (Exception ex)
            {
                return false;
            }
        }


        /// <summary>
        /// Spire.Presentation 正版需要付费
        /// </summary>
        /// <param name="pptPath"></param>
        /// <param name="pdfPath"></param>
        public static void pptToPdf(string pptPath, string pdfPath)
        {
            Spire.Presentation.Presentation presentation = new Spire.Presentation.Presentation();
            presentation.LoadFromFile(pptPath);
            presentation.SaveToFile(pdfPath, Spire.Presentation.FileFormat.PDF);
        }


        /// <summary>
        /// Microsoft.Office.Interop.PowerPoint
        /// 使用第三方软件 office
        /// </summary>
        /// <param name="pptPath">需要转换的ppt文件路径</param>
        /// <param name="pdfPath">转换后的路径</param>
        public static void OfferPptToPdf(string pptPath, string pdfPath)
        {
            try
            {
                pdfPath=pdfPath.Replace('/', '\\');
                //创建对象 并且打开ppt文件
                Microsoft.Office.Interop.PowerPoint.Application pptApplication = new Microsoft.Office.Interop.PowerPoint.Application();
                Microsoft.Office.Interop.PowerPoint.Presentation pptPresentation = pptApplication.Presentations.Open(pptPath, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);

                //if (!File.Exists(newfilePath))//不存在
                //{
                //ppt文件 保存为pdf文件
                pptPresentation.SaveAs(pdfPath, Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsPDF, Microsoft.Office.Core.MsoTriState.msoFalse);
                //}

                //关闭对象
                pptPresentation.Close();
            }
            catch (Exception ex)
            {

                throw;
            }
        }


        /// <summary>
        /// Microsoft.Office.Interop.PowerPoint
        /// 把PowerPoing文件转换成PDF格式文件
        /// </summary>
        /// <param name="pptPath">源文件路径</param>
        /// <param name="pdfPath">目标文件路径</param>
        /// <returns>true=转换成功</returns>
        public static bool PPTConvertToPDF(string pptPath, string pdfPath)
        {
            bool result;

            pdfPath = pdfPath.Replace('/', '\\');
            Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType targetFileType = Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsPDF;
            object missing = Type.Missing;
            Microsoft.Office.Interop.PowerPoint.ApplicationClass application = null;
            Microsoft.Office.Interop.PowerPoint.Presentation persentation = null;
            try
            {
                application = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();
                persentation = application.Presentations.Open(pptPath, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);
                persentation.SaveAs(pdfPath, targetFileType, Microsoft.Office.Core.MsoTriState.msoTrue);

                result = true;
            }
            catch (Exception ex)
            {
                result = false;
            }
            finally
            {
                if (persentation != null)
                {
                    persentation.Close();
                    persentation = null;
                }
                if (application != null)
                {
                    application.Quit();
                    application = null;
                }
                GC.Collect();
                GC.WaitForPendingFinalizers();
                GC.Collect();
                GC.WaitForPendingFinalizers();
            }
            return result;
        }

    }
}

到了这里,关于C# ppt文件转换为pdf文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • c#,将pdf文件转换成图片文件

    本文采用Adobe Acrobat9.0的COM组件,将Pdf文件的每一页转换成对应的图片文件。 开发环境:VS2010,.Net Framework4.0,Adobe Acrobat9.0。 工程中添加COM引用:Adobe Acrobat 9.0 Type Library(必须装了Adobe Acrobat9.0才会有)。 思路: 1)CAcroPDDoc:Acrobat文档对象。 2)CAcroPDPage:页对象。 3)CAcroR

    2024年02月04日
    浏览(44)
  • aspose-words、itextpdf完美解决java将word、excel、ppt、图片转换为pdf文件

    我是 傲骄鹿先生 ,沉淀、学习、分享、成长。 如果你觉得文章内容还可以的话,希望不吝您的「一键三连」,文章里面有不足的地方希望各位在评论区补充疑惑、见解以及面试中遇到的奇葩问法 面对日常开发过程中,将各种文件转换为pdf文件的问题,总是让人头疼,这次终

    2024年02月03日
    浏览(66)
  • C# 将HTML网页、HTML字符串转换为PDF文件

    将 HTML 转换为 PDF 可实现格式保留、可靠打印、文档归档等多种用途,满足不同领域和情境下的需求。本文将通过以下两个示例,演示如何使用第三方库 Spire.PDF for .NET 和 QT 插件在 C# 中将 Html 网页( URL )或 HTML 字符串转为 PDF 文件。 HTML转PDF所需工具: 1. Spire.PDF for .NET 首先

    2024年01月25日
    浏览(40)
  • 【已解决】PPT不能转换成PDF文档怎么办?

    PPT可以转换成PDF文档,只需要点击PPT菜单页面中的【文件】选项,再点击【导出】即可转换,如果转换时发现【导出】选项不可选,无法完成转换怎么办?以下3种方法可以试试! 出现上面这种情况,我们可以看下PPT是否正处于“只读模式”,也就是PPT设置了限制保护,在打

    2024年02月06日
    浏览(56)
  • pdf怎样转换成ppt格式?分享简单快捷的方法!

    PDF和PPT是两种常见的文件格式,它们在使用场景上有所不同。PDF适合单独阅读和查看,而PPT则更适合在多人演讲时进行演示。有时候我们需要将PDF文件转换为PPT格式,以便进行演示、分享或修改。这在教育培训行业尤其常见,教师经常需要将PDF格式的课件转换为PPT幻灯片,以

    2024年02月12日
    浏览(54)
  • 仅需三行代码! C# 快速实现PDF转PPT

    一般在会议、教学或培训活动中,我们都会选择PPT文档来进行内容展示。与PDF文档相比,PPT文档具有较强的可编辑性,可以随时增删元素,并且还可以设置丰富多样的动画效果来吸引观众注意。那么如何通过C#将PDF文档转为PPT文档呢?本文将教大家仅使用3行代码就实现这一功

    2024年02月05日
    浏览(35)
  • 免费批量ppt转pdf?一个方法教你完美转换

    随着科技的不断发展,电子文档的使用越来越普遍。在商业、教育和个人领域,我们经常需要将PPT文件转换为PDF格式,以便更方便地共享和存档。幸运的是,现在有许多在线工具和软件可以帮助我们轻松地完成免费批量ppt转pdf。下面将介绍一款实用的软件工具。 软件介绍:

    2024年02月12日
    浏览(49)
  • 在java中如何使用openOffice进行格式转换,word,excel,ppt,pdf互相转换

    1.首先需要下载并安装openOffice,下载地址为: Apache OpenOffice download | SourceForge.net 2.安装后,可以测试下是否可用; 3.build.gradle中引入依赖: 4.创建工具类,启动openOffice服务的方法 5.结束openOffice服务的方法 7.在测试方法中进行格式转换,如,他可以是任意类型转换,如excel转换

    2024年02月14日
    浏览(57)
  • 有没有免费格式转换工具推荐?PDF转化为PPT的方法

    在当今职场生活中,掌握文件格式转换技能变得异常重要。将PDF文档转换为PPT格式可以在演讲、报告等场合更好地展示和传达信息,为我们的专业形象增添亮点,接下来我们可以一起来看一下“有没有免费格式转换工具推荐?PDF转化为PPT的方法”相关的资讯吧。 有没有免费格

    2024年02月12日
    浏览(59)
  • 如何使用 PowerPoint 2021 制作演示文稿(PPT)?

    软件安装: 办公神器office2021安装教程,让你快速上手_正经人_____的博客-CSDN博客   引言         PowerPoint 是一款非常常用的演示文稿制作工具,它可以帮助您创建漂亮的幻灯片,展示您的想法和信息。如果您是 PowerPoint 的新手,下面是一些入门指南,以帮助您使用 Powe

    2024年02月10日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包