THotPDF.RepairPDFA4 Method

Vykdo riboto objekto grafiko transakciją, kuri taiko deterministinę PDF/A-4 normalizaciją, patvirtina rezultatą ir arba įtvirtina visą saugaus remonto rinkinį, arba atkuria pradinę dokumento būseną

Deklaracija

function RepairPDFA4(
  const Options: THPDFPDFA4RepairOptions;
  out Report: THPDFPDFA4RepairReport;
  out Issues: THPDFPDFA4ValidationIssues): boolean; overload;

function RepairPDFA4(
  const Options: THPDFPDFA4RepairOptions;
  out Report: THPDFPDFA4RepairReport;
  out Issues: THPDFPDFA4ValidationIssues;
  out Findings: THPDFComplianceFindings): boolean; overload;

Tvirtinimo sutartis

Saugaus remonto riba

Metodas gali normalizuoti PDF 2.0 antraštę, sukurti trūkstamą trailer ID, sukurti arba sutaisyti metaduomenų srautus ir žodynus, kanonizuoti PDF/A identifikavimą pagal vardų srities URI, išsaugodamas bet kokį teisėtą RDF priešdėlį, pašalinti draudžiamas Catalog įrašus ir pašalinti alternatyvaus pateikimo struktūras

UTF-8 XMP remontas pašalina draudžiamus paketo antraštės baito ir kodavimo atributus, naudoja kanoninę PDF/A identifikavimo vardų sritį, įrašo part=4 ir rev=2020 ir parenka teisingą pagrindinės, inžinerinės arba susijusio failo atitikties savybę

Remonto grandinė niekada neperrašo puslapio arba anotacijos turinio srautų, šriftų, spalvų erdvių, skaidrumo, vaizdų, grafikos operatorių arba ištraukto teksto

Atšaukimas ir audituojamumas

Grafiko momentinės kopijos apima žodyno pakeitimus ir metaduomenų srauto baitus, todėl atšaukimas atkuria pradinę antraštę, trailer būseną, objektų grafiką, XMP turinį ir puslapio turinį

Bendro radinio variantas prideda remonto veiksmus, pritaikytą, neišspręstą, nepavykusį arba atšauktą būseną, remonto skaičius, stabilius taisyklės identifikatorius, sąlygas, objektų kelius, objektų numerius ir puslapio vietas

Objektų, pakeitimų, išlikusių problemų, iškoduotų baitų ir turinio ženklų biudžetai neleidžia priešiškiems failams paversti remonto ir jo patikros vartų neribotu darbu

Pavyzdys

var
  Options: THPDFPDFA4RepairOptions;
  Report: THPDFPDFA4RepairReport;
  Issues: THPDFPDFA4ValidationIssues;
begin
  Options := THPDFPDFA4RepairOptions.Default;
  Options.Profile := p4pAutomatic;

  if not PDF.RepairPDFA4(Options, Report, Issues) then
    raise Exception.Create('PDF/A-4 repair rolled back');

  if not Report.ValidationSucceeded then
    LogRemainingPDFA4Issues(Issues);
end;

Susiję API