zoukankan      html  css  js  c++  java
  • 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("	AddToc()");
    
                using (var document = DocX.Create(@"docsToc2.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("	Bookmarks()");
    
                using (var document = DocX.Create(@"docsBookmarks.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("	Created: docs\Bookmarks.docx
    ");
    
                }
            }

     3.插入各种分隔符

            static void HelloWorldInsertHorizontalLine()
            {
                Console.WriteLine("	HelloWorldInsertHorizontalLine()");
    
                // Create a new document.
                using (DocX document = DocX.Create(@"docsHelloWorldInsertHorizontalLine.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("	Created: docs\HelloWorldInsertHorizontalLine.docx
    ");
                }
            }

    4.插入超链接

     private static void Hyperlinks()
            {
                // Create a document.
                using (DocX document = DocX.Create(@"docsHyperlinks.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:softDocX-masterExamplesinDebugdocsToc2.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("	Created: docs\Hyperlinks.docx
    ");
                }
            }

    5.插入分页符合换行符

     private static void BreakPageLine()
            {
                Console.WriteLine("	BreakPageLine()");
                // Create a new document.
                using (DocX document = DocX.Create(@"docsBreakPageLine.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("	Equations()");
                // Create a new document.
                using (DocX document = DocX.Create(@"docsEquations.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("	Created: docs\Equations.docx
    ");
                }
            }

    7.插入页眉页脚

            private static void HeadersAndFooters2()
            {
                Console.WriteLine("	HeadersAndFooters()");
    
                // Create a new document.
                using (DocX document = DocX.Create(@"docsHeadersAndFooters.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("	Created: docs\HeadersAndFooters.docx
    ");
                }// Release this document from memory.
            }
  • 相关阅读:
    奶酪(NOIP2017 Day2 T1)
    图的遍历(某谷P3916)
    20154331 EXP9web安全基础实践
    20154331 EXP8 web基础
    20154331EXP7 网络欺诈
    20154331 Exp6 信息搜集与漏洞扫描
    Exp5 MSF基础应用
    Exp4 恶意代码分析
    Exp3 免杀原理与实践
    20154331黄芮EXP2 后门原理与实践
  • 原文地址:https://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_csharp_005_docx2.html
Copyright © 2011-2022 走看看