GlossaryDocument

GlossaryDocument class

Representerar rotelementet för ett ordlistadokument i ett Word-dokument. Ett ordlistadokument är en lagring för AutoText, Autokorrigeringsposter och Byggblock.

För att lära dig mer, besökAspose.Words Document Object Model (DOM) dokumentationsartikel.

public class GlossaryDocument : DocumentBase

Konstruktörer

namnBeskrivning
GlossaryDocument()Default_Constructor

Egenskaper

namnBeskrivning
BackgroundShape { get; set; }Hämtar eller ställer in bakgrundsformen för dokumentet. Kan varanull .
BuildingBlocks { get; }Returnerar en maskinskriven samling som representerar alla byggstenar i ordlistans dokument.
Count { get; }Hämtar antalet omedelbara barn till denna nod.
CustomNodeId { get; set; }Anger anpassad nodidentifierare.
override Document { get; }Hämtar den här instansen.
FirstBuildingBlock { get; }Hämtar den första byggstenen i ordlistans dokument.
FirstChild { get; }Får det första barnet i noden.
FontInfos { get; }Ger tillgång till egenskaperna för teckensnitt som används i detta dokument.
HasChildNodes { get; }ReturnerarSann om denna nod har några undernoder.
override IsComposite { get; }ReturnerarSann eftersom denna nod kan ha underordnade noder.
LastBuildingBlock { get; }Hämtar den sista byggstenen i ordlistans dokument.
LastChild { get; }Hämtar nodens sista underordnade.
Lists { get; }Ger tillgång till listformateringen som används i dokumentet.
NextSibling { get; }Hämtar noden omedelbart efter denna nod.
NodeChangingCallback { get; set; }Anropas när en nod infogas eller tas bort i dokumentet.
override NodeType { get; }ReturnerarGlossaryDocument värde.
PageColor { get; set; }Hämtar eller ställer in sidfärgen på dokumentet. Den här egenskapen är en enklare version avBackgroundShape .
ParentNode { get; }Hämtar den omedelbara föräldern till denna nod.
PreviousSibling { get; }Hämtar noden omedelbart före denna nod.
Range { get; }Returnerar enRange objekt som representerar den del av ett dokument som finns i denna nod.
ResourceLoadingCallback { get; set; }Gör det möjligt att styra hur externa resurser laddas.
Styles { get; }Returnerar en samling stilar definierade i dokumentet.
WarningCallback { get; set; }Anropas under olika dokumentbehandlingsprocedurer när ett problem upptäcks som kan resultera i förlust av data eller formatering.

Metoder

namnBeskrivning
override Accept(DocumentVisitor)Accepterar en besökare.
AppendChild(Node)Lägger till den angivna noden i slutet av listan över underordnade noder för denna nod.
Clone(bool)Skapar en dubblett av noden.
CreateNavigator()Skapar navigator som kan användas för att korsa och läsa noder.
GetAncestor(NodeType)Hämtar den första förfadern till den angivnaNodeType .
GetAncestor(Type)Hämtar den första förfadern till den angivna objekttypen.
GetBuildingBlock(BuildingBlockGallery, string, string)Hittar ett byggblock med det angivna galleriet, kategorin och namnet.
GetChild(NodeType, int, bool)Returnerar en N:te underordnad nod som matchar den angivna typen.
GetChildNodes(NodeType, bool)Returnerar en aktiv samling av underordnade noder som matchar den angivna typen.
GetEnumerator()Tillhandahåller stöd för varje stiliteration över undernoderna för denna nod.
override GetText()Hämtar texten för denna nod och alla dess underordnade.
ImportNode(Node, bool)Importerar en nod från ett annat dokument till det aktuella dokumentet.
ImportNode(Node, bool, ImportFormatMode)Importerar en nod från ett annat dokument till det aktuella dokumentet med ett alternativ för att styra formateringen.
IndexOf(Node)Returnerar indexet för den angivna undernoden i den underordnade nodmatrisen.
InsertAfter(NodeNode)Infogar den angivna noden omedelbart efter den angivna referensnoden.
InsertBefore(NodeNode)Infogar den angivna noden omedelbart före den angivna referensnoden.
NextPreOrder(Node)Hämtar nästa nod enligt algoritmen för förbeställningsträdet.
PrependChild(Node)Lägger till den angivna noden i början av listan över underordnade noder för denna nod.
PreviousPreOrder(Node)Hämtar föregående nod enligt algoritmen för förbeställningsträdet.
Remove()Tar bort sig själv från föräldern.
RemoveAllChildren()Tar bort alla undernoder för den aktuella noden.
RemoveChild(Node)Tar bort den angivna underordnade noden.
RemoveSmartTags()Tar bort allaSmartTagunderliggande noder till den aktuella noden.
SelectNodes(string)Väljer en lista med noder som matchar XPath-uttrycket.
SelectSingleNode(string)Väljer den förstaNode som matchar XPath-uttrycket.
ToString(SaveFormat)Exporterar innehållet i noden till en sträng i angivet format.
ToString(SaveOptions)Exporterar innehållet i noden till en sträng med de angivna sparalternativen.

Anmärkningar

Vissa dokument, vanligtvis mallar, kan innehålla AutoText, AutoCorrect entries och/eller Building Blocks (även kända somordlista dokumentposter ,dokumentdelar ellerbyggklossar).

För att komma åt byggblock måste du ladda ett dokument i enDocument objekt. Byggklossar kommer att finnas tillgängliga viaGlossaryDocument fast egendom.

GlossaryDocument kan innehålla valfritt antalBuildingBlock objekt. VarjeBuildingBlock representerar en dokumentdel.

MotsvararordlistaDokument ochdocParts element i OOXML.

Exempel

Visar sätt att komma åt byggstenar i ett ordlistadokument.

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;

    // Det finns olika sätt att komma åt byggstenar.
    // 1 - Få de första/sista byggstenarna i samlingen:
    Assert.AreEqual("Block 1", glossaryDoc.FirstBuildingBlock.Name);
    Assert.AreEqual("Block 5", glossaryDoc.LastBuildingBlock.Name);

    // 2 - Få en byggsten efter index:
    Assert.AreEqual("Block 2", glossaryDoc.BuildingBlocks[1].Name);
    Assert.AreEqual("Block 3", glossaryDoc.BuildingBlocks.ToArray()[2].Name);

    // 3 - Få den första byggstenen som matchar ett galleri, namn och kategori:
    Assert.AreEqual("Block 4", 
        glossaryDoc.GetBuildingBlock(BuildingBlockGallery.All, "(Empty Category)", "Block 4").Name);

    // Vi kommer att göra det med en anpassad besökare,
    // som kommer att ge varje byggnadsblock i ordlistadokumentet en unik GUID
    GlossaryDocVisitor visitor = new GlossaryDocVisitor();
    glossaryDoc.Accept(visitor);
    Console.WriteLine(visitor.GetText());

    // I Microsoft Word kan vi komma åt byggstenarna via "Infoga" -> "Snabbdelar" -> "Byggstensarrangör".
    doc.Save(ArtifactsDir + "BuildingBlocks.GlossaryDocument.dotx"); 
}

/// <summary>
/// Ger varje byggsten i ett besökt ordlistadokument en unik GUID.
/// Lagrar GUID-byggblocksparen i en ordbok.
/// </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;
}

Se även