如果你想让段落更容易导航和阅读,将它们按字母、数字甚至项目符号顺序重新排列,读者可以快速找到他们想要的内容,并立即在列表中搜索。在本文中,您将学习如何使用 Spire.Doc for C++ 在 Word 文档中创建编号列表、项目符号列表和多级列表。
安装 Spire.Doc for C++
有两种方法可以将 Spire.Doc for C++ 集成到您的应用程序中。一种方法是通过 NuGet 安装它,另一种方法是从我们的网站下载包并将库复制到您的程序中。通过 NuGet 安装更简单,更推荐使用。您可以通过访问以下链接找到更多详细信息。
如何将 Spire.Doc for C++ 集成到 C++ 程序中
在 Word 中创建编号列表
Spire.Doc for C++ 提供了 ListStyle 类,您可以使用该类创建编号列表样式或项目符号样式。然后,可以使用 Paragraph->GetListFormat()->ApplyStyle() 方法将列表样式应用于段落。创建编号列表的步骤如下。
- 创建一个 Document 对象。
- 使用 Document->AddSection() 方法添加一个节。
- 创建 ListStyle 类的实例,将列表类型指定为 Numbered。
- 使用 ListStyle->GetLevels()->GetItem(index) 方法获取列表的特定级别,并使用 ListLevel->SetPatternType() 方法设置编号类型。
- 使用 Document->GetListStyles()->Add() 方法将列表样式添加到文档中。
- 使用 Section->AddParagraph() 方法将多个段落添加到文档中。
- 使用 Paragraph->GetListFormat()->ApplyStyle() 方法将列表样式应用于特定段落。
- 使用 Paragraph->GetListFormat()->GetListLevelNumber() 方法指定列表级别。
- 使用 Document->SaveToFile() 方法将文档保存到Word文件中。
- C++
#include "Spire.Doc.o.h";
using namespace Spire::Doc;
using namespace std;
int main() {
//创建一个Document对象
intrusive_ptr<Document> document = new Document();
//添加一个节
intrusive_ptr<Section> section = document->AddSection();
//创建编号列表样式
intrusive_ptr<ListStyle> listStyle = new ListStyle(document, ListType::Numbered);
listStyle->SetName(L"numberedList");
listStyle->GetLevels()->GetItem(0)->SetPatternType(ListPatternType::DecimalEnclosedParen);
listStyle->GetLevels()->GetItem(0)->SetTextPosition(20);
document->GetListStyles()->Add(listStyle);
//添加一个段落
intrusive_ptr<Paragraph> paragraph = section->AddParagraph();
paragraph->AppendText(L"必需的Web开发技能:");
paragraph->GetFormat()->SetAfterSpacing(5);
//添加段落并对其应用编号列表样式
paragraph = section->AddParagraph();
paragraph->AppendText(L"HTML");
paragraph->GetListFormat()->ApplyStyle(L"numberedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
//再添加四个段落,并将编号列表样式应用于特定段落
paragraph = section->AddParagraph();
paragraph->AppendText(L"CSS");
paragraph->GetListFormat()->ApplyStyle(L"numberedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"C++Script");
paragraph->GetListFormat()->ApplyStyle(L"numberedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"Python");
paragraph->GetListFormat()->ApplyStyle(L"numberedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"MySQL");
paragraph->GetListFormat()->ApplyStyle(L"numberedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
//将文档保存为Word文件
document->SaveToFile(L"编号列表.docx", FileFormat::Docx2019);
document->Dispose();
}
在 Word 中创建项目符号列表
创建项目符号列表的过程与创建编号列表的过程类似。不同之处在于,创建列表样式时,必须将列表类型指定为“项目符号”,并为其设置项目符号。以下是详细步骤。
- 创建一个 Document 对象。
- 使用 Document->AddSection() 方法添加一个节。
- 创建 ListStyle类的实例,将列表类型指定为“Bulleted”。
- 使用 ListStyle->GetLevels()->Get(index) 方法获取列表的特定级别,并使用 ListLevel->SetBulletCharacter() 方法设置项目符号。
- 使用 Document->GetListStyles()->Add() 方法将列表样式添加到文档中。
- 使用 Section->AddParagraph() 方法将多个段落添加到文档中。
- 使用 Paragraph->GetListFormat()->ApplyStyle() 方法将列表样式应用于特定段落。
- 使用 Paragraph->GetListFormat()->SetListLevelNumber() 方法指定列表级别。
- 使用 Document->SaveToFile() 方法将文档保存到Word文件中。
- C++
#include "Spire.Doc.o.h";
using namespace Spire::Doc;
using namespace std;
int main() {
//创建一个Document对象
intrusive_ptr<Document> document = new Document();
//添加一个节
intrusive_ptr<Section> section = document->AddSection();
//创建项目符号列表样式
intrusive_ptr<ListStyle> listStyle = new ListStyle(document, ListType::Bulleted);
listStyle->SetName(L"bulletedList");
listStyle->GetLevels()->GetItem(0)->SetBulletCharacter(L"\u00B7");
listStyle->GetLevels()->GetItem(0)->GetCharacterFormat()->SetFontName(L"Symbol");
listStyle->GetLevels()->GetItem(0)->SetTextPosition(20);
document->GetListStyles()->Add(listStyle);
//添加一个段落
intrusive_ptr<Paragraph> paragraph = section->AddParagraph();
paragraph->AppendText(L"计算机科学科目:");
paragraph->GetFormat()->SetAfterSpacing(5);
//添加段落并对其应用项目符号列表样式
paragraph = section->AddParagraph();
paragraph->AppendText(L"数据结构");
paragraph->GetListFormat()->ApplyStyle(L"bulletedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
//再添加五个段落,并将项目符号列表样式应用于特定段落
paragraph = section->AddParagraph();
paragraph->AppendText(L"演算法");
paragraph->GetListFormat()->ApplyStyle(L"bulletedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"计算机网络");
paragraph->GetListFormat()->ApplyStyle(L"bulletedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"操作系统");
paragraph->GetListFormat()->ApplyStyle(L"bulletedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"C语言程序设计");
paragraph->GetListFormat()->ApplyStyle(L"bulletedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"计算理论");
paragraph->GetListFormat()->ApplyStyle(L"bulletedList");
paragraph->GetListFormat()->SetListLevelNumber(0);
//保存结果文档
document->SaveToFile(L"项目符号列表.docx", FileFormat::Docx2019);
document->Dispose();
}
在 Word 中创建多级编号列表
多级列表至少由两个不同的级别组成。嵌套列表的每个级别都可以使用 ListStyle->GetLevels()->GetItem(index) 方法进行访问。通过 ListLevel 对象,您可以设置某个级别的编号类型和前缀。以下是在 Word 中创建多级编号列表的步骤。
- 创建一个 Document 对象。
- 使用 Document->AddSection() 方法添加一个节。
- 创建 ListStyle 类的实例,将列表类型指定为 Numbered。
- 使用 ListStyle->GetLevels()->GetItem(index) 方法获取列表的特定级别,并设置编号类型和前缀。
- 使用 Document->GetListStyles()->Add() 方法将列表样式添加到文档中。
- 使用 Section->AddParagraph() 方法将多个段落添加到文档中。
- 使用 Paragraph->GetListFormat()->ApplyStyle() 方法将列表样式应用于特定段落。
- 使用 Paragraph->GetListFormat()->SetListLevelNumber() 方法指定列表级别。
- 使用 Document->SaveToFile() 方法将文档保存到 Word 文件中。
- C++
#include "Spire.Doc.o.h";
using namespace Spire::Doc;
using namespace std;
int main() {
//创建一个Document对象
intrusive_ptr<Document> document = new Document();
//添加一个节
intrusive_ptr<Section> section = document->AddSection();
//创建编号列表样式,指定每个级别的编号前缀和图案类型
intrusive_ptr<ListStyle> listStyle = new ListStyle(document, ListType::Numbered);
listStyle->SetName(L"nestedStyle");
listStyle->GetLevels()->GetItem(0)->SetPatternType(ListPatternType::Arabic);
listStyle->GetLevels()->GetItem(0)->SetTextPosition(20);
listStyle->GetLevels()->GetItem(1)->SetNumberPrefix(L"%1.");
listStyle->GetLevels()->GetItem(1)->SetPatternType(ListPatternType::Arabic);
listStyle->GetLevels()->GetItem(2)->SetNumberPrefix(L"%1.%2.");
listStyle->GetLevels()->GetItem(2)->SetPatternType(ListPatternType::Arabic);
document->GetListStyles()->Add(listStyle);
//添加一个段落
intrusive_ptr<Paragraph> paragraph = section->AddParagraph();
paragraph->AppendText(L"这是一个多级编号列表:");
paragraph->GetFormat()->SetAfterSpacing(5);
//添加段落并对其应用编号列表样式
paragraph = section->AddParagraph();
paragraph->AppendText(L"第一项");
paragraph->GetListFormat()->ApplyStyle(L"nestedStyle");
paragraph->GetListFormat()->SetListLevelNumber(0);
//再添加五个段落,并将编号列表样式应用于特定段落
paragraph = section->AddParagraph();
paragraph->AppendText(L"第二项");
paragraph->GetListFormat()->ApplyStyle(L"nestedStyle");
paragraph->GetListFormat()->SetListLevelNumber(0);
paragraph = section->AddParagraph();
paragraph->AppendText(L"第一个子项");
paragraph->GetListFormat()->ApplyStyle(L"nestedStyle");
paragraph->GetListFormat()->SetListLevelNumber(1);
paragraph = section->AddParagraph();
paragraph->AppendText(L"第二个子项");
paragraph->GetListFormat()->ContinueListNumbering();
paragraph->GetListFormat()->ApplyStyle(L"nestedStyle");
paragraph = section->AddParagraph();
paragraph->AppendText(L"一个子项");
paragraph->GetListFormat()->ApplyStyle(L"nestedStyle");
paragraph->GetListFormat()->SetListLevelNumber(2);
paragraph = section->AddParagraph();
paragraph->AppendText(L"第三项");
paragraph->GetListFormat()->ApplyStyle(L"nestedStyle");
paragraph->GetListFormat()->SetListLevelNumber(0);
//保存结果文档
document->SaveToFile(L"多级编号列表.docx", FileFormat::Docx2019);
document->Dispose();
}
在 Word 中创建多级混合类型列表
多级列表可以是编号列表和项目符号列表的组合。要创建混合类型列表,只需要创建编号列表样式和项目符号列表样式,并将它们应用于不同的段落。具体步骤如下。
- 创建一个 Document 对象。
- 使用 Document->AddSection() 方法添加一个节。
- 创建编号列表样式和项目符号列表样式。
- 使用 Section->AddParagraph() 方法将多个段落添加到文档中。
- 使用 Paragraph->GgetListFormat()->ApplyStyle() 方法将不同的列表样式应用于不同的段落。
- 使用 Document->SaveToFile() 方法将文档保存到 Word 文件中。
- C++
#include "Spire.Doc.o.h";
using namespace Spire::Doc;
using namespace std;
int main() {
//创建一个Document对象
intrusive_ptr<Document> document = new Document();
//添加一个节
intrusive_ptr<Section> section = document->AddSection();
//创建编号列表样式
intrusive_ptr<ListStyle> numberedListStyle = new ListStyle(document, ListType::Numbered);
numberedListStyle->SetName(L"numberedStyle");
numberedListStyle->GetLevels()->GetItem(0)->SetPatternType(ListPatternType::Arabic);
numberedListStyle->GetLevels()->GetItem(0)->SetTextPosition(20);
numberedListStyle->GetLevels()->GetItem(1)->SetPatternType(ListPatternType::LowLetter);
document->GetListStyles()->Add(numberedListStyle);
//创建项目符号列表样式
intrusive_ptr<ListStyle> bulletedListStyle = new ListStyle(document, ListType::Bulleted);
bulletedListStyle->SetName(L"bulletedStyle");
bulletedListStyle->GetLevels()->GetItem(2)->SetBulletCharacter(L"\u002A");
bulletedListStyle->GetLevels()->GetItem(2)->GetCharacterFormat()->SetFontName(L"Symbol");
document->GetListStyles()->Add(bulletedListStyle);
//添加段落
intrusive_ptr<Paragraph> paragraph = section->AddParagraph();
paragraph->AppendText(L"这是一个多级混合列表:");
paragraph->GetFormat()->SetAfterSpacing(5);
//添加段落并对其应用编号列表样式
paragraph = section->AddParagraph();
paragraph->AppendText(L"第一项");
paragraph->GetListFormat()->ApplyStyle(L"numberedStyle");
paragraph->GetListFormat()->SetListLevelNumber(0);
//再添加五个段落,并对其应用不同的列表样式
paragraph = section->AddParagraph();
paragraph->AppendText(L"第一个子项");
paragraph->GetListFormat()->ApplyStyle(L"numberedStyle");
paragraph->GetListFormat()->SetListLevelNumber(1);
paragraph = section->AddParagraph();
paragraph->AppendText(L"第二个子项");
paragraph->GetListFormat()->SetListLevelNumber(1);
paragraph->GetListFormat()->ApplyStyle(L"numberedStyle");
paragraph = section->AddParagraph();
paragraph->AppendText(L"子项1");
paragraph->GetListFormat()->ApplyStyle(L"bulletedStyle");
paragraph->GetListFormat()->SetListLevelNumber(2);
paragraph = section->AddParagraph();
paragraph->AppendText(L"子项2");
paragraph->GetListFormat()->ApplyStyle(L"bulletedStyle");
paragraph->GetListFormat()->SetListLevelNumber(2);
paragraph = section->AddParagraph();
paragraph->AppendText(L"第二项");
paragraph->GetListFormat()->ApplyStyle(L"numberedStyle");
paragraph->GetListFormat()->SetListLevelNumber(0);
//保存结果文档
document->SaveToFile(L"多级混合类型列表.docx", FileFormat::Docx);
document->Dispose();
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。