GlossaryDocument

GlossaryDocument class

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

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

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 éléments constitutifs du document 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 élément de base du document glossaire.
FirstChild { get; }Obtient le premier enfant du nœud.
FontInfos { get; }Fournit un accès aux propriétés des polices utilisées dans ce 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 élément de base du document 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 la page du document. Cette propriété est une version plus simple 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 unRange objet 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.
AppendChild(Node)Ajoute le nœud spécifié à la fin de la liste des nœuds enfants pour ce nœud.
Clone(bool)Crée un duplicata du nœud.
CreateNavigator()Crée un navigateur qui peut être utilisé pour parcourir et lire des 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 la prise en charge de chaque itération de style sur les nœuds enfants de ce nœud.
override GetText()Récupère 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(NodeNode)Insère le nœud spécifié immédiatement après le nœud de référence spécifié.
InsertBefore(NodeNode)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 traversée de l’arbre de pré-commande.
PrependChild(Node)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 traversée d’arbre de pré-commande.
Remove()Se supprime du parent.
RemoveAllChildren()Supprime tous les nœuds enfants du nœud actuel.
RemoveChild(Node)Supprime le nœud enfant spécifié.
RemoveSmartTags()Supprime toutSmartTagnœ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 à l’aide des options de sauvegarde spécifiées.

Remarques

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

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

GlossaryDocument peut contenir n’importe quel nombre deBuildingBlock objets. ChacunBuildingBlock représente une partie du document.

Correspond auglossaireDocument etdocParts éléments en OOXML.

Exemples

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

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

    glossaryDoc.AppendChild(new BuildingBlock(glossaryDoc) { Name = "Block 1" });
    glossaryDoc.AppendChild(new BuildingBlock(glossaryDoc) { Name = "Block 2" });
    glossaryDoc.AppendChild(new BuildingBlock(glossaryDoc) { Name = "Block 3" });
    glossaryDoc.AppendChild(new BuildingBlock(glossaryDoc) { Name = "Block 4" });
    glossaryDoc.AppendChild(new BuildingBlock(glossaryDoc) { Name = "Block 5" });

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

    doc.GlossaryDocument = glossaryDoc;

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

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

    // 3 - Obtenez 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 ferons cela en utilisant un visiteur personnalisé,
    // qui donnera à chaque BuildingBlock du GlossaryDocument un GUID unique
    GlossaryDocVisitor visitor = new GlossaryDocVisitor();
    glossaryDoc.Accept(visitor);
    Console.WriteLine(visitor.GetText());

    // Dans Microsoft Word, nous pouvons accéder aux blocs de construction via "Insérer" -> "Pièces rapides" -> "Organisateur de blocs de construction".
    doc.Save(ArtifactsDir + "BuildingBlocks.GlossaryDocument.dotx"); 
}

/// <summary>
/// Donne à chaque bloc de construction d'un document de glossaire visité un GUID unique.
/// Stocke les paires de blocs de construction GUID 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