콘텐츠 스트림 의미 비교

HPDFContentStream은 디코딩된 PDF 콘텐츠를 제한된 정규 이벤트로 정규화하고 무해한 직렬화 선택을 변경으로 취급하지 않고 해당 이벤트를 비교할 수 있습니다

선언

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;

정규화

진단 및 경계

THPDFContentSemanticStatistics는 토큰, 연산, 상태 연산, 중복 상태, 정규 이벤트, 최대 스택 깊이, 정규 바이트, 오류 오프셋, 유효성, 한계 정보를 보고합니다. 비교는 첫 번째 다른 정규 이벤트도 보고합니다

잘못된 중첩 사전 피연산자, 유효하지 않은 상태 연산자 arity, 짝이 맞지 않거나 닫히지 않은 그래픽 상태 범위, 후행 피연산자, 연산 오버플로, 정규 바이트 오버플로는 fail-closed 처리되며 절대 동등성을 보고하지 않습니다

디코딩된 콘텐츠 바이트를 전달하십시오. 스트림 필터 디코딩과 서로 다른 리소스 사전에 걸친 리소스 이름 조정은 호출자의 책임으로 남습니다