GlossaryDocument
GlossaryDocument class
Representerar rotelementet för ett ordlistadokument i ett Word-dokument. Ett ordlistadokument är en lagringsplats för AutoText, Autokorrigeringsposter och byggstenar.
För att lära dig mer, besökAspose.Words-dokumentobjektmodell (DOM) dokumentationsartikel.
public class GlossaryDocument : DocumentBase
Konstruktörer
| namn | Beskrivning |
|---|---|
| GlossaryDocument() | Default_Constructor |
Egenskaper
| namn | Beskrivning |
|---|---|
| BackgroundShape { get; set; } | Hämtar eller ställer in dokumentets bakgrundsform. Kan varanull . |
| BuildingBlocks { get; } | Returnerar en typad samling som representerar alla byggstenar i ordlistadokumentet. |
| Count { get; } | Hämtar antalet omedelbara barn till denna nod. |
| CustomNodeId { get; set; } | Anger anpassad nodidentifierare. |
| override Document { get; } | Hämtar denna instans. |
| FirstBuildingBlock { get; } | Hämtar den första byggstenen i ordlistadokumentet. |
| FirstChild { get; } | Hämtar nodens första barn. |
| FontInfos { get; } | Ger åtkomst till egenskaper för teckensnitt som används i detta dokument. |
| FootnoteSeparators { get; } | Ger åtkomst till fotnots-/slutnotsavgränsare som definierats i dokumentet. |
| HasChildNodes { get; } | Returersann om den här noden har några undernoder. |
| override IsComposite { get; } | Returersann eftersom denna nod kan ha underordnade noder. |
| LastBuildingBlock { get; } | Hämtar den sista byggstenen i ordlistadokumentet. |
| LastChild { get; } | Hämtar nodens sista barn. |
| Lists { get; } | Ger åtkomst till listformateringen som används i dokumentet. |
| NextSibling { get; } | Hämtar noden som följer direkt 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 dokumentets sidfärg. 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 som omedelbart föregår denna nod. |
| Range { get; } | Returnerar enRangeobjekt 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 formateringsåtergivning. |
Metoder
| namn | Beskrivning |
|---|---|
| override Accept(DocumentVisitor) | Tar emot en besökare. |
| override AcceptEnd(DocumentVisitor) | Accepterar en besökare för att besöka slutet av ordlistadokumentet. |
| override AcceptStart(DocumentVisitor) | Accepterar en besökare för att besöka början av ordlistadokumentet. |
| AppendChild<T>(T) | Lägger till den angivna noden i slutet av listan över underordnade noder för denna nod. |
| Clone(bool) | Skapar en duplikat av noden. |
| CreateNavigator() | Skapar en 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 hjälp av 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 live-samling av underordnade noder som matchar den angivna typen. |
| GetEnumerator() | Ger stöd för iterationen för varje stil över de underordnade noderna till denna nod. |
| override GetText() | Hämtar texten för denna nod och alla dess underordnade noder. |
| 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 undernodsmatrisen. |
| InsertAfter<T>(T, Node) | Infogar den angivna noden omedelbart efter den angivna referensnoden. |
| InsertBefore<T>(T, Node) | Infogar den angivna noden omedelbart före den angivna referensnoden. |
| NextPreOrder(Node) | Hämtar nästa nod enligt algoritmen för förbeställningsträdtraversering. |
| PrependChild<T>(T) | 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 trädtraversering i förbeställning. |
| Remove() | Tar bort sig själv från föräldern. |
| RemoveAllChildren() | Tar bort alla undernoder till den aktuella noden. |
| RemoveChild<T>(T) | Tar bort den angivna undernoden. |
| RemoveSmartTags() | Tar bort allaSmartTag underordnade 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 nodens innehåll till en sträng i det angivna formatet. |
| ToString(SaveOptions) | Exporterar nodens innehåll till en sträng med de angivna sparalternativen. |
Anmärkningar
Vissa dokument, vanligtvis mallar, kan innehålla Autotext, Autokorrigering poster och/eller byggstenar (även kalladeordlista dokumentposter ,dokumentdelar ellerbyggstenar).
För att komma åt byggstenar måste du ladda ett dokument i enDocument -objektet. Byggstenar kommer att finnas tillgängliga viaGlossaryDocument egendom.
GlossaryDocument kan innehålla valfritt antalBuildingBlockobjekt. VarjeBuildingBlock representerar en del av dokumentet.
Motsvarar denordlistaDokument ochdocPartselement i OOXML.
Exempel
Visar sätt att komma åt byggstenar i ett ordlistadokument.
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;
// Det finns olika sätt att komma åt byggstenar.
// 1 - Hämta de första/sista byggstenarna i samlingen:
Assert.AreEqual("Block 1", glossaryDoc.FirstBuildingBlock.Name);
Assert.AreEqual("Block 5", glossaryDoc.LastBuildingBlock.Name);
// 2 - Hämta en byggsten via index:
Assert.AreEqual("Block 2", glossaryDoc.BuildingBlocks[1].Name);
Assert.AreEqual("Block 3", glossaryDoc.BuildingBlocks.ToArray()[2].Name);
// 3 - Hämta 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 gör det med hjälp av en anpassad besökare,
// vilket ger varje BuildingBlock i GlossaryDocument ett unikt GUID
GlossaryDocVisitor visitor = new GlossaryDocVisitor();
// Besök början/slutet av ordlistadokumentet.
glossaryDoc.Accept(visitor);
// Besök endast början av ordlistadokumentet.
glossaryDoc.AcceptStart(visitor);
// Besök endast slutet av ordlistadokumentet.
glossaryDoc.AcceptEnd(visitor);
Console.WriteLine(visitor.GetText());
// I Microsoft Word kan vi komma åt byggstenarna via "Insert" -> "Quick Parts" -> "Building Blocks Organizer".
doc.Save(ArtifactsDir + "BuildingBlocks.GlossaryDocument.dotx");
}
/// <summary>
/// Ger varje byggsten i ett besökt ordlistadokument ett unikt GUID.
/// Lagrar GUID-byggstensparen 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
- class DocumentBase
- namnutrymme Aspose.Words.BuildingBlocks
- hopsättning Aspose.Words