THPDFXFAButtonAppearance
Unit: HPDFXFAHeadless
An owned native appearance bundle returned by HPDFXFABuildButtonAppearance, containing actual HotPDF objects for one pushbutton without a page or field identity
| Member | Contract |
|---|---|
ObjectCount: Integer | Number of slots containing the prepared reachable indirect objects, including appearance streams and actual font resources |
Objects[Index: Integer]: THPDFObject | Borrowed object at an index from zero through ObjectCount minus one; invalid indices raise EHPDFXFAHeadlessError |
Properties: THPDFDictionaryObject | Borrowed direct dictionary containing AP, MK, H and available DA/Q entries; it excludes page, rectangle, field name and field flags |
Fonts: THPDFDictionaryObject | Borrowed direct dictionary of default-appearance font aliases and indirect font references for the caller's AcroForm DR |
GlyphUnits: Integer | Aggregate glyph-unit accounting used while preparing the normal and requested alternate caption appearances |
SerializedBytes: Integer | Sum of serialized indirect object bodies and the two direct property/resource roots; excludes the caller's widget dictionary, object headers, xref and trailer |
DetachObject(Index): THPDFObject | Transfers ownership and clears the indexed slot without renumbering other objects; a previously detached slot returns nil |
DetachProperties: THPDFDictionaryObject | Transfers ownership of the direct property root and clears Properties |
DetachFonts: THPDFDictionaryObject | Transfers ownership of the direct resource root and clears Fonts |
The destructor frees all objects and roots that remain attached; callers own and must release or adopt every detached object
All indirect objects use consecutive generation-zero numbers beginning at the factory's FirstObjectNumber; references stay inside the bundle and resource aliases use the actual adopted font object numbers
When adopting the bundle into an existing document, reserve a disjoint object-number range, adopt all objects, preserve their numbers, attach the property values to the actual widget and register the Fonts entries in that document's AcroForm DR