Record THPDFHeadlessAnnotationRemovalOptions

THPDFHeadlessAnnotationRemovalOptions = record
  MaxAnnotations, MaxOperations, MaxNameBytes: Integer;
  MaxWorkingBytes: Int64;
  CancellationToken: THPDFCancellationToken;
  class function Default: THPDFHeadlessAnnotationRemovalOptions; static;
end;

Dichiarato in HPDFHeadlessDocument; inizializzare il record con Default prima di modificare le singole capacità

MembroPredefinitoAmbito
MaxAnnotations65536Limita le identità richieste e il totale delle voci di annotazioni di pagina scansionate nel documento, incluse voci non correlate ai nomi richiesti
MaxOperations8000000Limita l'attraversamento effettivo, la risoluzione dei riferimenti, l'elaborazione delle identità, le ricerche nei dizionari, l'ordinamento, l'espansione delle dipendenze e il lavoro di preparazione
MaxNameBytes16777216Limita i nomi richiesti combinati e i nomi delle annotazioni decodificati, addebitando due byte per unità di codice Unicode
MaxWorkingBytes134217728Limita l'archiviazione di preparazione della rimozione, le strutture staccate e l'ammissione della serializzazione
CancellationTokennilToken di cancellazione cooperativa preso in prestito, opzionale

Tutte le capacità numeriche devono essere positive; superare una capacità valida riporta hdLimitExceeded attraverso EHPDFHeadlessDocumentError

I limiti del documento continuano ad applicarsi, inclusi dimensione del file, dimensione dell'oggetto, archiviazione decodificata e profondità dei riferimenti; i limiti di rimozione non aumentano quelle capacità

Se sia il documento sia le opzioni forniscono un token di cancellazione, devono essere la stessa istanza; senza token nelle opzioni resta efficace il token esistente del documento

La transazione Windows fornisce il suo token condiviso e limita la memoria di lavoro della rimozione alla metà della capacità di lavoro della transazione e il conteggio delle annotazioni alla sua capacità di oggetti

Il annotationLimits JSON può abbassare le capacità effettive; i valori oltre la capacità dell'operazione circostante vengono rifiutati invece di alzare silenziosamente il budget

Fallimento e cancellazione lasciano il grafo nativo caricato e la destinazione invariati; per i sink di output che possono aver già ricevuto byte vedere la pubblicazione callback