THPDFJobProcessor.ExecuteLoadedOperationWithComparison

Ejecuta una operación con un segundo documento prestado opcional para comparación genérica o de contratos

class function ExecuteLoadedOperationWithComparison(Document,
  ComparisonDocument: THotPDF; Op: THPDFJSONValue; Output: TStream = nil;
  Checkpoint: TNotifyEvent = nil): THPDFJSONValue;

La unidad es HPDFDocJobs; el llamador es propietario de ambos documentos, la operación, la salida y el valor JSON devuelto

compare y compare.contract exigen dos documentos cargados; los demás kinds de operación conservan el comportamiento de ExecuteLoadedOperation

La comparación restaura los límites de decodificación, los umbrales de streams y los ajustes de AutoLaunch de ambos documentos; los artefactos de anotaciones además hacen rollback de su transacción de grafo

La salida binaria se buffera en privado y se comprueba contra el presupuesto antes de copiarla al stream del llamador; un fallo del stream puede dejar bytes aceptados en esa salida pero no confirma las anotaciones de la fuente

El checkpoint se ejecuta durante todo el trabajo de comparación y preserva las excepciones de cancelación y de presupuesto

Contrato y ejemplos de comparación JSON