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

C#利用ms office實(shí)現(xiàn)office轉(zhuǎn)pdf的示例代碼

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

前提

安裝office 2019
安裝vs 2022

新建項(xiàng)目

引入4個(gè)com包

在這里插入圖片描述

在這里插入圖片描述

編寫(xiě)代碼

代碼結(jié)構(gòu)

在這里插入圖片描述

代碼如下

using Microsoft.Office.Interop.Excel;

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

        static void WordToPdf()
        {
            // Word應(yīng)用程序?qū)ο? 
            var wordApp = new Microsoft.Office.Interop.Word.Application();
            Microsoft.Office.Interop.Word.Document? doc = null;
            string root = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase ?? "";
            try
            {
                // 設(shè)置為不可見(jiàn)模式  
                wordApp.Visible = false;
                var docPath = Path.Combine(root, "Document", "office.docx");
                // 打開(kāi)一個(gè)現(xiàn)有的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);

                // 關(guān)閉文檔和Word應(yīng)用  
                doc.Close();
                wordApp.Quit();

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

        static void ExcelToPdf()
        {
            // Excel應(yīng)用程序?qū)ο? 
            var excelApp = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook workBook = null;
            string root = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase ?? "";
            try
            {
                // 設(shè)置為不可見(jiàn)模式  
                excelApp.Visible = false;
                var docPath = Path.Combine(root, "Document", "office.xlsx");
                // 打開(kāi)一個(gè)現(xiàn)有的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);

                // 關(guān)閉文檔和Word應(yīng)用  
                workBook.Close();
                excelApp.Quit();

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

        static void PPTToPdf()
        {
            // Excel應(yīng)用程序?qū)ο? 
            var pptApp = new Microsoft.Office.Interop.PowerPoint.Application();
            Microsoft.Office.Interop.PowerPoint.Presentation presentation = null;
            string root = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase ?? "";
            try
            {
                // 設(shè)置為不可見(jiàn)模式  
                pptApp.Visible = Microsoft.Office.Core.MsoTriState.msoFalse;
                var docPath = Path.Combine(root, "Document", "office.pptx");
                // 打開(kāi)一個(gè)現(xiàn)有的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);

                // 關(guān)閉文檔和Word應(yīng)用  
                presentation.Close();
                pptApp.Quit();

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

測(cè)試

在這里插入圖片描述

以上就是C#利用ms office實(shí)現(xiàn)office轉(zhuǎn)pdf的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于C# ms office實(shí)現(xiàn)office轉(zhuǎn)pdf的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • SuperSocket封裝成C#類(lèi)庫(kù)的步驟

    SuperSocket封裝成C#類(lèi)庫(kù)的步驟

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

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

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

    C#使用jQuery實(shí)現(xiàn)無(wú)刷新評(píng)論提交的方法

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

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

    本篇文章是對(duì)WPF客戶(hù)端讀取高清圖片卡以及縮略圖的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C#操作圖片讀取和存儲(chǔ)SQLserver實(shí)現(xiàn)代碼

    C#操作圖片讀取和存儲(chǔ)SQLserver實(shí)現(xiàn)代碼

    用C#將Image轉(zhuǎn)換成byte[]并插入數(shù)據(jù)庫(kù)/將圖片數(shù)據(jù)從SQLserver中取出來(lái)并顯示到pictureBox控件上,接下來(lái)將為你詳細(xì)介紹下實(shí)現(xiàn)步驟,感興趣的你可以參考下
    2013-03-03
  • c#使用資源文件的示例

    c#使用資源文件的示例

    對(duì)于資源文件的使用,說(shuō)白點(diǎn)就是通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換,將資源文件里的數(shù)據(jù)強(qiáng)行的轉(zhuǎn)換成你需要的,換種方式說(shuō),就是你原來(lái)存進(jìn)去什么,就用什么類(lèi)型拿出來(lái),下面我們學(xué)習(xí)一下c#使用資源文件的方法
    2014-01-01
  • C#中使用JSON.NET實(shí)現(xiàn)JSON、XML相互轉(zhuǎn)換

    C#中使用JSON.NET實(shí)現(xiàn)JSON、XML相互轉(zhuǎn)換

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

    分享兩種實(shí)現(xiàn)Winform程序的多語(yǔ)言支持的多種解決方案

    本篇文章主要介紹了分享兩種實(shí)現(xiàn)Winform程序的多語(yǔ)言支持的多種解決方案,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。
    2017-02-02
  • 在C#中獲取端口號(hào)與系統(tǒng)信息的高效實(shí)踐

    在C#中獲取端口號(hào)與系統(tǒng)信息的高效實(shí)踐

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

    C#中AS和IS關(guān)鍵字的用法

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

最新評(píng)論

来宾市| 光山县| 长宁县| 镇宁| 浦县| 阜阳市| 澄江县| 高清| 金阳县| 迭部县| 定结县| 夏邑县| 平安县| 安宁市| 沅陵县| 新蔡县| 遂宁市| 迭部县| 泾川县| 西乌珠穆沁旗| 太湖县| 溧阳市| 眉山市| 宁都县| 牙克石市| 高陵县| 宁陵县| 宁河县| 清新县| 沁源县| 塔河县| 阳城县| 新野县| 藁城市| 五莲县| 乐昌市| 武穴市| 建昌县| 泾源县| 盐津县| 隆子县|