本頁彙整支援 loaded-document repair、file-backed rewriting、xref-stream parsing、conformance output 與 shaping workflows 的 advanced public THotPDF methods
常見 application code 請優先使用 task-focused pages,例如 page operation methods、loaded form field methods、utility methods 與 ShapingFeatures
| Method |
Usage |
DoPageOperationProgress | Dispatches page-operation progress through the configured progress event |
ResolveLoadedObject | Resolves a loaded object reference to the object that page operations can inspect or copy |
ResolveLoadedDictionary | Resolves a loaded object reference and returns it as a dictionary when possible |
ResolveLoadedArray | Resolves a loaded object reference and returns it as an array when possible |
EnsureLoadedRootIndex | Ensures that the loaded catalog index is known before object-graph operations continue |
MaterializeLazyStreams | Loads deferred stream data before a full rewrite or object-level copy operation |
FindLoadedFormFieldByIndex | Returns a loaded AcroForm field dictionary by field index and reports its effective name |
FindLoadedFormFieldByName | Returns a loaded AcroForm field dictionary by fully qualified field name |
ConfigurePDFVersion | Applies the currently selected PDF version capabilities to document output settings |
RecoverReloadFEKFromBytes | Recovers the file encryption key for a reloaded encrypted document when the supplied password matches |
LoadedEncryptVersion | Reports the encryption revision of the currently loaded document |
IsObjStmMemberObject | Reports whether an object came from an object stream member and needs object-stream-aware handling |
SyncMaxObjNumFromLoadedObjects | Rescans loaded objects so newly allocated object numbers do not collide with existing numbers |
| Method |
Usage |
ClearDirectFileState | Clears a direct-file state record before a handle is reused or released |
GetDirectFileIndex | Maps a direct-file handle to the state slot used by the Direct File API |
DAFindReplacementIndex | Finds the replacement entry for an object number in a direct-file state record |
DAReadObjectSource | Reads stored object source bytes and generation data from direct-file state |
DAStoreObjectSource | Stores object source bytes in direct-file state for later rewrite |
DAAppendObjectSourceInternal | Appends a new object body to the direct-file state and returns its allocated object number |
DATryBuildCompressedFileState | Builds direct-file state for files that use compressed object streams when supported |
DADirectLoadObjectFromBody | Parses a direct-file object body into a loaded object instance |
DARecoverAES256FileKey | Recovers an AES-256 file key from an encryption dictionary and password |
DADirectPrepareObjectForAES256Encrypt | Prepares object dictionaries and streams before AES-256 direct-file encryption |
DADirectDecryptObjectAES256 | Decrypts a parsed direct-file object with the active AES-256 file key |
DAWriteDirectAES256Rewrite | Writes a direct-file AES-256 encrypt or decrypt rewrite to a target file |
DADirectEncryptFileAES256 | Encrypts an existing file with AES-256 through the direct-file rewrite path |
DADirectDecryptFileAES256 | Decrypts an existing AES-256 file through the direct-file rewrite path |
DAWriteFullRewrite | Writes a full direct-file rewrite using the current state table |
| Method |
Usage |
LoadXRefStreamDocument | Loads a document whose startxref points at an xref stream |
LoadXRefStreamDocumentFromFile | Loads an xref-stream document from a file and returns key object-location diagnostics |
LoadXRefStreamDocumentEncFromFile | Loads a password-protected xref-stream document from a file |
XRefProbeObjCount | Reports how many objects the xref-stream loader registered |
XRefProbeObjNum | Returns the object number at a zero-based diagnostic index |
XRefProbeCompactCount | Reports how many compressed objects were materialized from object streams |
XRefProbeType2Mismatches | Reports object-stream header mismatches found while loading type-2 xref entries |
XRefProbeObjHasKey | Checks whether a loaded diagnostic object dictionary contains a named key |
XRefProbeObjNameVal | Returns a name value from a loaded diagnostic object dictionary |
XRefProbeCompactObjNum | Returns the object number of a compact-object diagnostic entry |
XRefProbeType2EncryptedSkipped | Reports encrypted object streams skipped by the type-2 object-stream loader |
XRefProbeCountReplacementChars | Counts Unicode replacement characters in loaded string diagnostics |
XRefProbeObjStringVal | Returns a string value from a loaded diagnostic object dictionary |
XRefProbeDecryptObjStmSkips | Reports object-stream member decrypt skips used to avoid double decryption |
TryParseModernPDF | Attempts the modern PDF parse path for xref-stream and object-stream documents |
CreateBasicPageContent | Creates minimal page content objects for a loaded or synthesized page |
CreatePDF16PageReference | Creates a PDF 1.6 page reference using the loaded object graph |
CreateBasicResources | Creates a minimal resource dictionary for page reconstruction |
CreatePDF16Resources | Creates a PDF 1.6 resource dictionary for page reconstruction |
ParseSimplePageObject | Parses a simple page object into the loaded page representation |
ParseRealPageContent | Parses the original page content stream for a loaded page |
ProcessObjectStreamsForDecompression | Processes object streams before decompressed objects are inspected or copied |
ScanAndLoadReferencedObjects | Scans page and resource dictionaries and loads referenced objects |
ForceLoadMissingReferencedObjects | Loads references that were not materialized during the first parse pass |
FindAllObjectStreams | Locates object streams in the loaded document graph |
ExtractStreamParameters | Extracts object-stream length, count, and first-object offset values |
ProcessFlateDecode | Processes FlateDecode-compressed object-stream bytes |
AnalyzePageObject | Analyzes a page object body and updates loaded page bookkeeping |
ExtendPageArr | Adds a page indirect object to the loaded page array |
ParseSimpleDictionary | Parses a dictionary body into a THPDFDictionaryObject |
ParseSimpleArray | Parses an array body into a THPDFArrayObject |
ParseSimpleStream | Parses a stream body into a THPDFStreamObject |
FindAndProcessObjectStream | Finds an object stream by object number and processes its members |
ExtractObjectFromStream | Extracts a parsed dictionary object from an object stream member |
ExtractRawObjectFromStream | Extracts raw object bytes from an object stream member |
IsObjectInStream | Reports whether an object number belongs to an object stream |
GetObjectFromStream | Returns a parsed object-stream member as a dictionary object |
ParseModernPageObject | Parses a page object found through the modern object-stream path |
IntelligentDecompress | Attempts decompression with format-aware fallback logic |
DecompressFlateDecode | Decompresses FlateDecode stream bytes |
ParseObjectStream | Parses an object stream header and member table |
ReorderPageArrByPagesTree | Reorders loaded pages according to the page tree |
GetCorrectPageOrderFromPagesTree | Builds the page order from the loaded page tree |
GetPageObjectId | Returns the object number for a loaded page index |
GetPageArrIndexForObjectNumber | Returns the loaded page-array index for a page object number |
ExtractNumericValue | Extracts an integer value after a named key in raw object content |
ParseDecompressedObjects | Parses decompressed object-stream members and returns key object numbers |
LoadCompressedXrefStream | Loads compressed xref stream data for modern document parsing |
LoadObjectStreamsDirectly | Loads object streams directly from the current source document |
ParseXrefStreamData | Parses decoded xref-stream table data |
ProcessObjectStreamObjects | Processes decompressed object-stream objects from a stream object number |
| Method |
Usage |
ApplyArabicGSUBPositional | Applies Arabic positional GSUB substitutions and maps shaped glyph IDs through synthetic codepoints |
ArabicGSUBShapeToGIDs | Returns the Arabic GSUB-shaped glyph-ID sequence without emitting text |
ApplyArabicGSUBNativeShaping | Applies native Arabic GSUB shaping for fonts that provide positional glyph substitutions |
ApplyLatinLigatureFeature | Applies a named Latin ligature feature such as liga or clig to a Unicode run |
ApplyLatinSingleSubstitutionFeature | Applies a named Latin single-substitution feature to a Unicode run |
ApplyLatinFractionFeature | Applies the frac feature to a numeric fraction run when the font supplies the required substitutions |
ApplyArabicGSUBRefinement | Applies Arabic GSUB ligature refinement after the base Arabic shaping pass |
_ApplyGSUBLookupAt | Applies one resolved GSUB lookup at a glyph-run position and reports the updated span |
_ApplyGSUBFeatureToRun | Applies all lookups for one GSUB feature across a glyph run in lookup-list order |
_ApplyGSUBFeatureAtRunPosition | Applies a GSUB feature at one glyph-run position for position-sensitive shaping passes |
_TibetanShapeSpanToGIDs | Shapes one Tibetan span to glyph IDs before synthetic-codepoint output |
_GSUBResolveIndicScript | Chooses the OpenType Indic script tag available in the font, preferring v2 script tags when present |
_IndicShapeSyllableToGIDs | Applies the Indic GSUB feature chain to one reordered syllable and returns glyph IDs |