`

C#/VB.NET 创建Word项目符号列表、多级项目编号列表

阅读更多

(本文为转载文章,可在此处查看原文:http://www.cnblogs.com/Yesi/p/8658711.html

在Word文档中,对于有多条并列的信息内容或者段落时,我们常以添加项目标号的形式来使文档条理化,在阅读时,文档也更具美观性。另外,对于在逻辑上存在一定层级结构的内容时,也可以通过多级编号列表来标明文档内容的层次,并且,在修改、编辑文档时也增加了灵活性。因此,在本篇文档中,将介绍如何在C#中通过使用类库Free Spire.Doc for .NET 来创建项目编号列表和多级编号列表的方法。

使用工具: Free Spire.Doc for .NET(社区版)

使用方法:在安装该类库后,在项目中引用Spire.Doc.dll即可(dll文件可在安装路径下的Bin文件夹中获取)

一、创建Word符号列表

C#

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

namespace WordBullets
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化Document类实例,并添加section
            Document doc = new Document();
            Section section = doc.AddSection();

            //添加七个段落并分别添加文字
            Paragraph para1 = section.AddParagraph();
            para1.AppendText("国际政治类组织");
            Paragraph para2 = section.AddParagraph();
            para2.AppendText("欧洲联盟(欧盟)");
            Paragraph para3 = section.AddParagraph();
            para3.AppendText("独立国家联合体(独联体)");
            Paragraph para4 = section.AddParagraph();
            para4.AppendText("上海合作组织");
            Paragraph para5 = section.AddParagraph();
            para5.AppendText("阿拉伯会议联盟");
            Paragraph para6 = section.AddParagraph();
            para6.AppendText("国际生态安全合作组织");
            Paragraph para7 = section.AddParagraph();
            para7.AppendText("阿拉伯国家联盟");

            //创建段落格式(字体)
            ParagraphStyle style = new ParagraphStyle(doc);
            style.Name = "fontStyle";
            style.CharacterFormat.FontName = "宋体";
            style.CharacterFormat.FontSize = 12f;
            doc.Styles.Add(style);

            //遍历所有段落
            for (int i = 0; i < section.Paragraphs.Count; i++)
            {
                //从第二段开始应用项目符号排列
                if (i != 0)
                {
                    section.Paragraphs[i].ApplyStyle(BuiltinStyle.ListBullet2);
                }

                //应用字体格式到每一段
                section.Paragraphs[i].ApplyStyle("fontStyle");

            }
            //保存并打开文档
            doc.SaveToFile("项目列表.docx", FileFormat.Docx2013);
            System.Diagnostics.Process.Start("项目列表.docx");
        }
    }
}

 

创建结果:


VB.NET

Imports Spire.Doc
Imports Spire.Doc.Documents

Namespace WordBullets

    Class Program

        Private Shared Sub Main(ByVal args As String())
            Dim doc As Document = New Document()
            Dim section As Section = doc.AddSection()
            Dim para1 As Paragraph = section.AddParagraph()
            para1.AppendText("国际政治类组织")
            Dim para2 As Paragraph = section.AddParagraph()
            para2.AppendText("欧洲联盟(欧盟)")
            Dim para3 As Paragraph = section.AddParagraph()
            para3.AppendText("独立国家联合体(独联体)")
            Dim para4 As Paragraph = section.AddParagraph()
            para4.AppendText("上海合作组织")
            Dim para5 As Paragraph = section.AddParagraph()
            para5.AppendText("阿拉伯会议联盟")
            Dim para6 As Paragraph = section.AddParagraph()
            para6.AppendText("国际生态安全合作组织")
            Dim para7 As Paragraph = section.AddParagraph()
            para7.AppendText("阿拉伯国家联盟")
            Dim style As ParagraphStyle = New ParagraphStyle(doc)
            style.Name = "fontStyle"
            style.CharacterFormat.FontName = "宋体"
            style.CharacterFormat.FontSize = 12F
            doc.Styles.Add(style)
            For i As Integer = 0 To section.Paragraphs.Count - 1
                If i <> 0 Then
                    section.Paragraphs(i).ApplyStyle(BuiltinStyle.ListBullet2)
                End If

                section.Paragraphs(i).ApplyStyle("fontStyle")
            Next

            doc.SaveToFile("项目列表.docx", FileFormat.Docx2013)
            System.Diagnostics.Process.Start("项目列表.docx")
        End Sub
    End Class
End Namespace

 
 二、创建Word多级项目编号列表

  C#

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

namespace Multi_levelList_Doc
{
    class Program
    {
        static void Main(string[] args)
        {
            //新建Word文档
            Document doc = new Document();
            Section section = doc.AddSection();

            //初始化ListStyle对象,指定List类型为数字列表并命名
            ListStyle listStyle = new ListStyle(doc, ListType.Numbered);
            listStyle.Name = "levelstyle";

            //设定一级列表模式为阿拉伯数字
            listStyle.Levels[0].PatternType = ListPatternType.Arabic;

            //设置二级列表数字前缀及模式
            listStyle.Levels[1].NumberPrefix = "\x0000.";
            listStyle.Levels[1].PatternType = ListPatternType.Arabic;

            //设置三级列表数字前缀及模式
            listStyle.Levels[2].NumberPrefix = "\x0000.\x0001.";
            listStyle.Levels[2].PatternType = ListPatternType.Arabic;

            //在ListStyles集合中添加新建的list style
            doc.ListStyles.Add(listStyle);

            //创建字体格式
            Spire.Doc.Formatting.CharacterFormat format = new Spire.Doc.Formatting.CharacterFormat(doc);
            format.FontName = "宋体";

            //添加段落,设置一级序列
            Paragraph paragraph = section.AddParagraph();
            TextRange tr = paragraph.AppendText("主要组织机构");
            tr.ApplyCharacterFormat(format); //应用字体格式
            paragraph.ApplyStyle(BuiltinStyle.Heading1); //应用标题1样式
            paragraph.ListFormat.ApplyStyle("levelstyle"); //应用列表样式

            //添加段落,设置一级序列
            paragraph = section.AddParagraph();
            tr = paragraph.AppendText("主要职能");
            tr.ApplyCharacterFormat(format);
            paragraph.ApplyStyle(BuiltinStyle.Heading1);
            paragraph.ListFormat.ApplyStyle("levelstyle");

            //添加段落,设置二级序列
            paragraph = section.AddParagraph();
            tr = paragraph.AppendText("基本职能");
            tr.ApplyCharacterFormat(format);
            paragraph.ApplyStyle(BuiltinStyle.Heading2);
            paragraph.ListFormat.ListLevelNumber = 1; //设置等级为第二等级
            paragraph.ListFormat.ApplyStyle("levelstyle");

            //添加段落,设置二级序列
            paragraph = section.AddParagraph();
            tr = paragraph.AppendText("5大职能");
            tr.ApplyCharacterFormat(format);
            paragraph.ApplyStyle(BuiltinStyle.Heading2);
            paragraph.ListFormat.ContinueListNumbering();
            paragraph.ListFormat.ApplyStyle("levelstyle");

            //添加段落,设置三级序列
            paragraph = section.AddParagraph();
            tr = paragraph.AppendText("管理职能 \n 组织职能 \n 协调职能 \n 调节职能 \n 提供职能");
            tr.ApplyCharacterFormat(format);
            paragraph.ApplyStyle(BuiltinStyle.Heading5);
            paragraph.ListFormat.ListLevelNumber = 2; //设置等级为第三等级
            paragraph.ListFormat.ApplyStyle("levelstyle");

            //添加段落,设置一级序列
            paragraph = section.AddParagraph();
            tr = paragraph.AppendText("基本原则");
            tr.ApplyCharacterFormat(format);
            paragraph.ApplyStyle(BuiltinStyle.Heading1);
            paragraph.ListFormat.ApplyStyle("levelstyle");

            //保存并打开文档
            doc.SaveToFile("多级列表.docx", FileFormat.Docx);
            System.Diagnostics.Process.Start("多级列表.docx");
        }
    }
}

 

创建结果:




VB.NET

Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields

Namespace Multi_levelList_Doc

    Class Program

        Private Shared Sub Main(ByVal args As String())
            Dim doc As Document = New Document()
            Dim section As Section = doc.AddSection()
            Dim listStyle As ListStyle = New ListStyle(doc, ListType.Numbered)
            listStyle.Name = "levelstyle"
            listStyle.Levels(0).PatternType = ListPatternType.Arabic
            listStyle.Levels(1).NumberPrefix = vbNullChar & "."
            listStyle.Levels(1).PatternType = ListPatternType.Arabic
            listStyle.Levels(2).NumberPrefix = vbNullChar & "." & ChrW(1) & "."
            listStyle.Levels(2).PatternType = ListPatternType.Arabic
            doc.ListStyles.Add(listStyle)
            Dim format As Spire.Doc.Formatting.CharacterFormat = New Spire.Doc.Formatting.CharacterFormat(doc)
            format.FontName = "宋体"
            Dim paragraph As Paragraph = section.AddParagraph()
            Dim tr As TextRange = paragraph.AppendText("主要组织机构")
            tr.ApplyCharacterFormat(format)
            paragraph.ApplyStyle(BuiltinStyle.Heading1)
            paragraph.ListFormat.ApplyStyle("levelstyle")
            paragraph = section.AddParagraph()
            tr = paragraph.AppendText("主要职能")
            tr.ApplyCharacterFormat(format)
            paragraph.ApplyStyle(BuiltinStyle.Heading1)
            paragraph.ListFormat.ApplyStyle("levelstyle")
            paragraph = section.AddParagraph()
            tr = paragraph.AppendText("基本职能")
            tr.ApplyCharacterFormat(format)
            paragraph.ApplyStyle(BuiltinStyle.Heading2)
            paragraph.ListFormat.ListLevelNumber = 1
            paragraph.ListFormat.ApplyStyle("levelstyle")
            paragraph = section.AddParagraph()
            tr = paragraph.AppendText("5大职能")
            tr.ApplyCharacterFormat(format)
            paragraph.ApplyStyle(BuiltinStyle.Heading2)
            paragraph.ListFormat.ContinueListNumbering()
            paragraph.ListFormat.ApplyStyle("levelstyle")
            paragraph = section.AddParagraph()
            tr = paragraph.AppendText("管理职能 " & vbLf & " 组织职能 " & vbLf & " 协调职能 " & vbLf & " 调节职能 " & vbLf & " 提供职能")
            tr.ApplyCharacterFormat(format)
            paragraph.ApplyStyle(BuiltinStyle.Heading5)
            paragraph.ListFormat.ListLevelNumber = 2
            paragraph.ListFormat.ApplyStyle("levelstyle")
            paragraph = section.AddParagraph()
            tr = paragraph.AppendText("基本原则")
            tr.ApplyCharacterFormat(format)
            paragraph.ApplyStyle(BuiltinStyle.Heading1)
            paragraph.ListFormat.ApplyStyle("levelstyle")
            doc.SaveToFile("多级列表.docx", FileFormat.Docx)
            System.Diagnostics.Process.Start("多级列表.docx")
        End Sub
    End Class
End Namespace

 

 

  • 大小: 16.2 KB
  • 大小: 36 KB
分享到:
评论

相关推荐

    C#代码项目转换VB.NET项目代码(可整个项目转换)

    5. 保存并构建VB.NET项目:在确认代码无误后,保存转换后的VB.NET文件,并创建一个新的VB.NET项目。将转换后的源代码添加到新项目中,然后编译和运行以验证功能是否正常。 需要注意的是,虽然工具能够自动化大部分...

    WebSocket C#/ASP.NET 示例

    在"WebSocket C#/ASP.NET 示例"中,我们注意到使用了VS2012作为开发环境,这是一个微软提供的集成开发环境,支持C#和ASP.NET项目。解决方案文件(WebSocketTest.sln)包含了整个项目的配置和依赖,打开后可以在...

    .net winform下 C#/VB.NET项目代码行数统计器

    本程序支持对sln(解决方案文件)、csproj(c#项目文件)、vbproj(vb.net项目文件)下所包含的源代码进行代码行数统计工作. 支持vs2003\2005\2008等版本所生成的解决方案文件或者项目文件 程序针对的语言为.net ...

    一款小巧的NET代码生成工具(VB/VB.NET/C#/C#.NET) - 支持各种数据库生成代码

    .NET代码生成工具是一款高效实用的开发辅助软件,尤其适合VB、VB.NET、C#和C#.NET编程语言的开发者。这款工具的主要功能是自动生成与各种数据库交互的代码,极大地提高了开发效率,减少了手动编写重复代码的时间。在...

    C#转换成vb.net工具

    这个工具的目的是帮助程序员在两种.NET框架下的语言之间进行快速的代码迁移,尤其对于那些熟悉C#但需要处理VB.NET项目的人来说非常实用。 描述中提到,该软件解压后运行"ConvertCSharp2VB.exe"即可开始使用。用户只...

    AE+C#/VB/C++/VB.net/RES全代码

    标题中的"AE+C#/VB/C++/VB.net/RES全代码"表明这是一个关于多语言编程的项目,其中涉及Adobe After Effects(AE)以及C#、VB(Visual Basic)、C++和VB.NET这四种编程语言,并且包含RES资源文件。这个项目可能是一个...

    一个完全免费的WEB打印插件控件,支持:C#/vb.net/asp/PHP/JSP,也有实例

    "一个完全免费的WEB打印插件控件,支持:C#/vb.net/asp/PHP/JSP,也有实例" 提供了一个解决方案,允许开发者在各种Web应用平台上实现便捷的打印功能。 这个插件控件兼容多种编程语言,如C#、VB.NET、ASP、PHP和JSP,...

    C#/VB.NET 调用C++的COM组件/C++的DLL的方法

    2、VB.net/C#工程需要.net framwork 4.8(可以根据你自己的环境修改工程属性) 3、默认选中了x64配置,所有的DLL/组件/调用客户端都生成Windows x64代码,不要混用32位和64位配置。并总是在配置管理器中确认全部编译...

    SkinSharp 1.0.6.6 破解版 For C#/VB/VC .NET

    SkinSharp 1.0.6.6 破解版 For C#/VB/VC .NET

    C# vb.NET互转工具 CS_VBConverter

    《C#与VB.NET代码互转工具:CS_VBConverter深度解析》 在.NET框架下,C#和VB.NET作为两种主要的编程语言,各有其优势和特点。开发者们有时会因为项目需求或个人习惯,需要在两者之间进行代码转换。这时,一个高效...

    C#代码转换为VB.NET代码的工具

    对于已经习惯C#语法的开发者来说,如果需要在VB.NET项目中工作,可能会面临代码转换的需求。这时,"C#代码转换为VB.NET代码的工具"就显得尤为重要。 标题中提到的工具,其主要功能是帮助开发者将C#编写的源代码自动...

    FastReport For Vb/vb.net/C#/J#/C++

    [Vb.Net/C#/J#] 需求:My_FastReport.dll/adodb.dll/Interop.My_FastReport.dll [C++] 需求:My_FastReport.dll/adodb.dll/Interop.My_FastReport.1.0.dll .net 本案例基于.net2005开发平台 QQ:122391458 E-mail:Hz...

    Resource Refactoring Tool for C#/VB.net

    一个支持VS2005和2008的重构工具,很好用的Refactor tool,但是只支持C#和VB.NET,安装完毕以后在菜单栏会出现一个“重构”选项,点击鼠标右键也可以看见!语言和你的VS一致! 附上源网址,感兴趣的可以自己去看...

    C#与VB.NET代码互转工具

    标题中的"C#与VB.NET代码互转工具"指的是一个能够帮助程序员在C#和VB.NET两种编程语言之间进行代码转换的应用程序。这个工具的核心功能是将VB.NET编写的代码自动转化为等效的C#代码,反之亦然。这对于那些需要在不同...

    FastReport For Vb/Vb.net/C#/C++/J#

    [Vb.Net/C#/J#] 需求:My_FastReport.dll/adodb.dll/Interop.My_FastReport.dll [C++] 需求:My_FastReport.dll/adodb.dll/Interop.My_FastReport.1.0.dll .net 本案例基于.net2005开发平台 QQ:122391458 E-mail:Hz...

    VB.Net to C# Converter将VB代码转换成C#代码

    然而,当一个项目基于VB.Net编写,而开发者更熟悉或需要使用C#时,转换代码就成为了一个必要的任务。这时,"VB.Net to C# Converter"软件便发挥了关键作用,它能够帮助程序员高效地将VB.Net代码转换为C#代码,大大...

    VB.NET C# 互转 Convert

    在.NET框架中,VB.NET和C#是两种广泛使用的编程语言。它们都属于.NET生态系统,因此,开发者有时需要在这两者之间进行代码转换,以便于团队协作、代码复用或者适应不同的开发需求。本文将深入探讨如何在VB.NET与C#...

    C#与Vb.net代码互转工具

    总的来说,C#与VB.NET代码互转工具是.NET开发者的一个实用辅助工具,能够帮助他们充分利用两种语言的优势,提高开发效率,尤其是在团队成员使用不同编程语言的项目中。不过,理解和掌握两种语言的基本语法和特性仍然...

    C#/VB.NET程序背景图与桌面壁纸同步源码

    把程序背景图同步为对应位置的桌面壁纸。 支持WIN7的各种窗口边框尺寸,必须开启Aero特效,其他系统自测或者自己改。 不支持各种动态壁纸。

Global site tag (gtag.js) - Google Analytics