Робота з списками

Перелік у списку Microsoft Word документ є набором властивостей форматування списку. Переліки можуть використовуватися у ваших документах для форматування, оформлення та підкреслення тексту. Списки є відмінним способом організації даних в документах, і вони полегшують для читачів для розуміння ключових точок.

Кожен список може мати до 9 рівнів і форматування властивостей, таких як стиль номеру, початкове значення, відступ, положення вкладки, і інші визначаються окремо для кожного рівня.

Ця стаття описує програмуматично працює зі списками Aspose.Wordsй

Створення списку застосувань

Aspose.Words дозволяє легко створювати списки за допомогою форматування списку. DocumentBuilder забезпечує ListFormat майно, що повертає майно ListFormat об’єкт. Цей об’єкт має кілька способів запуску і завершення списку і для збільшення / виведення відступу. Є два загальні типи списку Microsoft Word: приклеєний і занурений:

До поточного абзацу додаються кулі або номер і форматування. DocumentBuilder до RemoveNumbers це називається, щоб зупинити форматування списку.

У документах Word можуть складатися списки до дев’яти рівнів. Форматування списку для кожного рівня визначає, яку використовується куля або номер, лівий відступ, простір між кулі та текстом тощо. Наведені нижче методи змінюють рівень списку і застосовуються нові властивості форматування рівня:

  • до Для збільшення рівня списку поточного абзацу за одним рівнем виклику ListFormat.ListIndent
  • до Для зменшення рівня списку поточного абзацу за одним рівнем виклику ListFormat.ListOutdent

Методи зміни рівня списку і застосовуються форматувальні властивості нового рівня.

Приклад коду показує, як побудувати багаторівневий список:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DocumentBuilderSetMultilevelListFormatting.class);
// Open the document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().applyNumberDefault();
builder.writeln("Item 1");
builder.writeln("Item 2");
builder.getListFormat().listIndent();
builder.writeln("Item 2.1");
builder.writeln("Item 2.2");
builder.getListFormat().listIndent();
builder.writeln("Item 2.1.1");
builder.writeln("Item 2.2.2");
builder.getListFormat().listOutdent();
builder.writeln("Item 3");
builder.getListFormat().removeNumbers();
doc.save(dataDir + "output.doc");

Вказати форматування для рівня списку

Список-рівневі об’єкти створюються автоматично, коли створюється список. Використовуйте властивості і методи ListLevel клас для контролю форматування окремих рівнів списку.

Список перезавантаження для кожного розділу

Ви можете перезапустити список для кожного розділу IsRestartAtEachSection майно. Зауважте, що цей параметр підтримується тільки в форматі RTF, DOC та DOCX. Ця опція буде записана до DOCX тільки якщо OoxmlCompliance вище, ніж Ecma376.

Приклад коду показує, як створити список і перезапустити його для кожного розділу:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
Document doc = new Document();
doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
com.aspose.words.List list = doc.getLists().get(0);
// Set true to specify that the list has to be restarted at each section.
list.isRestartAtEachSection(true);
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(list);
for (int i = 1; i < 45; i++) {
builder.writeln(String.format("List Item " + i));
// Insert section break.
if (i == 15)
builder.insertBreak(BreakType.SECTION_BREAK_NEW_PAGE);
}
builder.getListFormat().removeNumbers();
// IsRestartAtEachSection will be written only if compliance is higher then OoxmlComplianceCore.Ecma376
OoxmlSaveOptions options = new OoxmlSaveOptions();
options.setCompliance(OoxmlCompliance.ISO_29500_2008_TRANSITIONAL);
dataDir = dataDir + "RestartAtEachSection_out.docx";
// Save the document to disk.
doc.save(dataDir, options);