THotPDF Advanced Workflow Metodăs

Această pagină adună metode publice avansate THotPDF care suportă repararea documentelor încărcate, rescrierea bazată pe fișiere, parsarea fluxurilor xref, ieșirea de conformitate și fluxurile de lucru de shaping

Preferați paginile axate pe sarcini, cum ar fi metodele de operare pe pagini, metodele pentru câmpurile de formular încărcate, metodele utilitare și ShapingFeatures pentru codul uzual de aplicație

Rezolvarea documentelor încărcate

Metodă Utilizare
DoPageOperationProgressTrimite progresul operațiilor pe pagină prin evenimentul de progres configurat
ResolveLoadedObjectRezolvă o referință la un obiect încărcat către obiectul pe care operațiile pe pagină îl pot inspecta sau copia
ResolveLoadedDictionaryRezolvă o referință la un obiect încărcat și îl returnează ca dicționar atunci când este posibil
ResolveLoadedArrayRezolvă o referință la un obiect încărcat și îl returnează ca tablou atunci când este posibil
EnsureLoadedRootIndexSe asigură că indicele catalogului încărcat este cunoscut înainte ca operațiile pe graful de obiecte să continue
MaterializeLazyStreamsÎncarcă datele de flux amânate înainte de o rescriere completă sau o operație de copiere la nivel de obiect
FindLoadedFormFieldByIndexReturnează un dicționar de câmp AcroForm încărcat după indexul câmpului și raportează numele său efectiv
FindLoadedFormFieldByNameReturnează un dicționar de câmp AcroForm încărcat după numele complet calificat al câmpului
ConfigurePDFVersionAplică capabilitățile versiunii PDF selectate curent la setările de ieșire ale documentului
RecoverReloadFEKFromBytesRecuperează cheia de criptare a fișierului pentru un document criptat reîncărcat atunci când parola furnizată se potrivește
LoadedEncryptVersionRaportează revizia de criptare a documentului încărcat curent
IsObjStmMemberObjectRaportează dacă un obiect provine dintr-un membru al unui flux de obiecte și are nevoie de tratare conștientă de fluxuri de obiecte
SyncMaxObjNumFromLoadedObjectsRescannează obiectele încărcate astfel încât numerele de obiect nou alocate să nu intre în conflict cu numerele existente

Stare și rescriere directă a fișierului

Metodă Utilizare
ClearDirectFileStateCurăță o înregistrare de stare a fișierului direct înainte ca un handle să fie reutilizat sau eliberat
GetDirectFileIndexMapează un handle de fișier direct la slotul de stare folosit de API-ul Direct File
DAFindReplacementIndexGăsește intrarea de înlocuire pentru un număr de obiect într-o înregistrare de stare a fișierului direct
DAReadObjectSourceCitește octeții sursă ai obiectului și datele de generație din starea fișierului direct
DAStoreObjectSourceStochează octeții sursă ai obiectului în starea fișierului direct pentru o rescriere ulterioară
DAAppendObjectSourceInternalAdaugă un nou corp de obiect la starea fișierului direct și returnează numărul de obiect alocat
DATryBuildCompressedFileStateConstruiește starea fișierului direct pentru fișierele care folosesc fluxuri de obiecte comprimate, atunci când este suportat
DADirectLoadObjectFromBodyParsează corpul unui obiect din fișierul direct într-o instanță de obiect încărcat
DARecoverAES256FileKeyRecuperează o cheie de fișier AES-256 dintr-un dicționar de criptare și parolă
DADirectPrepareObjectForAES256EncryptPregătește dicționarele și fluxurile de obiecte înainte de criptarea directă AES-256 a fișierului
DADirectDecryptObjectAES256Decriptează un obiect din fișierul direct parsat cu cheia activă de fișier AES-256
DAWriteDirectAES256RewriteScrie o rescriere de criptare sau decriptare AES-256 a fișierului direct într-un fișier țintă
DADirectEncryptFileAES256Criptează un fișier existent cu AES-256 prin calea de rescriere a fișierului direct
DADirectDecryptFileAES256Decriptează un fișier AES-256 existent prin calea de rescriere a fișierului direct
DAWriteFullRewriteScrie o rescriere completă a fișierului direct folosind tabelul de stare curent

Flux XRef și parsarea obiectelor

Metodă Utilizare
LoadXRefStreamDocumentÎncarcă un document al cărui startxref indică spre un flux xref
LoadXRefStreamDocumentFromFileÎncarcă un document xref-stream dintr-un fișier și returnează diagnostice cheie privind locația obiectelor
LoadXRefStreamDocumentEncFromFileÎncarcă dintr-un fișier un document xref-stream protejat prin parolă
XRefProbeObjCountRaportează câte obiecte a înregistrat încărcătorul xref-stream
XRefProbeObjNumReturnează numărul de obiect la un index de diagnostic bazat pe zero
XRefProbeCompactCountRaportează câte obiecte comprimate au fost materializate din fluxurile de obiecte
XRefProbeType2MismatchesRaportează nepotrivirile din antetul fluxului de obiecte găsite la încărcarea intrărilor xref de tip 2
XRefProbeObjHasKeyVerifică dacă un dicționar de obiect diagnostic încărcat conține o cheie numită
XRefProbeObjNameValReturnează o valoare de tip name dintr-un dicționar de obiect diagnostic încărcat
XRefProbeCompactObjNumReturnează numărul de obiect al unei intrări de diagnostic pentru obiect compact
XRefProbeType2EncryptedSkippedRaportează fluxurile de obiecte criptate omise de încărcătorul de fluxuri de obiecte de tip 2
XRefProbeCountReplacementCharsNumără caracterele de înlocuire Unicode din diagnosticele șirurilor încărcate
XRefProbeObjStringValReturnează o valoare de șir dintr-un dicționar de obiect diagnostic încărcat
XRefProbeDecryptObjStmSkipsRaportează omiterile de decriptare ale membrilor fluxului de obiecte folosite pentru a evita decriptarea dublă
TryParseModernPDFÎncearcă calea modernă de parsare PDF pentru documente cu flux xref și fluxuri de obiecte
CreateBasicPageContentCreează obiecte minime de conținut de pagină pentru o pagină încărcată sau sintetizată
CreatePDF16PageReferenceCreează o referință de pagină PDF 1.6 folosind graful de obiecte încărcat
CreateBasicResourcesCreează un dicționar minim de resurse pentru reconstrucția paginii
CreatePDF16ResourcesCreează un dicționar de resurse PDF 1.6 pentru reconstrucția paginii
ParseSimplePageObjectParsează un obiect simplu de pagină în reprezentarea de pagină încărcată
ParseRealPageContentParsează fluxul original de conținut al paginii pentru o pagină încărcată
ProcessObjectStreamsForDecompressionProcesează fluxurile de obiecte înainte ca obiectele decomprimate să fie inspectate sau copiate
ScanAndLoadReferencedObjectsScanează dicționarele de pagină și resurse și încarcă obiectele referite
ForceLoadMissingReferencedObjectsÎncarcă referințele care nu au fost materializate în timpul primei treceri de parsare
FindAllObjectStreamsLocalizează fluxurile de obiecte în graful documentului încărcat
ExtractStreamParametersExtrage valorile pentru lungimea fluxului de obiecte, număr și offset-ul primului obiect
ProcessFlateDecodeProcesează octeții fluxului de obiecte comprimat FlateDecode
AnalyzePageObjectAnalizează corpul unui obiect de pagină și actualizează evidența paginii încărcate
ExtendPageArrAdaugă un obiect indirect de pagină la tabloul de pagini încărcat
ParseSimpleDictionaryParsează corpul unui dicționar într-un THPDFDictionaryObject
ParseSimpleArrayParsează corpul unui tablou într-un THPDFArrayObject
ParseSimpleStreamParsează corpul unui flux într-un THPDFStreamObject
FindAndProcessObjectStreamGăsește un flux de obiecte după numărul obiectului și procesează membrii săi
ExtractObjectFromStreamExtrage un obiect dicționar parsat dintr-un membru al fluxului de obiecte
ExtractRawObjectFromStreamExtrage octeții brute ai obiectului dintr-un membru al fluxului de obiecte
IsObjectInStreamRaportează dacă un număr de obiect aparține unui flux de obiecte
GetObjectFromStreamReturnează un membru al fluxului de obiecte parsat ca obiect dicționar
ParseModernPageObjectParsează un obiect de pagină găsit prin calea modernă a fluxului de obiecte
IntelligentDecompressÎncearcă decomprimarea cu logică de rezervă conștientă de format
DecompressFlateDecodeDecomprimă octeții fluxului FlateDecode
ParseObjectStreamParsează un antet de flux de obiecte și tabelul membrilor
ReorderPageArrByPagesTreeReordonează paginile încărcate conform arborelui de pagini
GetCorrectPageOrderFromPagesTreeConstruiește ordinea paginilor din arborele de pagini încărcat
GetPageObjectIdReturnează numărul de obiect pentru un index de pagină încărcată
GetPageArrIndexForObjectNumberReturnează indexul din tabloul de pagini încărcat pentru un număr de obiect de pagină
ExtractNumericValueExtrage o valoare întreagă după o cheie numită în conținutul brut al obiectului
ParseDecompressedObjectsParsează membrii fluxului de obiecte decomprimate și returnează numerele obiectelor cheie
LoadCompressedXrefStreamÎncarcă datele fluxului xref comprimat pentru parsarea modernă a documentelor
LoadObjectStreamsDirectlyÎncarcă fluxurile de obiecte direct din documentul sursă curent
ParseXrefStreamDataParsează datele decodate ale tabelului xref-stream
ProcessObjectStreamObjectsProcesează obiectele din fluxul de obiecte decomprimate pornind de la numărul obiectului flux

Conformitate și ieșire de font

Metodă Utilizare
BuildAndApplyUnicodeFontSubsetConstruiește subsetul activ al fontului Unicode și aplică fluxul de font rezultat și datele de mapare
EnsurePDFUATabsOnAnnotatedPagesSe asigură că paginile PDF/UA adnotate declară ordinea tabulatorului cerută
EnsurePDFAOutputIntentVerifică dacă este prezent un output intent PDF/A atunci când profilul PDF/A selectat îl cere
EnsurePDFAColorSpaceConsistencyVerifică folosirea spațiului de culoare device față de setările de output-intent PDF/A și spațiu de culoare implicit
EmitDocumentDefaultColorSpacesScrie mapările implicite ale spațiilor de culoare ale documentului folosite de fluxurile PDF/A
EnsurePDFXOutputIntentVerifică dacă este prezent un output intent PDF/X înainte ca ieșirea să fie finalizată
EnsurePDFXPageBoxesVerifică cutiile de pagină cerute de profilele de ieșire PDF/X
_FindPAdESDSSStreamByDERGăsește un flux DSS existent ale cărui octeți DER se potrivesc cu un certificat, un răspuns OCSP sau un CRL în timpul construirii referințelor PAdES VRI

Helper-e avansate de shaping

Metodă Utilizare
ApplyArabicGSUBPositionalAplică substituții GSUB poziționale pentru arabă și mapează ID-urile de glif rezultate prin codepointuri sintetice
ArabicGSUBShapeToGIDsReturnează secvența de ID-uri de glif modelată de Arabic GSUB fără a emite text
ApplyArabicGSUBNativeShapingAplică shapingul arab nativ GSUB pentru fonturile care oferă substituții poziționale de glif
ApplyLatinLigatureFeatureAplică o funcție numită de ligatură Latină, cum ar fi liga sau clig, asupra unei secvențe Unicode
ApplyLatinSingleSubstitutionFeatureAplică o funcție numită de substituție unică Latină asupra unei secvențe Unicode
ApplyLatinFractionFeatureAplică funcția frac unei secvențe de fracții numerice atunci când fontul oferă substituțiile necesare
ApplyArabicGSUBRefinementAplică rafinarea ligaturilor Arabic GSUB după trecerea de shaping arab de bază
_ApplyGSUBLookupAtAplică un singur lookup GSUB rezolvat la o poziție din secvența de glife și raportează intervalul actualizat
_ApplyGSUBFeatureToRunAplică toate lookup-urile pentru o funcție GSUB peste o secvență de glife în ordinea listei de lookup-uri
_ApplyGSUBFeatureAtRunPositionAplică o funcție GSUB la o poziție din secvența de glife pentru treceri de shaping sensibile la poziție
_TibetanShapeSpanToGIDsModelează un interval Tibetan în ID-uri de glif înainte de ieșirea cu codepoint sintetic
_GSUBResolveIndicScriptAlege eticheta de script Indic OpenType disponibilă în font, preferând etichetele de script v2 atunci când sunt prezente
_IndicShapeSyllableToGIDsAplică lanțul de funcții Indic GSUB unei silabe reordonate și returnează ID-uri de glif

Vezi și