Építőelemek

Építőelemek

Ez az útmutató bemutatja, hogyan olvassuk és módosítsuk a dokumentum szószedet dokumentumában tárolt újrahasználható tartalomépítő elemeket a Aspose.Words FOSS segítségével a .NET számára. A könyvtár AutoText bejegyzéseket, címlapokat, fejléceket, lábléceket és hasonló előre definiált tartalmakat tesz elérhetővé a Document.GlossaryDocument és a BuildingBlock/BuildingBlockCollection objektummodellen keresztül.


A Szószedet Dokumentum

Minden Document egy GlossaryDocument elemet tartalmaz — amely Document.GlossaryDocument útján érhető el — ami maga is egy DocumentBase alosztály, és az építőelemeket tárolja. A BuildingBlocks tulajdonsága egy BuildingBlockCollection értéket ad vissza, a FirstBuildingBlock/LastBuildingBlock pedig gyors hozzáférést biztosít a lista végeihez. Egy konkrét építőelemet a GetBuildingBlock(gallery, category, name) segítségével kereshetünk meg, amely egyezik a BuildingBlockGallery, a kategória karakterlánca és a név együtt.


Építőelem Szerkezete

BuildingBlock egy CompositeNode, ezért saját tartalomfát tartalmaz — Sections (egy SectionCollection), FirstSection és LastSection — ugyanúgy, ahogy egy Document szekciókat tárol. Metadataként szolgáló tulajdonságai azonosítják és osztályozzák: Name, Guid, Description, Category, Gallery (egy BuildingBlockGallery — AutoText, CoverPage, Headers, Footers, Tables, Watermarks, és még tucatnyi előre definiált galéria), Type (egy BuildingBlockType), és Behavior (egy BuildingBlockBehavior a Content, Paragraph vagy Page közül), amely szabályozza, hogyan olvad bele a tartalma egy dokumentumba a beszúráskor.


Az Építőelem Gyűjtemény Kezelése

BuildingBlockCollection támogatja a teljes gyűjtemény szerkesztését: Add(node), Insert(index, node), Remove(node), RemoveAt(index), Clear(), Contains(node) és IndexOf(node), valamint ToArray() és GetEnumerator() olvasáshoz. Mivel ez egy NodeCollection, az építőelemek létrehozhatók, klónozhatók és áthelyezhetők ugyanazokkal a node API-kkal, mint a dokumentumfa bármely más része.


Helyőrző Szöveg Építőelemek

A strukturált dokumentumcímkék hivatkozhatnak egy építőelemre helyőrző tartalomként: StructuredDocumentTag.Placeholder és StructuredDocumentTagRangeStart.Placeholder is visszaadják a BuildingBlock-t, amely akkor látható, amikor a címke üres, a közös IStructuredDocumentTag.Placeholder tulajdonságon keresztül.


Tippek és Legjobb Gyakorlatok

  • Figyelmesen egyeztesd GetBuildingBlock(gallery, category, name) három argumentumát — ugyanaz a név létezhet különböző galériákban vagy kategóriákban.
  • Használd a BuildingBlockGallery-t annak szűrésére, hogy milyen típusú újrahasználható tartalmat keresel (AutoText, CoverPage, Tables, Watermarks stb.), ahelyett, hogy csak név alapján vizsgálnád minden építőelemet.
  • BuildingBlockBehavior határozza meg, hogy a beillesztett tartalom hogyan egyesül a környező dokumentummal (Content, Paragraph vagy Page) — ellenőrizd ezt, mielőtt azt feltételeznéd, hogy egy építőelem a várt módon fog beilleszkedni.
  • Mivel a BuildingBlock egy CompositeNode, kezeld úgy, mint bármely más node al-fát az építése vagy szerkesztése során — a AppendChild, InsertAfter és hasonló node metódusok mind alkalmazandók.

Gyakori problémák

ProblémaOkJavítás
GetBuildingBlock() nem ad vissza semmitA galéria, a kategória vagy a név nem egyezik pontosan egy létező építőelemmelSorolja fel a(z) GlossaryDocument.BuildingBlocks elemet, hogy megtalálja a pontos Gallery/Category/Name kombinációt
A beillesztett építőelem tartalma váratlanul összeolvadBehavior (Content/Paragraph/Page) nincs figyelembe véveEllenőrizze a BuildingBlock.Behavior beillesztés előtt, hogy megértse, hogyan fog egyesülni
A strukturált dokumentum címkehelyőhely nem jeleníti meg a várt tartalmatPlaceholder egy másik BuildingBlock-re mutat, mint azt feltételeztékOlvassa el a StructuredDocumentTag.Placeholder -t, hogy megerősítse, mely építőelem van valójában hivatkozva

FAQ

Hol tárolódnak az építőelemek egy dokumentumban?

A dokumentum GlossaryDocument-jában, amely a Document.GlossaryDocument útján érhető el, és amelynek BuildingBlocks tulajdonsága egy BuildingBlockCollection.

Hogyan találhatok meg egy konkrét építőelemet, például egy AutoText bejegyzést?

Hívja meg a GlossaryDocument.GetBuildingBlock(gallery, category, name) a megfelelő BuildingBlockGallery, kategória és név megadásával.

Hozzáadhatok új építőelemeket programozottan?

Igen — a BuildingBlockCollection támogatja a Add(node) és a Insert(index, node) funkciókat, mivel ez egy NodeCollection.

Mit szabályoz BuildingBlockBehavior?

Hogyan illeszkedik be a szerkezetblokk tartalma a dokumentumba, amikor beillesztik — mint Content, egy teljes Paragraph, vagy egy teljes Page.

Hogyan kapcsolódik egy szerkezetblokk a struktúrált dokumentum címke helyőrző szövegéhez?

StructuredDocumentTag.Placeholder (és StructuredDocumentTagRangeStart.Placeholder) visszaadják a BuildingBlock-t, amely egy SDT helyőrző tartalmát biztosítja, ha az üres.


API Reference Összegzés

Osztály / MetódusLeírás
Document.GlossaryDocumentA dokumentum GlossaryDocument, amely az összes építőelemet tartalmazza
GlossaryDocument.BuildingBlocksBuildingBlockCollection minden építőelemből
GlossaryDocument.GetBuildingBlock()Kikeresi egy építőelemet galéria, kategória és név alapján
BuildingBlockEgy CompositeNode a(z) Name, Gallery, Category, Behavior, Type, Sections segítségével
BuildingBlockCollectionAdd(), Insert(), Remove(), Clear(), Contains(), IndexOf()
BuildingBlockGallery / BuildingBlockType / BuildingBlockBehaviorAz építőelemet osztályozó enumok
StructuredDocumentTag.PlaceholderA BuildingBlock az SDT helyőrző tartalma

Lásd még:

 Magyar