function AnalyzeSignatureRevisions: TPadesRevisionAnalysisReport;
Přečte přesné načtené zdrojové bajty, sleduje klasické xref tabulky, xref proudy, hybridní odkazy a vazby /Prev a poté namapuje každý ByteRange podpisu na kompletní revizi, kterou pokrývá
Pozdější autoritativní objekty jsou klasifikovány jako podpisy, validační materiál, pole formuláře, anotace, obsah stránky, struktura dokumentu, metadata, aktivní obsah, smazané objekty, komprimované objekty nebo neznámé změny, ještě než je vyhodnocena příslušná zásada DocMDP a FieldMDP
Definice objektů přítomné v bajtech revize, ale chybějící v autoritativním xref, jsou vráceny jako podezřelé stínové změny, místo aby byly tiše ignorovány
TPadesRevisionAnalysisReport vrací stav zdroje, souhrnný stav a rizika, počty revizí a podpisů, chybovou zprávu a jeden záznam TPadesSignatureRevisionAnalysis na podpis
Každý záznam podpisu obsahuje pokrytou délku a revizi, oprávnění DocMDP, akci FieldMDP a názvy polí, počet pozdějších revizí, rizika, stav a změny na úrovni objektů
Active nastavený na TrueSourceStatus je pvssOriginalBytes pro zachovaný soubor, paměťový buffer, vlastní proud nebo dokončený progresivní zdrojpvssIncomplete a prasIndeterminateprasIndeterminate namísto povoleného výsledku
var
Report: TPadesRevisionAnalysisReport;
begin
Report := Pdf1.AnalyzeSignatureRevisions;
if Report.Status in [prasDisallowed, prasSuspicious] then
ShowMessage('Podepsaný dokument obsahuje nebezpečné pozdější revize');
end;