Bir Belgedeki Düğümlerin Mantıksal Düzeyleri
Bu belgede bazen bir belgedeki “blok düzeyi”, “satır içi düzey” (“satır içi” olarak da bilinir) veya “satır düzeyi” düğümleri gibi bir “düzey"e ait olan bir grup düğüm sınıfına atıfta bulunulur.. Bir belgedeki bu düzeyler tamamen mantıksal olarak ayrılır ve kalıtımla veya diğer Aspose.Words DOM araçlarıyla açıkça ifade edilmez. Düğüm düzeyi, belge ağacında düğümün genellikle oluşacağı yeri tanımlamak için kullanılır.
Önceki makalede, düğümler arasındaki ilişkiden ve tüm düğümlerin herhangi bir düğümün çocuğu olmasına izin verilmediğinden zaten bahsetmiştik. Örneğin, Cell yalnızca bir Row alt öğesi olabilir ve bir Row yalnızca bir Table alt öğesi olabilir, vb. Bu ilişkiler aynı zamanda düğümlerin belgedeki düzeylere mantıksal olarak bölünmesi için de geçerlidir.
Aşağıdaki bölümlerde Aspose.Words’teki düğümlerin mantıksal düzeyleri ve her düzeye ait sınıflar açıklanmaktadır.
Belge ve Bölüm Mantıksal Düzey
Bir Word belgesi, Section sınıfı tarafından temsil edilen ve bölüm sonlarıyla ayrılmış bir veya daha fazla bölümden oluşur. Bir bölüm kendi sayfa boyutunu, kenar boşluklarını, yönünü, metin sütunu sayısını ve üstbilgileri ve altbilgileri tanımlayabilir.
Document ve Section seviye düğümleri aşağıdaki şemada gösterildiği gibi yapıya sahiptir.
Bölüm, ana metnin yanı sıra ilk, çift ve tek sayfaların üstbilgilerini ve altbilgilerini içerir. Bu farklı metin “akışlarına” stories adı verilir.
Aspose.Words’te Section düğümü, Body ve HeaderFooter öykü düğümlerini içerir. Body nesnesi ana metni saklar. HeaderFooter nesneleri, her üst bilgi ve alt bilgi için metni saklar. Herhangi bir hikayenin metni, sırasıyla Blok düzeyindeki Paragraph ve Table nesneleri tarafından temsil edilen paragraflardan ve tablolardan oluşur.
Ayrıca her Word belgesi, Aspose.Words’deki GlossaryDocument düğümü tarafından temsil edilen bir sözlük içerebilir. Sözlük belgesi building_blocks BuildingBlockType.AUTO_TEXT ve BuildingBlockType.AUTO_CORRECT girişlerini içerir.
GlossaryDocument, farklı türdeki sözlük belgesi girişlerini temsil eden BuildingBlock düğümlerini içerir. Her BuildingBlock, belgelere eklenebilen, kaldırılabilen ve kopyalanabilen bölümler içerir.
Mantıksal Seviyeyi Engelle
Blok düzeyindeki düğümler, içerik ve içerik kontrollerine yönelik kapsayıcıları temsil eder ve aşağıdaki düğümlerdeki belge ağacı alt düğümlerinde meydana gelebilir:
Blok düzeyindeki düğümler aşağıdaki sınıflarla temsil edilir:
- En önemli blok seviyesi düğümleri olan Tables ve Paragraphs
- Hem blok düzeyinde hem de satır içi düzeyde gerçekleşen Bookmarks
- Özel işaretlemeyi temsil eden ve hem içerik hem de içerik kontrollerini içerebilen StructuredDocumentTag
Aşağıdaki şemada blok düzeyindeki öğeler gösterilmektedir.
Satır İçi Mantıksal Seviye
Satır içi düzeydeki düğümler, belgenin gerçek içeriğini temsil eder ve aşağıdaki kapsayıcılarda bulunabilir:
- Paragraph – en yaygın konteyner
- SmartTag
- StructuredDocumentTag
Satır içi düzey öğeler aşağıdaki sınıflarla temsil edilir:
- Run – farklı biçimlendirilmiş metin dizileri
- BookmarkStart ve BookmarkEnd yer imlerini temsil eder
- CommentRangeStart, CommentRangeEnd, Comment ve Footnote ek açıklamaları temsil eder
- Alan karakterlerini temsil eden FieldStart, FieldChar, FieldSeparator ve FieldEnd, Word alanlarını temsil eden FormField
- SpecialChar, belgedeki özel karakterleri temsil eder
- Shape ve GroupShape şekilleri, çizimleri, görüntüleri vb. temsil eder.
- SmartTag ve StructuredDocumentTag özel işaretlemeyi temsil eder
Aşağıdaki diyagram satır içi düzey düğüm yapısını göstermektedir.
Microsoft Word’teki şekiller, Office Art Otomatik Şekillerini, metin kutularını, görüntüleri, OLE nesnelerini ve ActiveX denetimlerini içerir ve bunların tümü Shape
sınıfı kullanılarak temsil edilir. Bazı şekiller metin de içerebildiğinden, Aspose.Words’deki Şekil düğümleri blok düzeyinde düğümler içerebilir.
Şekiller GroupShape düğümleri kullanılarak birbirlerinin içinde gruplandırılabilir.
Tablo, Satır ve Hücre Düğümü Düzeyi
Tablo satır ve hücre düğümlerinden oluşur. Table öğeleri aşağıdaki sınıflarla temsil edilir:
- Row bir tablo satırını temsil eder
- Cell bir tablo hücresini temsil eder
- StructuredDocumentTag özel işaretlemeyi temsil eder
Aşağıdaki şemada Table, Row ve Cell seviyelerinin düğüm yapıları gösterilmektedir.