Redémarrer la liste à chaque section

Dans ce didacticiel étape par étape, nous allons vous montrer comment réinitialiser une liste numérotée dans chaque section d’un document Word à l’aide d’Aspose.Words pour .NET. Nous expliquerons le code source C# fourni et vous montrerons comment l’implémenter dans vos propres projets.

Pour commencer, assurez-vous que Aspose.Words for .NET est installé et configuré dans votre environnement de développement. Si vous ne l’avez pas déjà fait, téléchargez et installez la bibliothèque depuis[Aspose.Releases]https://releases.aspose.com/words/net/.

Étape 1 : Création du document et de la liste

Tout d’abord, créez un nouveau document et ajoutez une liste numérotée par défaut :

string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();

doc.Lists.Add(ListTemplate.NumberDefault);

List list = doc.Lists[0];
list. IsRestartAtEachSection = true;

Étape 2 : ajouter des éléments à la liste

Utilisez ensuite unDocumentBuilder pour ajouter des éléments à la liste. Vous pouvez utiliser une boucle pour ajouter plusieurs éléments à la liste :

DocumentBuilder builder = new DocumentBuilder(doc);
builder.ListFormat.List = list;

for (int i = 1; i < 45; i++)
{
     builder.Writeln($"List item {i}");

     if (i == 15)
         builder.InsertBreak(BreakType.SectionBreakNewPage);
}

Dans cet exemple, nous insérons un saut de section après le 15ème élément de liste pour illustrer la renumérotation.

Étape 3 : Enregistrez le document modifié

Enfin, enregistrez le document modifié :

OoxmlSaveOptions options = new OoxmlSaveOptions { Compliance = OoxmlCompliance.Iso29500_2008_Transitional };

doc.Save(dataDir + "ResetListAtEachSection.docx", options);

Donc ! Vous avez réussi à réinitialiser une liste numérotée pour chaque section d’un document Word à l’aide d’Aspose.Words pour .NET.

Exemple de code source pour réinitialiser la liste à chaque section

string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();

doc.Lists.Add(ListTemplate.NumberDefault);

List list = doc.Lists[0];
list. IsRestartAtEachSection = true;

DocumentBuilder builder = new DocumentBuilder(doc);
builder.ListFormat.List = list;

for (int i = 1; i < 45; i++)
{
	 builder.Writeln($"List item {i}");

	 if (i == 15)
		 builder.InsertBreak(BreakType.SectionBreakNewPage);
}

OoxmlSaveOptions options = new OoxmlSaveOptions { Compliance = OoxmlCompliance.Iso29500_2008_Transitional };

doc.Save(dataDir + "ResetListAtEachSection.docx", options);

N’hésitez pas à utiliser ce code dans vos propres projets et à le modifier en fonction de vos besoins spécifiques.

FAQ

Q : Comment puis-je redémarrer une liste dans chaque section dans Aspose.Words ?

R : Pour redémarrer une liste dans chaque section dans Aspose.Words, vous devez créer une instance duList classe et attribuez-lui une liste numérotée. Ensuite, vous pouvez utiliser leList.IsRestartAtEachSection propriété pour spécifier que la numérotation doit être redémarrée à chaque section. Vous pouvez associer cette liste à une ou plusieurs sections de votre document afin que la numérotation soit relancée correctement à chaque section.

Q : Puis-je personnaliser le format de numérotation des listes dans Aspose.Words ?

: Oui, vous pouvez personnaliser le format de numérotation des listes dans Aspose.Words. LeList la classe offre plusieurs propriétés pour cela, telles queList.ListFormat.ListType, List.ListLevels, ListLevel.NumberFormat, etc. Vous pouvez utiliser ces propriétés pour définir le type de liste (numérotée, à puces, etc.), le format de numérotation (chiffres arabes, chiffres romains, lettres, etc.) et d’autres options de formatage de numérotation.

Q : Est-il possible d’ajouter des niveaux supplémentaires à une liste numérotée dans Aspose.Words ?

R : Oui, il est possible d’ajouter des niveaux supplémentaires à une liste numérotée dans Aspose.Words. LeListLevel La classe vous permet de définir les propriétés de formatage pour chaque niveau de la liste. Vous pouvez définir des options telles que le préfixe, le suffixe, l’alignement, le retrait, etc. Cela vous permet de créer des listes avec plusieurs niveaux de hiérarchie.