DocX開源WORD操作組件的學習系列二


DocX學習系列

DocX開源WORD操作組件的學習系列一 :  http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.html

DocX開源WORD操作組件的學習系列二 :  http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_csharp_005_docx2.html

DocX開源WORD操作組件的學習系列三:  http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_csharp_006_docx3.html

DocX開源WORD操作組件的學習系列四:  http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_csharp_006_docx4.html

1 創建目錄

1.1創建目錄效果圖

目錄結構圖

1.2創建目錄代碼:

   static void AddToc()
        {
            Console.WriteLine("\tAddToc()");

            using (var document = DocX.Create(@"docs\Toc2.docx"))
            {
              
                document.InsertTableOfContents("1 目錄", TableOfContentsSwitches.O | TableOfContentsSwitches.U | TableOfContentsSwitches.Z | TableOfContentsSwitches.H, "Heading1");
               // document.InsertSectionPageBreak();//分頁
                var h1 = document.InsertParagraph("2 測試1");
                h1.StyleName = "Heading1";
                document.InsertParagraph("Some very interesting content here");
                var h2 = document.InsertParagraph("3 測試2");
                h2.StyleName = "Heading1";
                document.InsertParagraph("Some very interesting content here as well");
                var h3 = document.InsertParagraph("3.1 測試3.1");
                h3.StyleName = "Heading2";
                var h4 = document.InsertParagraph("3.1.1 測試3.1.1");
                h4.StyleName = "Heading3";
                var h5 = document.InsertParagraph("4 測試4");
                h5.StyleName = "Heading1";
                document.InsertParagraph("Not so very interesting....");
                document.Save();
            }
        }

 2.添加書簽

2.1添加書簽效果圖

2.2添加書簽代碼:

    private static void Bookmarks()
        {
            Console.WriteLine("\tBookmarks()");

            using (var document = DocX.Create(@"docs\Bookmarks.docx"))
            {
                //添加一個書簽
                var paragraph = document.InsertBookmark("firstBookmark");
                //添加一個段落並填充文本
                var paragraph2 = document.InsertParagraph("This is a paragraph which contains a ");
                //給段落2尾部添加一個書簽,名字為secondBookmark
                paragraph2.AppendBookmark("secondBookmark");
                //給段落2原有文本的基礎上追加文本bookmark
                paragraph2.Append("bookmark");
                //將段落2的secondBookmark的書簽位置插入文本handy
                paragraph2.InsertAtBookmark("handy ", "secondBookmark");

                paragraph2.ReplaceText("which","WHICH");
                //遍歷書簽
                for (var index = 0; index < document.Bookmarks.Count; index++)
                {
                    var item = document.Bookmarks[index];
                    Console.WriteLine(item.Name, item.Paragraph.Text);
                }
                //修改書簽TEXT
                for (var index = 0; index < document.Bookmarks.Count; index++)
                {
                    var item = document.Bookmarks[ index];
                    item.SetText("書簽" + index);
                    Console.WriteLine(item.Name, item.Paragraph.Text);
                }
                document.Save();
                Console.WriteLine("\tCreated: docs\\Bookmarks.docx\n");

            }
        }

 3.插入各種分隔符

        static void HelloWorldInsertHorizontalLine()
        {
            Console.WriteLine("\tHelloWorldInsertHorizontalLine()");

            // Create a new document.
            using (DocX document = DocX.Create(@"docs\HelloWorldInsertHorizontalLine.docx"))
            {
                // Insert a Paragraph into this document.
                Paragraph p = document.InsertParagraph();

                // Append some text and add formatting.
                p.Append("Hello World!^011Hello World!")
                .Font(new Font("Times New Roman"))
                .FontSize(32)
                .Color(WindowsColor.Blue)
                .Bold();
                p.InsertHorizontalLine("double", 6, 1, "auto");
                Paragraph p1 = document.InsertParagraph();
                p1.InsertHorizontalLine("double", 6, 1, "red");
                Paragraph p2 = document.InsertParagraph();
                p2.InsertHorizontalLine("single", 6, 1, "red");
                Paragraph p3 = document.InsertParagraph();
                p3.InsertHorizontalLine("triple", 6, 1, "blue");
                Paragraph p4 = document.InsertParagraph();
                p4.InsertHorizontalLine("double", 3, 10, "red");
                // Save this document to disk.
                document.Save();
                Console.WriteLine("\tCreated: docs\\HelloWorldInsertHorizontalLine.docx\n");
            }
        }

4.插入超鏈接

 private static void Hyperlinks()
        {
            // Create a document.
            using (DocX document = DocX.Create(@"docs\Hyperlinks.docx"))
            {
              
                // Add a hyperlink into the document.
                Hyperlink link1 = document.AddHyperlink("百度一下", new Uri("http://www.baidu.com"));
                Hyperlink link2 = document.AddHyperlink("TOC文檔",new Uri("file:///" + @"E:\soft\DocX-master\Examples\bin\Debug\docs\Toc2.docx".Replace("\\", "/")));
                Uri uri = new Uri("http://www.baidu.com");
                Paragraph p1 = document.InsertParagraph();

                // Append content to the Paragraph
                p1.AppendLine("下面是2個超鏈接").Append(":").Bold();
                p1.AppendLine("百度的: ").AppendHyperlink(link1).Color(WindowsColor.FromArgb(5, 99, 193)).Append(".");
                p1.AppendLine("本地的絕對路徑 :").AppendHyperlink(link2).Color(WindowsColor.FromArgb(5, 99, 193)).Append(".");
                p1.AppendLine();
                document.Save();
                Console.WriteLine("\tCreated: docs\\Hyperlinks.docx\n");
            }
        }

5.插入分頁符合換行符

 private static void BreakPageLine()
        {
            Console.WriteLine("\tBreakPageLine()");
            // Create a new document.
            using (DocX document = DocX.Create(@"docs\BreakPageLine.docx"))
            {
                // Add Headers and Footers to this document.
             
                Paragraph p0 = document.InsertParagraph();
                p0.Append("Hello First line").Bold();
                p0.InsertPageBreakAfterSelf();
                var p1 = document.InsertParagraph("zhaojiedi");
                document.InsertSectionPageBreak();
                document.InsertParagraph("zhaojiedi2");
                document.InsertSection();
               var p2= document.InsertParagraph("zhaojiedi3");
                p2.AppendLine("zhaojiedi4");
                p2.AppendLine("zhaojiedi5");
                p2.AppendLine("zhaojiedi6");
                document.Save();
            }// Release this document from memory.
        }

 6.插入公式

  private static void Equations()
        {
            Console.WriteLine("\tEquations()");
            // Create a new document.
            using (DocX document = DocX.Create(@"docs\Equations.docx"))
            {
                // Insert first Equation in this document.
                Paragraph pEquation1 = document.InsertEquation("x = y+z");
                // Insert second Equation in this document and add formatting.
                Paragraph pEquation2 = document.InsertEquation("x = (y+z)/t").FontSize(18).Color(WindowsColor.Blue);
                // Save this document to disk.
                document.Save();
                Console.WriteLine("\tCreated: docs\\Equations.docx\n");
            }
        }

7.插入頁眉頁腳

        private static void HeadersAndFooters2()
        {
            Console.WriteLine("\tHeadersAndFooters()");

            // Create a new document.
            using (DocX document = DocX.Create(@"docs\HeadersAndFooters.docx"))
            {
                // Add Headers and Footers to this document.
                document.AddHeaders();
                document.AddFooters();

                // Force the first page to have a different Header and Footer.
                document.DifferentFirstPage = true;

                // Force odd & even pages to have different Headers and Footers.
                document.DifferentOddAndEvenPages = true;

                // Get the first, odd and even Headers for this document.
                Header header_first = document.Headers.first;
                Header header_odd = document.Headers.odd;
                Header header_even = document.Headers.even;

                // Get the first, odd and even Footer for this document.
                Footer footer_first = document.Footers.first;
                Footer footer_odd = document.Footers.odd;
                Footer footer_even = document.Footers.even;

                // Insert a Paragraph into the first Header.
                Paragraph p0 = header_first.InsertParagraph();
                p0.Append("Hello First Header.").Bold();

                // Insert a Paragraph into the odd Header.
                Paragraph p1 = header_odd.InsertParagraph();
                p1.Append("Hello Odd Header.").Bold();

                // Insert a Paragraph into the even Header.
                Paragraph p2 = header_even.InsertParagraph();
                p2.Append("Hello Even Header.").Bold();

                // Insert a Paragraph into the first Footer.
                Paragraph p3 = footer_first.InsertParagraph();
                p3.Append("Hello First Footer.").Bold();

                // Insert a Paragraph into the odd Footer.
                Paragraph p4 = footer_odd.InsertParagraph();
                p4.Append("Hello Odd Footer.").Bold();

                // Insert a Paragraph into the even Header.
                Paragraph p5 = footer_even.InsertParagraph();
                p5.Append("Hello Even Footer.").Bold();

                // Insert a Paragraph into the document.
                Paragraph p6 = document.InsertParagraph();
                p6.AppendLine("Hello First page.");

                // Create a second page to show that the first page has its own header and footer.
                p6.InsertPageBreakAfterSelf();

                // Insert a Paragraph after the page break.
                Paragraph p7 = document.InsertParagraph();
                p7.AppendLine("Hello Second page.");

                // Create a third page to show that even and odd pages have different headers and footers.
                p7.InsertPageBreakAfterSelf();

                // Insert a Paragraph after the page break.
                Paragraph p8 = document.InsertParagraph();
                p8.AppendLine("Hello Third page.");

                //Insert a next page break, which is a section break combined with a page break
                document.InsertSectionPageBreak();

                //Insert a paragraph after the "Next" page break
                Paragraph p9 = document.InsertParagraph();
                p9.Append("Next page section break.");

                //Insert a continuous section break
                document.InsertSection();

                //Create a paragraph in the new section
                var p10 = document.InsertParagraph();
                p10.Append("Continuous section paragraph.");

                // Save all changes to this document.
                document.Save();

                Console.WriteLine("\tCreated: docs\\HeadersAndFooters.docx\n");
            }// Release this document from memory.
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM