Normalizare cu păstrarea sintaxei a unei singure secvențe logice de conținut de pagină PDF și detectare robustă a limitelor imaginilor inline
NormalizePdfContentSequence reunește fluxurile de conținut furnizate în ordinea vectorului și tokenizează rezultatul ca o singură secvență logică de conținut de pagină
Păstrează șirurile literale, șirurile hexazecimale, numele, vectorii, dicționarele, sarcinile utile ale imaginilor inline și operatorii necunoscuți, canonizând în același timp separarea token-urilor; comentariile pot fi eliminate, iar echilibrul structural poate fi cerut
CollectPdfContentResourceUses înregistrează numele resurselor consumate de operatorii de text, XObject, stare grafică, spațiu de culoare, pattern, shading, proprietăți de conținut marcat și imagine inline, sub bugetul central de token-uri
FindInlineImageBlock localizează un bloc complet BI, ID și EI, fără a trata o secvență de octeți EI din interiorul datelor imaginii ca terminator
| Function | Description |
TPdfContentNormalizeOptions.Default | Activează eliminarea comentariilor, validarea echilibrului, compresia Flate avantajoasă și sărirea paginilor nesigure; interzice rescrierile de documente semnate și aplică cele trei limite implicite |
NormalizePdfContentSequence | Returnează octeții normalizați și un raport detaliat, sau False cu o stare de eșec și text de diagnostic |
CollectPdfContentResourceUses | Returnează tipul resursei și numele PDF decodificat pentru fiecare operator de conținut care consumă resurse, sau False cu text de diagnostic pentru intrare malformată sau peste buget |
FindInlineImageBlock | Returnează offset-urile următorului bloc complet de imagine inline de la StartPos sau după |
| Type | Description |
TPdfContentNormalizeStatus | Categorie de rezultat sau de eșec pentru normalizarea de secvență și de document |
TPdfContentNormalizeOptions | Politica de normalizare și limitele de octeți și de token-uri per pagină |
TPdfContentNormalizeReport | Stare, totaluri de octeți și de pagini, metrici de fluxuri și de token-uri, observații de sintaxă și text de diagnostic |
TPdfContentResourceKind | Valori de resurse pcrkFont, pcrkXObject, pcrkExtGState, pcrkColorSpace, pcrkPattern, pcrkShading și pcrkProperties |
TPdfContentResourceUse | Un singur Name de resursă decodificat, împreună cu Kind-ul său |
TPdfContentResourceUses | Vector dinamic de utilizări de resurse colectate, în ordinea conținutului |
| Valoare | Semnificație |
pcnsNotStarted | Raportul a fost inițializat, dar normalizarea nu s-a încheiat |
pcnsCompleted | Normalizarea s-a încheiat cu succes |
pcnsInputLimitExceeded | Intrarea logică a depășit MaxInputBytesPerPage sau o limită configurată nu a fost pozitivă |
pcnsOutputLimitExceeded | Octeții normalizați ar depăși MaxOutputBytesPerPage |
pcnsTokenLimitExceeded | Secvența de conținut a depășit MaxTokensPerPage |
pcnsMalformedToken | Un token de conținut PDF nu a putut fi citit complet |
pcnsUnresolvedInlineImage | Limita unei sarcini utile complete de imagine inline nu a putut fi găsită |
pcnsUnbalancedState | Echilibrul cerut al domeniilor de grafică, text, conținut marcat, compatibilitate, vector sau dicționar a eșuat |
pcnsUnsupportedFilter | Normalizarea la nivel de document a întâlnit un filtru de flux de conținut pe care nu îl poate decodifica |
pcnsEncryptedDocument | Normalizarea la nivel de document a refuzat intrarea criptată |
pcnsSignedDocument | Normalizarea la nivel de document a refuzat intrarea semnată, fără autorizare |
pcnsDocumentRewriteFailed | Rescrierea sau verificarea graficului de obiecte PDF care include a eșuat |
pcnsResourceBudgetExceeded | Termenul limită al TPdfParserResourceBudget la nivel de proces a fost atins înainte ca normalizarea să se încheie |
| Field | Description |
RemoveComments | Omite comentariile PDF, păstrând limitele necesare de token-uri |
RequireBalancedState | Cere domenii echilibrate q/Q, BT/ET, de conținut marcat, de compatibilitate, de vector și de dicționar |
CompressOutput | Permite învelișului la nivel de document să comprime Flate un flux de pagină normalizat, când compresia îi reduce dimensiunea |
SkipUnsafePages | Permite normalizării la nivel de document să păstreze o pagină neschimbată după un rezultat nesigur sau nesuportat, în loc să abandoneze rescrierea documentului |
AllowSignedDocument | Permite explicit o rescriere completă a intrării semnate, ceea ce invalidează intervalele de octeți ale semnăturilor existente |
MaxInputBytesPerPage | Număr maxim total de octeți de-a lungul fluxurilor de conținut furnizate, pentru o pagină |
MaxOutputBytesPerPage | Număr maxim de octeți permis în secvența de conținut normalizată |
MaxTokensPerPage | Număr maxim de token-uri inspectate pentru o pagină |
| Field | Description |
Status | TPdfContentNormalizeStatus-ul curent |
SourceByteCount | Totalul octeților de conținut din sursă |
OutputByteCount | Totalul octeților de ieșire normalizați sau rescriși |
PageCount | Paginile inspectate de normalizarea la nivel de document |
NormalizedPageCount | Paginile înlocuite cu succes cu conținut normalizat |
SkippedPageCount | Paginile nesigure păstrate neschimbate, conform politicii de sărire |
InputStreamCount | Fluxurile de conținut din sursă, reunite în secvențe logice de pagini |
OutputStreamCount | Fluxurile de conținut normalizate produse |
CoalescedArrayCount | Vectorii /Contents cu fluxuri multiple, înlocuiți de un singur flux normalizat |
TokenCount | Token-urile procesate |
CommentCount | Comentariile întâlnite, fie păstrate, fie eliminate |
InlineImageCount | Blocurile complete de imagini inline păstrate |
UnknownOperatorCount | Operatorii nerecunoscuți păstrați întocmai |
ErrorMessage | Text de diagnostic pentru primul eșec |