• C# Work PPT to PDF


    //// <summary>
    /// 把ppt文件转换成pdf文件2
    /// </summary>
    /// <param name="sourcePath">需要转换的文件路径和文件名称</param>
    /// <param name="targetPath">转换完成后的文件的路径和文件名名称</param>
    /// <returns>成功返回true,失败返回false</returns>
    public static bool PPTConvertToPDF(string sourcePath, string targetPath)
    {
        bool result;
        PowerPoint.PpSaveAsFileType ppSaveAsFileType = PowerPoint.PpSaveAsFileType.ppSaveAsPDF;//转换成pdf
        object missing = Type.Missing;
        Microsoft.Office.Interop.PowerPoint.ApplicationClass application = null;
        PowerPoint.Presentation persentation = null;
        try
        {
            application = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();
            persentation = application.Presentations.Open(sourcePath, MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoFalse);
            if (persentation != null)
            {
                persentation.SaveAs(targetPath, ppSaveAsFileType, MsoTriState.msoTrue);
            }
            result = true;
        }
        catch
        {
            result = false;
        }
        finally
        {
            if (persentation != null)
            {
                persentation.Close();
                persentation = null;
            }
            if (application != null)
            {
                application.Quit();
                application = null;
            }
        }
        return result;
    }
    
    //string mac = Interaction.InputBox("请输入MAC", "输入MAC", "", 100, 100);
    //// <summary>
    /// 把Word文件转换成pdf文件2
    /// </summary>
    /// <param name="sourcePath">需要转换的文件路径和文件名称</param>
    /// <param name="targetPath">转换完成后的文件的路径和文件名名称</param>
    /// <returns>成功返回true,失败返回false</returns>
    public bool WordToPdf(object sourcePath, string targetPath)
    {
        bool result = false;
        WdExportFormat wdExportFormatPDF = WdExportFormat.wdExportFormatPDF;
        object missing = Type.Missing;
        Microsoft.Office.Interop.Word.ApplicationClass applicationClass = null;
        Microsoft.Office.Interop.Word.Document document = null;
        try
        {
            applicationClass = new Microsoft.Office.Interop.Word.ApplicationClass();
            document = applicationClass.Documents.Open(ref sourcePath, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
            if (document != null)
            {
                document.ExportAsFixedFormat(targetPath, wdExportFormatPDF, false, WdExportOptimizeFor.wdExportOptimizeForPrint, WdExportRange.wdExportAllDocument, 0, 0, WdExportItem.wdExportDocumentContent, true, true, WdExportCreateBookmarks.wdExportCreateWordBookmarks, true, true, false, ref missing);
            }
            result = true;
        }
        catch
        {
            result = false;
        }
        finally
        {
            if (document != null)
            {
                document.Close(ref missing, ref missing, ref missing);
                document = null;
            }
            if (applicationClass != null)
            {
                applicationClass.Quit(ref missing, ref missing, ref missing);
                applicationClass = null;
            }
        }
        return result;
    }
    /// <summary>
    /// 打开pdf文件方法
    /// </summary>
    /// <param name="p"></param>
    /// <param name="inFilePath">文件路径及文件名</param>
    public static void Priview(System.Web.UI.Page p, string inFilePath)
    {
        p.Response.ContentType = "Application/pdf";
    
        string fileName = inFilePath.Substring(inFilePath.LastIndexOf('\') + 1);
        p.Response.AddHeader("content-disposition", "filename=" + fileName);
        p.Response.WriteFile(inFilePath);
        p.Response.End();
    }
  • 相关阅读:
    Java转大数据开发全套视频资料
    Java注解Annotation的用法
    SpringBoot集成CAS单点登录,SSO单点登录,CAS单点登录(视频资料分享篇)
    零基础如何学习Java和web前端
    如何看待B站疑似源码泄漏的问题?
    如何自学编程,零基础适合学习Java或者Web前端吗,非科班的能学java吗?
    Spring中常用的注解,你知道几个呢?
    学习分布式系统需要怎样的知识?
    程序员如何学习互联网前言技术呢,我给你10个建议
    回看面试中的这些坑,你踩过几个?
  • 原文地址:https://www.cnblogs.com/ilookbo/p/4976546.html
Copyright © 2020-2023  润新知