Semantisk jämförelse av innehållsströmmar

HPDFContentStream kan normalisera avkodat PDF-innehåll till begränsade kanoniska händelser och jämföra dessa händelser utan att behandla ofarliga serialiseringsval som ändringar

Deklarationer

function HPDFNormalizeContentStreamGraphicsState(
  const Bytes: TBytes; out Canonical: TBytes;
  out Statistics: THPDFContentSemanticStatistics;
  NumberTolerance: Double = 1E-9;
  MaxOperations: Integer = 1000000;
  MaxCanonicalBytes: Int64 = 67108864
): boolean;

function HPDFCompareContentStreamsSemantic(
  const Left, Right: TBytes;
  out Info: THPDFContentSemanticCompareInfo;
  NumberTolerance: Double = 1E-9;
  MaxOperations: Integer = 1000000;
  MaxCanonicalBytes: Int64 = 67108864
): boolean;

Normalisering

Diagnostik och gränser

THPDFContentSemanticStatistics rapporterar token-, operation-, tillståndsoperation-, redundant-tillstånd-, normaliserad-händelse-, maximal-stackdjup-, kanonisk-byte-, fel-offset-, giltighets- och gränsinformation. Jämförelse rapporterar även den första avvikande normaliserade händelsen

Felformaterade nästlade ordlisteoperander, ogiltig tillståndsoperator-aritytal, omatchade eller oavslutade grafikstillståndsomfång, efterföljande operander, operationsöverflöde och kanoniskt-byte-överflöde misslyckas stängt och rapporterar aldrig ekvivalens

Skicka avkodat innehållsbyte. Strömfilter-avkodning och resursnamns-avstämning över olika resursordlistor förblir anroparens ansvar