|
This class represents a name tree node.
A name tree is a way of representing a mapping from strings to
other Elements.
The standard PDF dictionary object does something similar, but
it works natively in terms of shorter, non-Unicode strings and the
PDF specification implies that it might not have been well
optimized for large numbers of items.
As such the PDF specification uses this type of tree structure,
in areas where there may be large numbers of keys and values.
This class is always an indirect object because
CollectionElement.EntryResources, EntryKids,
NavigatorElement.EntryResources and NavigatorElement.EntryStrings
require it to be so.
This is definitively detailed in:.
The ISO PDF Specification, ISO 32000-1:2008 PDF 1.7; Table: 36,
page 89.
Name tree nodes form the structure of a name tree, which maps
string keys in lexicographic order to PDF values. Name trees are
used throughout PDF for named destinations, embedded files, and
other named resources.
An intermediate node holds a Kids array of indirect references
to child nodes and a Limits array containing the lexicographically
smallest and largest keys in its subtree. Readers use the Limits
arrays to navigate to the correct subtree for a given key without
visiting every node.
A leaf node holds a Names array of alternating key-value pairs.
The keys are string objects in ascending lexicographic order, and
the values are the corresponding PDF objects for each key.
The root node may be either an intermediate node or a leaf node.
A root that holds Names directly is a leaf root covering all
entries in a single node.
System.Object
WebSupergoo.ABCpdf14.Elements.Element
WebSupergoo.ABCpdf14.Elements.TreeNodeElement
WebSupergoo.ABCpdf14.Elements.NameTreeNodeElement<T>
|