亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C# 插入、格式化、刪除Word超鏈接

發布時間:2020-04-09 00:55:54 來源:網絡 閱讀:1880 作者:E_iceblue 欄目:編程語言

超鏈接簡單來講就是內容鏈接,通過設置超鏈接可以實現對象與網頁、站點之間的連接。鏈接目標可以是網頁、圖片、郵件地址、文件夾或者是應用程序。設置鏈接的對象可以是文本或者圖片。在下面的示例中,將講述如何通過使用類庫來添加Word超鏈接。同理,我們也可以格式化超鏈接,例如,設置超鏈接文本顏色,下劃線,鏈接地址等,也可以刪除文檔中已經存在的一些超鏈接,例如:頁眉處的鏈接、正文段落中的鏈接、表格中的鏈接、圖片中的鏈接。以上操作我們都可以通過借助下面的類庫來實現。
內容要點:

  • 添加Word超鏈接
  • 格式化Word超鏈接
  • 刪除Word超鏈接
    工具使用:
  • Free Spire.Doc for .NET 6.3 (社區版)

    1. 添加Word超鏈接

    1.1 添加文本鏈接
    步驟 1 :添加using指令

using System;
using Spire.Doc;
using System.Drawing;
using Spire.Doc.Documents;

步驟 2 :創建文檔

//創建一個Document實例并添加section
Document doc = new Document();
Section section = doc.AddSection();

步驟 3:根據需要設置鏈接到不同對象的超鏈接

//添加指向網址的超鏈接
Paragraph para1 = section.AddParagraph();
para1.AppendHyperlink("www.google.com", "www.google.com", HyperlinkType.WebLink);

//添加指向郵件地址的超鏈接
Paragraph para2 = section.AddParagraph();
para2.AppendHyperlink("mailto:support@e-iceblue.com", "support@e-iceblue.com", HyperlinkType.EMailLink);

//添加指向外部文件的超鏈接
Paragraph para3 = section.AddParagraph();
string filePath = @"C:\Users\Administrator\Desktop\2017NobelPrize.docx";
para3.AppendHyperlink(filePath, "點擊打開文檔", HyperlinkType.FileLink);

步驟 4 :設置段間距

para1.Format.AfterSpacing = 15f;
para2.Format.AfterSpacing = 15f;

步驟 5 :保存文件

doc.SaveToFile("文本超鏈接.docx", FileFormat.Docx2013);

完成代碼后,調試運行程序,生成穩定,如下所示:
C# 插入、格式化、刪除Word超鏈接

全部代碼如下:

using System;
using Spire.Doc;
using System.Drawing;
using Spire.Doc.Documents;

namespace Insert_Word
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建一個Document實例并添加section
            Document doc = new Document();
            Section section = doc.AddSection();

            //添加指向網址的超鏈接
            Paragraph para1 = section.AddParagraph();
            para1.AppendHyperlink("www.google.com", "www.google.com", HyperlinkType.WebLink);

            //添加指向郵件地址的超鏈接
            Paragraph para2 = section.AddParagraph();
            para2.AppendHyperlink("mailto:support@e-iceblue.com", "support@e-iceblue.com", HyperlinkType.EMailLink);

            //添加指向外部文件的超鏈接
            Paragraph para3 = section.AddParagraph();
            string filePath = @"C:\Users\Administrator\Desktop\2017NobelPrize.docx";
            para3.AppendHyperlink(filePath, "點擊打開文檔", HyperlinkType.FileLink);

            //設置段落之間的間距 
            para1.Format.AfterSpacing = 15f;
            para2.Format.AfterSpacing = 15f;
            //保存文檔
            doc.SaveToFile("文本超鏈接.docx", FileFormat.Docx2013);
        }
    }
}

1.2 添加圖片鏈接
步驟 1 :添加using指令

using System;
using Spire.Doc;
using System.Drawing;
using Spire.Doc.Documents;

步驟 2 :創建文檔

Document doc = new Document();
Section section = doc.AddSection();
Paragraph para = section.AddParagraph();

步驟 3 :添加鏈接到圖片

//添加圖片到段落并插入網站鏈接
Image image = Image.FromFile(@"C:\Users\Administrator\Desktop\images\Google.jpg");
Spire.Doc.Fields.DocPicture picture = para.AppendPicture(image);
para.AppendHyperlink("www.google.com", picture, HyperlinkType.WebLink);

步驟 4 :保存文檔

doc.SaveToFile("圖片超鏈接.docx", FileFormat.Docx2013);

測試效果:
C# 插入、格式化、刪除Word超鏈接

2. 設置超鏈接格式

一般情況下,對文本設置超鏈接都是默認的藍色字體,帶有下劃線,在下面的操作中,我們可以自行設置超鏈接的文本字體、字號、顏色、下劃線等。
全部代碼:

using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;

namespace FormatHyperlink
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化一個Docuemtn類對象,并添加section
            Document document = new Document();
            Section section = document.AddSection();

            //添加段落,并設置超鏈接文本和鏈接網址。設置字體、字號、字體顏色、下劃線等。
            Paragraph para = section.AddParagraph();
            para.AppendText("HyperLink: ");
            TextRange txtRange = para.AppendHyperlink("www.google.com", "www.google.com", HyperlinkType.WebLink);
            txtRange.CharacterFormat.FontName = "Times New Roman";
            txtRange.CharacterFormat.FontSize = 14;
            txtRange.CharacterFormat.TextColor = System.Drawing.Color.Green;
            txtRange.CharacterFormat.UnderlineStyle = UnderlineStyle.None;
            //保存并打開文檔
            document.SaveToFile("result1.docx", FileFormat.Docx2013);
            System.Diagnostics.Process.Start("result1.docx");
        }
    }
}

測試效果:
C# 插入、格式化、刪除Word超鏈接

3. 刪除超鏈接

下面的測試文檔中,多處文檔內容包含超鏈接,包括頁眉處的文字超鏈接、正文段落中的文字超鏈接、表格中的圖片超鏈接等,可通過下面的代碼將超鏈接刪除。
測試文檔:
C# 插入、格式化、刪除Word超鏈接

全部代碼步驟:

using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using Spire.Doc.Formatting;
using System.Drawing;

namespace RemoveHyperlink_Doc
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建Word對象并加載文檔
            Document document = new Document();
            document.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.docx");
             //遍歷文檔中所有section
            foreach (Section section in document.Sections)
            {
                //刪除正文里的超鏈接
                foreach (DocumentObject obj in section.Body.ChildObjects)
                {
                    RemoveLinks(obj, document);
                }

                //刪除頁眉頁腳中的超鏈接
                foreach (HeaderFooter hf in section.HeadersFooters)
                {
                    foreach (DocumentObject hfobj in hf.ChildObjects)
                    {
                        RemoveLinks(hfobj, document);
                    }
                }
            }
            //保存文檔
            document.SaveToFile("RemoveLinks.docx", FileFormat.Docx);
            System.Diagnostics.Process.Start("RemoveLinks.docx");
        }
//自定義方法RemoveLinks()刪除段落、表格中的超鏈接
             private static void RemoveLinks(DocumentObject obj,Document document)
            {
                 //刪除段落中的超鏈接
                  RemoveLinksInPara(obj,document);
                 //刪除表格中的超鏈接
                if (obj.DocumentObjectType == DocumentObjectType.Table)
                {
                     foreach (TableRow row in (obj as Table).Rows)
                     {
                         foreach (TableCell cell in row.Cells)
                         {
                             foreach (DocumentObject cobj in cell.ChildObjects)
                            {
                                RemoveLinksInPara(cobj,document);                                 
                            }
                        }
                    }
                }
             }           
//自定義方法RemoveLinksInPara()刪除文檔段落中的所有超鏈接
        private static void RemoveLinksInPara(DocumentObject obj,Document document)        
         {
            //遍歷文檔段落中所有子對象
             if (obj.DocumentObjectType == DocumentObjectType.Paragraph)
              {
                  var objs = (obj as Paragraph).ChildObjects;
                  for (int i = 0; i < objs.Count; i++)
                  {
                     if (objs[i].DocumentObjectType == DocumentObjectType.Field)
                     {
                      //獲取超鏈接域
                       Field field = objs[i] as Field;
                       if (field.Type == FieldType.FieldHyperlink)
                       {
                           //獲取超鏈接的文本或圖片對象
                           DocumentObject dObj = field.NextSibling.NextSibling as DocumentObject;
                           //刪除文本超鏈接,保留文本和樣式
                           if (dObj is TextRange)
                           { 
                               //獲取超鏈接文本樣式
                               CharacterFormat format = (dObj as TextRange).CharacterFormat;
                               format.UnderlineStyle = UnderlineStyle.None;
                               format.TextColor = Color.Black;
                               //創建TextRange并把超鏈接的文本賦予TextRange
                               TextRange tr = new TextRange(document);
                               tr.Text = field.FieldText;
                               //應用樣式
                               tr.ApplyCharacterFormat(format);
                               //刪除文本超鏈接域
                               objs.RemoveAt(i);
                               //重新插入文本
                               objs.Insert(i, tr);
                            }
                              //刪除圖片超鏈接,保留圖片
                              if (dObj is DocPicture) 
                              {
                                  //刪除圖片超鏈接域
                                  objs.RemoveAt(i);
                                  //重新插入圖片
                                  objs.Insert(i, dObj);
                              }
                          }
                      }
                  }
              }
         }
    }
}

測試效果:
C# 插入、格式化、刪除Word超鏈接

以上是本次關于“C#操作Word超鏈接的方法”的全部內容。

如需轉載,請注明出處!!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湘潭县| 黑龙江省| 左权县| 青田县| 拜泉县| 金秀| 遂溪县| 保德县| 乐山市| 海城市| 永顺县| 芮城县| 鄄城县| 双流县| 长武县| 天祝| 云阳县| 桃园县| 固阳县| 七台河市| 甘德县| 孝义市| 陵水| 泽库县| 泾源县| 蒲江县| 青岛市| 平阴县| 府谷县| 应城市| 泗洪县| 岐山县| 宣恩县| 石林| 武鸣县| 濮阳市| 青铜峡市| 苍溪县| 曲周县| 阳新县| 南充市|