GlossaryDocument

GlossaryDocument class

Représente l’élément racine d’un document de glossaire dans un document Word. Un document de glossaire est un espace de stockage pour les entrées de texte automatique, de correction automatique et les blocs de construction.

Pour en savoir plus, visitez leModèle d’objet de document (DOM) Aspose.Words article de documentation.

public class GlossaryDocument : DocumentBase

Constructeurs

NomLa description
GlossaryDocument()Default_Constructor

Propriétés

NomLa description
BackgroundShape { get; set; }Obtient ou définit la forme d’arrière-plan du document. Peut êtrenul .
BuildingBlocks { get; }Renvoie une collection typée qui représente tous les blocs de construction du document de glossaire.
Count { get; }Obtient le nombre d’enfants immédiats de ce nœud.
CustomNodeId { get; set; }Spécifie l’identifiant de nœud personnalisé.
override Document { get; }Obtient cette instance.
FirstBuildingBlock { get; }Obtient le premier bloc de construction dans le document de glossaire.
FirstChild { get; }Obtient le premier enfant du nœud.
FontInfos { get; }Donne accès aux propriétés des polices utilisées dans ce document.
FootnoteSeparators { get; }Donne accès aux séparateurs de notes de bas de page/de fin définis dans le document.
HasChildNodes { get; }Retoursvrai si ce nœud a des nœuds enfants.
override IsComposite { get; }Retoursvrai car ce nœud peut avoir des nœuds enfants.
LastBuildingBlock { get; }Obtient le dernier bloc de construction dans le document de glossaire.
LastChild { get; }Obtient le dernier enfant du nœud.
Lists { get; }Donne accès au formatage de liste utilisé dans le document.
NextSibling { get; }Obtient le nœud suivant immédiatement ce nœud.
NodeChangingCallback { get; set; }Appelé lorsqu’un nœud est inséré ou supprimé dans le document.
override NodeType { get; }Renvoie leGlossaryDocument valeur.
PageColor { get; set; }Obtient ou définit la couleur de page du document. Cette propriété est une version simplifiée deBackgroundShape .
ParentNode { get; }Obtient le parent immédiat de ce nœud.
PreviousSibling { get; }Obtient le nœud précédant immédiatement ce nœud.
Range { get; }Renvoie unRangeobjet qui représente la partie d’un document contenue dans ce nœud.
ResourceLoadingCallback { get; set; }Permet de contrôler la manière dont les ressources externes sont chargées.
Styles { get; }Renvoie une collection de styles définis dans le document.
WarningCallback { get; set; }Appelé lors de diverses procédures de traitement de documents lorsqu’un problème est détecté qui pourrait entraîner une perte de fidélité des données ou du formatage.

Méthodes

NomLa description
override Accept(DocumentVisitor)Accepte un visiteur.
override AcceptEnd(DocumentVisitor)Accepte un visiteur pour visiter la fin du document Glossaire.
override AcceptStart(DocumentVisitor)Accepte un visiteur pour visiter le début du document Glossaire.
AppendChild<T>(T)Ajoute le nœud spécifié à la fin de la liste des nœuds enfants pour ce nœud.
Clone(bool)Crée un doublon du nœud.
CreateNavigator()Crée un navigateur qui peut être utilisé pour parcourir et lire les nœuds.
GetAncestor(NodeType)Obtient le premier ancêtre du spécifiéNodeType .
GetAncestor(Type)Obtient le premier ancêtre du type d’objet spécifié.
GetBuildingBlock(BuildingBlockGallery, string, string)Recherche un bloc de construction en utilisant la galerie, la catégorie et le nom spécifiés.
GetChild(NodeType, int, bool)Renvoie un Nième nœud enfant qui correspond au type spécifié.
GetChildNodes(NodeType, bool)Renvoie une collection active de nœuds enfants qui correspondent au type spécifié.
GetEnumerator()Fournit un support pour chaque itération de style sur les nœuds enfants de ce nœud.
override GetText()Obtient le texte de ce nœud et de tous ses enfants.
ImportNode(Node, bool)Importe un nœud d’un autre document vers le document actuel.
ImportNode(Node, bool, ImportFormatMode)Importe un nœud d’un autre document vers le document actuel avec une option pour contrôler le formatage.
IndexOf(Node)Renvoie l’index du nœud enfant spécifié dans le tableau de nœuds enfants.
InsertAfter<T>(T, Node)Insère le nœud spécifié immédiatement après le nœud de référence spécifié.
InsertBefore<T>(T, Node)Insère le nœud spécifié immédiatement avant le nœud de référence spécifié.
NextPreOrder(Node)Obtient le nœud suivant selon l’algorithme de parcours de l’arbre de pré-ordre.
PrependChild<T>(T)Ajoute le nœud spécifié au début de la liste des nœuds enfants pour ce nœud.
PreviousPreOrder(Node)Obtient le nœud précédent selon l’algorithme de parcours de l’arbre de pré-ordre.
Remove()Se supprime du parent.
RemoveAllChildren()Supprime tous les nœuds enfants du nœud actuel.
RemoveChild<T>(T)Supprime le nœud enfant spécifié.
RemoveSmartTags()Supprime toutSmartTag nœuds descendants du nœud actuel.
SelectNodes(string)Sélectionne une liste de nœuds correspondant à l’expression XPath.
SelectSingleNode(string)Sélectionne le premierNode qui correspond à l’expression XPath.
ToString(SaveFormat)Exporte le contenu du nœud dans une chaîne au format spécifié.
ToString(SaveOptions)Exporte le contenu du nœud dans une chaîne en utilisant les options de sauvegarde spécifiées.

Remarques

Certains documents, généralement des modèles, peuvent contenir du texte automatique, des entrées de correction automatique et/ou des blocs de construction (également appelésentrées de document du glossaire ,parties du document oublocs de construction).

Pour accéder aux blocs de construction, vous devez charger un document dans unDocument Objet . Les blocs de construction seront disponibles viaGlossaryDocument propriété.

GlossaryDocument peut contenir n’importe quel nombre deBuildingBlockobjets. ChaqueBuildingBlock représente une partie du document.

Correspond à laglossaireDocument etdocPartséléments dans OOXML.

Exemples

Montre les moyens d’accéder aux blocs de construction dans un document de glossaire.

public void GlossaryDocument()
{
    Document doc = new Document();
    GlossaryDocument glossaryDoc = new GlossaryDocument();

    BuildingBlock child1 = new BuildingBlock(glossaryDoc) { Name = "Block 1" };
    glossaryDoc.AppendChild(child1);
    BuildingBlock child2 = new BuildingBlock(glossaryDoc) { Name = "Block 2" };
    glossaryDoc.AppendChild(child2);
    BuildingBlock child3 = new BuildingBlock(glossaryDoc) { Name = "Block 3" };
    glossaryDoc.AppendChild(child3);
    BuildingBlock child4 = new BuildingBlock(glossaryDoc) { Name = "Block 4" };
    glossaryDoc.AppendChild(child4);
    BuildingBlock child5 = new BuildingBlock(glossaryDoc) { Name = "Block 5" };
    glossaryDoc.AppendChild(child5);

    Assert.AreEqual(5, glossaryDoc.BuildingBlocks.Count);

    doc.GlossaryDocument = glossaryDoc;

    // Il existe différentes manières d’accéder aux blocs de construction.
    // 1 - Obtenir les premier/dernier blocs de construction de la collection :
    Assert.AreEqual("Block 1", glossaryDoc.FirstBuildingBlock.Name);
    Assert.AreEqual("Block 5", glossaryDoc.LastBuildingBlock.Name);

    // 2 - Obtenir un bloc de construction par index :
    Assert.AreEqual("Block 2", glossaryDoc.BuildingBlocks[1].Name);
    Assert.AreEqual("Block 3", glossaryDoc.BuildingBlocks.ToArray()[2].Name);

    // 3 - Obtenir le premier bloc de construction qui correspond à une galerie, un nom et une catégorie :
    Assert.AreEqual("Block 4", 
        glossaryDoc.GetBuildingBlock(BuildingBlockGallery.All, "(Empty Category)", "Block 4").Name);

    // Nous le ferons en utilisant un visiteur personnalisé,
    // qui donnera à chaque BuildingBlock du GlossaryDocument un GUID unique
    GlossaryDocVisitor visitor = new GlossaryDocVisitor();
    // Visitez le début/la fin du document Glossaire.
    glossaryDoc.Accept(visitor);
    // Visitez uniquement le début du document Glossaire.
    glossaryDoc.AcceptStart(visitor);
    // Visitez uniquement la fin du document Glossaire.
    glossaryDoc.AcceptEnd(visitor);
    Console.WriteLine(visitor.GetText());

    // Dans Microsoft Word, nous pouvons accéder aux blocs de construction via « Insertion » -> « Parties rapides » -> « Organisateur de blocs de construction ».
    doc.Save(ArtifactsDir + "BuildingBlocks.GlossaryDocument.dotx"); 
}

/// <summary>
/// Attribue à chaque bloc de construction d'un document de glossaire visité un GUID unique.
/// Stocke les paires GUID-bloc de construction dans un dictionnaire.
/// </summary>
public class GlossaryDocVisitor : DocumentVisitor
{
    public GlossaryDocVisitor()
    {
        mBlocksByGuid = new Dictionary<Guid, BuildingBlock>();
        mBuilder = new StringBuilder();
    }

    public string GetText()
    {
        return mBuilder.ToString();
    }

    public Dictionary<Guid, BuildingBlock> GetDictionary()
    {
        return mBlocksByGuid;
    }

    public override VisitorAction VisitGlossaryDocumentStart(GlossaryDocument glossary)
    {
        mBuilder.AppendLine("Glossary document found!");
        return VisitorAction.Continue;
    }

    public override VisitorAction VisitGlossaryDocumentEnd(GlossaryDocument glossary)
    {
        mBuilder.AppendLine("Reached end of glossary!");
        mBuilder.AppendLine("BuildingBlocks found: " + mBlocksByGuid.Count);
        return VisitorAction.Continue;
    }

    public override VisitorAction VisitBuildingBlockStart(BuildingBlock block)
    {
        block.Guid = Guid.NewGuid();
        mBlocksByGuid.Add(block.Guid, block);
        return VisitorAction.Continue;
    }

    public override VisitorAction VisitBuildingBlockEnd(BuildingBlock block)
    {
        mBuilder.AppendLine("\tVisited block \"" + block.Name + "\"");
        mBuilder.AppendLine("\t Type: " + block.Type);
        mBuilder.AppendLine("\t Gallery: " + block.Gallery);
        mBuilder.AppendLine("\t Behavior: " + block.Behavior);
        mBuilder.AppendLine("\t Description: " + block.Description);

        return VisitorAction.Continue;
    }

    private readonly Dictionary<Guid, BuildingBlock> mBlocksByGuid;
    private readonly StringBuilder mBuilder;
}

Voir également