function CompareWith(Other: TPdf; const Options: TPdfDocumentDiffOptions; out Report: TPdfDocumentDiffReport): Boolean;
| Other | TPdf. L'altro documento attivo |
| Options | TPdfDocumentDiffOptions. Campi RenderWidth, RenderHeight, ColorTolerance, CompareText, ComparePageGeometry e MaxPages, con una funzione di classe Default |
| Report | TPdfDocumentDiffReport. Campi Equivalent, Truncated, LeftPageCount, RightPageCount, ComparedPageCount, DifferentPageCount, PixelDifferenceCount e Differences; ogni TPdfPageDifference contiene PageIndex, TextDifferent, GeometryDifferent, PixelDifferenceCount e PixelBounds |
| Result | Boolean. True quando i documenti sono equivalenti secondo le opzioni selezionate |
Il confronto usa l'estrazione del testo e il rendering di PDFium invece di interpretare i content stream in parallelo
La geometria comprende le dimensioni di pagina e la rotazione; il confronto visivo applica la tolleranza colore del chiamante per canale e riporta i limiti dei pixel modificati
MaxPages limita il lavoro per documenti non attendibili o molto grandi, mentre Truncated segnala quando il confronto si è interrotto a quel limite
La pagina corrente di entrambi i documenti viene ripristinata prima che il metodo restituisca
Le opzioni Default storiche confrontano pagine nella stessa posizione; impostare AlignPages a True per identificare inserimenti, eliminazioni e spostamenti esatti
L'allineamento usa testo estratto, geometria di pagina e un'impronta di rendering 64-by-64; l'abbinamento dei duplicati è deterministico e pagine modificate e spostate insieme possono essere segnalate come modifiche
PagePairs e ogni differenza espongono LeftPageIndex e RightPageIndex a base zero, con -1 per una pagina mancante; Kind è dpkMatched, dpkModified, dpkMoved, dpkInserted o dpkDeleted
TextDiffMode seleziona dtmNone, dtmCharacters o dtmWords; TextChanges segnala LeftStart, LeftLength, RightStart e RightLength UTF-16 senza dividere coppie surrogate
CollectPixelRegions aggiunge PixelRegions di tile connessi, con Right e Bottom esclusi, mantenendo l'unione storica PixelBounds
MaxAlignmentCells, MaxTextCharacters, MaxTextDiffCells, MaxTextTokens, PixelRegionTileSize, MaxPixelRegions e MaxDetailItems limitano il lavoro di dettaglio; DetailTruncated segnala dettaglio incompleto indipendentemente da Truncated del limite pagine
Il report include InsertedPageCount, DeletedPageCount e MovedPageCount; ogni differenza ha anche il proprio DetailTruncated
RenderDiffOverlay esporta un overlay visivo di proprietà del chiamante; FPdfDiff espone gli algoritmi helper con limiti di risorse