C#/VB.NET 在Word轉PDF時生成目錄書籤

2022-06-09 15:00:29

當我們在轉換Word檔案到PDF格式時,想保留Word檔案的標題作為PDF書籤,那麼應該如何操作呢?那麼本文將以C#及VB.NET程式碼為例,介紹如何在Word轉PDF時生成目錄書籤。下面是具體方法和步驟,希望對大家有所幫助。

 

程式環境

本次測試時,在程式中引入Free Spire.Doc for .NET。可通過以下方法參照Spire.Doc.dll檔案:

方法1:將 Free Spire.Doc for .NET 下載到本地,解壓,安裝。安裝完成後,找到安裝路徑下BIN資料夾中的Spire.Doc.dll。然後在Visual Studio中開啟「解決方案資源管理器」,滑鼠右鍵點選「參照」,「新增參照」,將本地路徑BIN資料夾下的dll檔案新增參照至程式。

方法2:通過 NuGet 安裝。可通過以下2種方法安裝:

(1)可以在Visual Studio中開啟「解決方案資源管理器」,滑鼠右鍵點選「參照」,「管理NuGet包」,然後搜尋「Free Spire.Doc」,點選「安裝」。等待程式安裝完成。

(2)將以下內容複製到PM控制檯安裝。

Install-Package FreeSpire.Doc -Version 10.2.0

具體步驟

  •   建立一個範例檔案並用Document.LoadFromFile()方法載入範例檔案。  
  •   設定CreateWordBookmarks為true。
  •   使用標題建立書籤。
  •   使用Word書籤建立書籤。
  •   用Document.SaveToFile()方法將檔案儲存為PDF檔案。

完整程式碼

[C#]

using System;
using System.Windows.Forms;
using Spire.Doc;
using Spire.Doc.Documents;

namespace ToPDFAndCreateBookmarks
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string inputFile = "Article1.docx";
            string outFile = "ToPDFAndCreateBookmarks_out.pdf";
            Document document = new Document();
            //載入範例檔案
            document.LoadFromFile(inputFile);

            ToPdfParameterList parames = new ToPdfParameterList();
            //設定 CreateWordBookmarks 為 true
            parames.CreateWordBookmarks = true;
            ////使用標題建立書籤
            //parames.CreateWordBookmarksUsingHeadings = true;
            //使用word書籤建立書籤
            parames.CreateWordBookmarksUsingHeadings = false;
            //儲存為PDF檔案
            document.SaveToFile(outFile, parames);

[VB.NET]

Imports System
Imports System.Windows.Forms
Imports Spire.Doc
Imports Spire.Doc.Documents

Namespace ToPDFAndCreateBookmarks
    
    Public Class Form1
        Inherits Form
        
        Public Sub New()
            MyBase.New
            InitializeComponent
        End Sub
        
        Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
            Dim inputFile As String = "NewSample1.docx"
            Dim outFile As String = "ToPDFAndCreateBookmarks_out.pdf"
            Dim document As Document = New Document
            '載入範例檔案
            document.LoadFromFile(inputFile)
            Dim parames As ToPdfParameterList = New ToPdfParameterList
            '設定 CreateWordBookmarks 為 true
            parames.CreateWordBookmarks = true
            '''/使用標題建立書籤
            'parames.CreateWordBookmarksUsingHeadings = true;
            '使用word書籤建立書籤
            parames.CreateWordBookmarksUsingHeadings = false
            '儲存為PDF檔案
            document.SaveToFile(outFile, parames)
        End Sub
    End Class
End Namespace

效果圖

注意:測試程式碼中的檔案路徑為程式Debug路徑,僅供參考,檔案路徑可自定義為其他路徑。