ComparePreflightReports

انطباق، بازرسی سند

توضیحات

دو گزارش preflight متنی ساده را مقایسه و وقتی محتوای پایدارشان متفاوت است یک diff فشردهٔ خط‌به‌خط برمی‌گرداند. از این API برای تشخیص رانش گزارش در تست‌های رگرسیون، کارهای CI یا بررسی‌های تحویلی که گزارش پایه را کنار فیکسچر PDF نگه می‌دارند استفاده کنید

نحو

Delphi

Function TPDFlib.ComparePreflightReports(Const ReportA, ReportB: WideString): WideString;

پارامترها

ReportAگزارش متنی سادهٔ پایه، معمولاً تولیدشده توسط CreatePreflightReport یا خوانده‌شده از فایلی که SavePreflightReport ساخته است
ReportBگزارش plain-text فعلی برای مقایسه با baseline

مقدار بازگشتی

وقتی گزارش‌ها پس از نرمال‌سازی خطوط مهر زمانی ناپایدار یعنی Generated: منطبق شوند رشتهٔ خالی برمی‌گرداند. وقتی محتوای پایدار متفاوت باشد نتیجه با PDF Library for Delphi Preflight Report Diff آغاز می‌شود؛ خطوط مشترک پیشوند دو-فاصله‌ای، خطوط فقط در ReportA پیشوند - و خطوط فقط در ReportB پیشوند + می‌گیرند

ملاحظات

مقایسه برای خروجی متنی قطعی تولیدشده توسط CreatePreflightReport طراحی شده است. گزارش‌های JSON، HTML یا CSV را تجزیه نمی‌کند؛ وقتی گردش‌کاری به دروازه‌های بازگشت پایدار نیاز دارد فرم متنی ساده را مقایسه کنید و بعد هر گزارش قالب‌بندی‌شده‌ای که برای انسان یا ابزارهای پایین‌دستی لازم است تولید کنید. برای گردش‌کار کامل خط فرمانی و دسته‌ای به Preflight Reports نگاه کنید

مثال

Baseline := TFile.ReadAllText('expected-preflight.txt', TEncoding.UTF8);
Current := PDF.CreatePreflightReport('output.pdf', '', 1 or 2, 0);
Diff := PDF.ComparePreflightReports(Baseline, Current);
if Diff <> '' then
  TFile.WriteAllText('preflight.diff.txt', Diff, TEncoding.UTF8);

همچنین ببینید

Preflight Reports, CreatePreflightReport, CreatePreflightReportEx, SavePreflightReport, SavePreflightReportEx, CheckFileCompliance