• Word、Excel、PPT文件转PDF文件(C#)


    一、添加依赖

    wpf项目引用Microsoft.Office.Interop.Excel、Microsoft.Office.Interop.PowerPoint、Microsoft.Office.Interop.Word、Office,依赖文件已经打到源代码包里了。

    二、先定义一些命名空间

    1. using Word = Microsoft.Office.Interop.Word;
    2. using Excel = Microsoft.Office.Interop.Excel;
    3. using PPT = Microsoft.Office.Interop.PowerPoint;

    三、Word转PDF

    1. ///
    2. /// Word转PDF
    3. ///
    4. /// 待转化的Word文件
    5. /// 转换后的pdf文件路径
    6. ///
    7. public static bool ConverterWordToPdf(string strWordPath, string strPdfPath)
    8. {
    9. Word.Application appWord = null;
    10. Word.Document docWord = null;
    11. try
    12. {
    13. appWord = new Word.Application();
    14. docWord = appWord.Documents.Open(strWordPath);
    15. docWord.ExportAsFixedFormat(strPdfPath, Word.WdExportFormat.wdExportFormatPDF);
    16. return true;
    17. }
    18. catch
    19. {
    20. return false;
    21. }
    22. finally
    23. {
    24. if(docWord != null)
    25. {
    26. docWord.Close(false);
    27. }
    28. if(appWord != null)
    29. {
    30. appWord.NormalTemplate.Saved = true;
    31. appWord.Quit(false);
    32. }
    33. }
    34. }

    四、Excel转PDF

    1. public static bool ConverterExcelToPdf(string strExcelPath, string strPdfPath)
    2. {
    3. Excel.Application appExcel = null;
    4. Excel.Workbook docExcel = null;
    5. try
    6. {
    7. appExcel = new Excel.Application();
    8. docExcel = appExcel.Workbooks.Open(strExcelPath, System.Reflection.Missing.Value, true);
    9. docExcel.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF, strPdfPath);
    10. return true;
    11. }
    12. catch
    13. {
    14. return false;
    15. }
    16. finally
    17. {
    18. if (docExcel != null)
    19. {
    20. docExcel.Close(false);
    21. }
    22. if (appExcel != null)
    23. {
    24. appExcel.Quit();
    25. }
    26. }
    27. }

    五、PPT转PDF

    1. public static bool ConverterPPTToPdf(string strPPTPath, string strPdfPath)
    2. {
    3. PPT.Application appPPT = null;
    4. PPT.Presentation pptPresentation = null;
    5. try
    6. {
    7. appPPT = new PPT.Application();
    8. pptPresentation = appPPT.Presentations.Open(strPPTPath,
    9. Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse);
    10. pptPresentation.SaveAs(strPdfPath, PPT.PpSaveAsFileType.ppSaveAsPDF);
    11. return true;
    12. }
    13. catch
    14. {
    15. return false;
    16. }
    17. finally
    18. {
    19. if (pptPresentation != null)
    20. {
    21. pptPresentation.Close();
    22. }
    23. if (appPPT != null)
    24. {
    25. appPPT.Quit();
    26. }
    27. }
    28. }

    六、我写了一个简单的转换代码,源码下载地址如下

    word、excel、ppt转pdf源码地址

    软件运行截图

  • 相关阅读:
    大学四年,我建议你这么学网络安全
    【三维目标检测】CenterPoint(二)
    项目的表单提交,以及页面非常多,该如何处理,开发思路总结
    AR道具贴纸SDK,创新技术解决方案
    Java 序列化和反序列化为什么要实现 Serializable 接口?
    set和map的使用
    Linux 网络编程基础知识
    指定vscode黏贴图片路径(VSCode 1.79 更新)
    空洞卷积详解(输入输出大小分析)
    Parse [5/10/2020 7:05:04 PM] with format [yyyy-MM-dd] error!
  • 原文地址:https://blog.csdn.net/bai2010bingbing/article/details/137132674