Sonde di Regressione Differenziali Deterministiche
HPDFCompareRegressionResultsDeterministic esegue due adattatori di motore ripetutamente nei domini selezionati, rifiuta le esecuzioni instabili o fallite e registra un solo risultato ordinato leggibile dalla macchina
API
function HPDFCompareRegressionResultsDeterministic(
const Input: TBytes;
Domains: THPDFRegressionDomains;
const LeftProbe, RightProbe: THPDFRegressionProbe;
const Options: THPDFDifferentialProbeOptions;
out AInfo: THPDFDifferentialRegressionInfo): Boolean;
function HPDFProbeHotPDFDocument(
Domain: THPDFRegressionDomain;
const Input: TBytes): AnsiString;
function HPDFDifferentialRegressionInfoToJSON(
const AInfo: THPDFDifferentialRegressionInfo): AnsiString;
Domini
| Dominio | Firma HotPDF integrata |
|---|---|
rgdParser | Sintesi di pagine, oggetti, versione, annotazioni, font, immagini, moduli, firme, cifratura, AcroForm e struttura |
rgdRenderer | SHA-256 BGR dei pixel dall'alto in basso a una DPI fissa con esclusi alpha e riempimento delle righe di scansione |
rgdText | SHA-256 UTF-8 delimitato per pagina dopo la normalizzazione di CRLF e CR |
rgdSave | SHA-256 e lunghezza in byte dell'output limitato prodotto con ordine deterministico del dizionario |
I valori legacy rgdSignature e rgdConformance restano disponibili così che gli adattatori di sonda esistenti mantengano i propri valori ordinali e la compatibilità della sorgente
HPDFRegressionDomainName(Domain) restituisce il nome stabile in minuscolo di un valore THPDFRegressionDomain come parser o renderer per i campi di log e dei report
Contratto di stabilità
HPDFDefaultDifferentialProbeOptions seleziona tre esecuzioni, un limite di input di 256 MiB e nomi di motore di fallback stabili
RepeatCount accetta da 2 a 64 esecuzioni; un cambiamento della firma all'interno di un motore marca quel dominio come instabile anche quando la sua prima firma corrisponde all'altro motore
Le eccezioni della sonda vengono convertite in firme di errore stabili che contengono la classe dell'eccezione e uno SHA-256 del messaggio, e qualsiasi errore fa chiudere in modo sicuro il dominio in disaccordo
Lo stesso input immutabile viene fornito in ordine fisso di dominio e motore, e ogni dominio selezionato appare una volta nel report JSON
Limiti integrati
L'overload configurabile HPDFProbeHotPDFDocument accetta una DPI di rendering, il numero massimo di pagine e i byte massimi di output
I fingerprint di render escludono alpha e riempimento di riga, i fingerprint di testo normalizzano la rappresentazione delle nuove righe e l'output di save usa uno stream limitato prima dell'hashing
Report
THPDFDifferentialRegressionInfo trasporta i set di domini confrontati e divergenti, le firme sinistra e destra, i set instabili, i set di errore, i nomi del motore, il conteggio di ripetizione e lo SHA-256 dell'input
HPDFDifferentialRegressionInfoToJSON emette lo schema fisso hotpdf.differential.v1 con ordine stabile di campo e dominio per CI, triage del corpus e archiviazione di audit
Helper di compatibilità
HPDFCompareRegressionResults mantiene il comportamento originale a singola esecuzione con callback per i chiamanti che producono già firme stabilizzate esternamente