THotPDF.RepairPDFA4 Method
Kör en avgränsad objektgrafstransaktion som tillämpar deterministisk PDF/A-4-normalisering, validerar resultatet och antingen genomför hela den säkra reparationsuppsättningen eller återställer det ursprungliga dokumenttillståndet
Deklaration
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;
Genomförandekontrakt
Trueinnebär att transaktionen accepterades, inklusive fallet utan ändringar för ett redan kompatibelt dokumentFalseinnebär att transaktionen rullades tillbaka efter ett gränsfel, valideringsregression, undantag eller en ouppfylldRequireFullConformance-policyReport.ValidationSucceededär det auktoritativa fullständiga konformitetsresultatet efter en genomförd reparation- Med standardalternativ kan säkra reparationer genomföras medan orelaterade osäkra valideringsfynd förblir explicita i
IssuesochFindings
Säker reparationsgräns
Metoden kan normalisera PDF 2.0-huvudet, skapa ett saknat trailer-ID, skapa eller reparera metadataströmmar och -ordlistor, kanonisera PDF/A-identifiering efter namnområdes-URI samtidigt som alla lagliga RDF-prefix bevaras, ta bort förbjudna Catalog-poster och ta bort alternativa presentationsstrukturer
UTF-8-XMP-reparation tar bort förbjudna pakethuvudbyte- och kodningsattribut, använder det kanoniska PDF/A-identifieringsnamnområdet, skriver part=4 och rev=2020 och väljer rätt bas-, teknik- eller associerad-fil-konformitetsegenskap
Reparationspipelinen skriver aldrig om sid- eller annoteringsinnehållsströmmar, teckensnitt, färgrymder, transparens, bilder, grafikoperatorer eller extraherad text
Återställning och granskningsbarhet
Grafögonblicksbilder täcker ordlistemutationer och metadataströmbytes, så återställning återställer det ursprungliga huvudet, trailertillståndet, objektgrafen, XMP-nyttolasten och sidinnehållet
Den delade fyndöverlagringen bifogar reparationsåtgärder, tillämpad, oupplöst, misslyckad eller återställd status, reparationsantal, stabila regelidentifierare, klausuler, objektsökvägar, objektnummer och sidplatser
Objekt-, mutations-, kvarhållen-issue-, avkodad-byte- och innehållstokenbudgetar förhindrar att fientliga filer förvandlar reparation eller dess valideringsgrindar till obegränsat arbete
Exempel
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;