最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#利用ms office實現office轉pdf的示例代碼

 更新時間:2024年09月03日 11:17:00   作者:假裝我不帥  
這篇文章主要介紹了C#利用ms office實現office轉pdf的詳細方法,文中通過代碼示例和圖文講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下

前提

安裝office 2019
安裝vs 2022

新建項目

引入4個com包

在這里插入圖片描述

在這里插入圖片描述

編寫代碼

代碼結構

在這里插入圖片描述

代碼如下

using Microsoft.Office.Interop.Excel;

namespace UseMsOffice
{
    internal class Program
    {
        static void Main(string[] args)
        {
            WordToPdf();
            ExcelToPdf();
            PPTToPdf();
        }

        static void WordToPdf()
        {
            // Word應用程序對象  
            var wordApp = new Microsoft.Office.Interop.Word.Application();
            Microsoft.Office.Interop.Word.Document? doc = null;
            string root = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase ?? "";
            try
            {
                // 設置為不可見模式  
                wordApp.Visible = false;
                var docPath = Path.Combine(root, "Document", "office.docx");
                // 打開一個現有的Word文檔  
                doc = wordApp.Documents.Open(docPath);

                // 將文檔另存為PDF  
                string pdfPath = Path.Combine(root, $"{DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss")}_office.pdf");
                doc.ExportAsFixedFormat(pdfPath, Microsoft.Office.Interop.Word.WdExportFormat.wdExportFormatPDF);

                // 關閉文檔和Word應用  
                doc.Close();
                wordApp.Quit();

                Console.WriteLine("文檔已成功轉換為PDF格式。");
            }
            catch (Exception ex)
            {
                Console.WriteLine("發(fā)生錯誤:" + ex.Message);
            }
            finally
            {
                // 釋放COM對象  
                System.Runtime.InteropServices.Marshal.ReleaseComObject(doc);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(wordApp);
                doc = null;
                wordApp = null;
            }
        }

        static void ExcelToPdf()
        {
            // Excel應用程序對象  
            var excelApp = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook workBook = null;
            string root = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase ?? "";
            try
            {
                // 設置為不可見模式  
                excelApp.Visible = false;
                var docPath = Path.Combine(root, "Document", "office.xlsx");
                // 打開一個現有的Word文檔  
                workBook = excelApp.Workbooks.Open(docPath);

                // 將文檔另存為PDF  
                string pdfPath = Path.Combine(root, $"{DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss")}_office.pdf");
                workBook.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, pdfPath);

                // 關閉文檔和Word應用  
                workBook.Close();
                excelApp.Quit();

                Console.WriteLine("文檔已成功轉換為PDF格式。");
            }
            catch (Exception ex)
            {
                Console.WriteLine("發(fā)生錯誤:" + ex.Message);
            }
            finally
            {
                // 釋放COM對象  
                System.Runtime.InteropServices.Marshal.ReleaseComObject(workBook);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp);
                workBook = null;
                excelApp = null;
            }
        }

        static void PPTToPdf()
        {
            // Excel應用程序對象  
            var pptApp = new Microsoft.Office.Interop.PowerPoint.Application();
            Microsoft.Office.Interop.PowerPoint.Presentation presentation = null;
            string root = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase ?? "";
            try
            {
                // 設置為不可見模式  
                pptApp.Visible = Microsoft.Office.Core.MsoTriState.msoFalse;
                var docPath = Path.Combine(root, "Document", "office.pptx");
                // 打開一個現有的Word文檔  
                presentation = pptApp.Presentations.Open(docPath);

                // 將文檔另存為PDF  
                string pdfPath = Path.Combine(root, $"{DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss")}_office.pdf");
                presentation.ExportAsFixedFormat(pdfPath,Microsoft.Office.Interop.PowerPoint.PpFixedFormatType.ppFixedFormatTypePDF);

                // 關閉文檔和Word應用  
                presentation.Close();
                pptApp.Quit();

                Console.WriteLine("文檔已成功轉換為PDF格式。");
            }
            catch (Exception ex)
            {
                Console.WriteLine("發(fā)生錯誤:" + ex.Message);
            }
            finally
            {
                // 釋放COM對象  
                System.Runtime.InteropServices.Marshal.ReleaseComObject(presentation);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(pptApp);
                presentation = null;
                pptApp = null;
            }
        }
    }
}

測試

在這里插入圖片描述

以上就是C#利用ms office實現office轉pdf的示例代碼的詳細內容,更多關于C# ms office實現office轉pdf的資料請關注腳本之家其它相關文章!

相關文章

  • SuperSocket封裝成C#類庫的步驟

    SuperSocket封裝成C#類庫的步驟

    這篇文章主要介紹了SuperSocket封裝成C#類庫的步驟,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-01-01
  • Unity?UGUI的Dropdown下拉菜單組件使用詳解

    Unity?UGUI的Dropdown下拉菜單組件使用詳解

    這篇文章主要為大家介紹了Unity?UGUI的Dropdown下拉菜單組件使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • C#使用jQuery實現無刷新評論提交的方法

    C#使用jQuery實現無刷新評論提交的方法

    這篇文章主要介紹了C#使用jQuery實現無刷新評論提交的方法,涉及C#結合jQuery進行Ajax操作的相關技巧,非常具有實用價值,需要的朋友可以參考下
    2015-05-05
  • 深入分析WPF客戶端讀取高清圖片卡以及縮略圖的解決方法詳解

    深入分析WPF客戶端讀取高清圖片卡以及縮略圖的解決方法詳解

    本篇文章是對WPF客戶端讀取高清圖片卡以及縮略圖的解決方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C#操作圖片讀取和存儲SQLserver實現代碼

    C#操作圖片讀取和存儲SQLserver實現代碼

    用C#將Image轉換成byte[]并插入數據庫/將圖片數據從SQLserver中取出來并顯示到pictureBox控件上,接下來將為你詳細介紹下實現步驟,感興趣的你可以參考下
    2013-03-03
  • c#使用資源文件的示例

    c#使用資源文件的示例

    對于資源文件的使用,說白點就是通過強制類型轉換,將資源文件里的數據強行的轉換成你需要的,換種方式說,就是你原來存進去什么,就用什么類型拿出來,下面我們學習一下c#使用資源文件的方法
    2014-01-01
  • C#中使用JSON.NET實現JSON、XML相互轉換

    C#中使用JSON.NET實現JSON、XML相互轉換

    這篇文章主要介紹了C#中使用JSON.NET實現JSON、XML相互轉換的相關代碼及示例,需要的朋友可以參考下
    2015-11-11
  • 分享兩種實現Winform程序的多語言支持的多種解決方案

    分享兩種實現Winform程序的多語言支持的多種解決方案

    本篇文章主要介紹了分享兩種實現Winform程序的多語言支持的多種解決方案,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧。
    2017-02-02
  • 在C#中獲取端口號與系統信息的高效實踐

    在C#中獲取端口號與系統信息的高效實踐

    在現代軟件開發(fā)中,尤其是系統管理、運維、監(jiān)控和性能優(yōu)化等場景中,了解計算機硬件和網絡的狀態(tài)至關重要,C# 作為一種廣泛應用的編程語言,提供了豐富的 API 來幫助開發(fā)者獲取計算機的硬件信息和網絡狀態(tài),本篇博客將帶你深入探索如何在 C# 中高效獲取端口號和系統信息
    2025-01-01
  • C#中AS和IS關鍵字的用法

    C#中AS和IS關鍵字的用法

    這篇文章主要介紹了C#中AS和IS關鍵字的用法的相關資料,需要的朋友可以參考下
    2016-03-03

最新評論

凤山县| 沁源县| 海安县| 泾源县| 江门市| 全椒县| 海城市| 资兴市| 水富县| 白银市| 清新县| 泰州市| 龙里县| 高淳县| 民勤县| 新巴尔虎右旗| 葵青区| 安顺市| 西华县| 二连浩特市| 乾安县| 荣成市| 图片| 象山县| 金堂县| 白河县| 洛扎县| 麟游县| 左贡县| 资阳市| 屯昌县| 泰安市| 哈巴河县| 滦南县| 贺兰县| 玛纳斯县| 太谷县| 丰宁| 定边县| 武城县| 古丈县|