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();
}
相關文章
相關標籤/搜索