THotPDF.RepairPDFUA2Structure Method

Popravlja povratljive nedostatke PDF/UA-2 prostora naziva, atributa, strukture i pristupačnosti unutar copy-on-write grafske transakcije te validira kandidatski graf prije potvrde

Deklaracija

function RepairPDFUA2Structure(
  const Options: THPDFUA2RepairOptions;
  out Report: THPDFUA2RepairReport;
  out Issues: THPDFUA2ValidationIssues): boolean; overload;

function RepairPDFUA2Structure(
  const Options: THPDFUA2RepairOptions;
  out Report: THPDFUA2RepairReport;
  out Issues: THPDFUA2ValidationIssues;
  out Findings: THPDFComplianceFindings): boolean; overload;

Jedinica

HPDFDoc

Mogućnosti popravka

Krenite od THPDFUA2RepairOptions.Default i mijenjajte samo odluke politike koje zahtijeva ulazni tijek rada

PoljeSvrha
NormalizeDuplicateNamespacesObnavlja StructTreeRoot/Namespaces s jednim kanonskim neizravnim rječnikom po URI-ju i odbacuje sukobljene mape uloga
RegisterReferencedNamespacesRegistrira valjane rječnike prostora naziva koje referenciraju strukturni elementi, atributi ili mape uloga osviještene o prostorima naziva
RepairStandardStructureNamespacesStandardnim ulogama dodjeljuje PDF 2.0 prostor naziva kad prostor nedostaje ili je nevažeći te uvijek normalizira vrhunjski Document
RepairAttributeNamespacesKanonizira reference prostora naziva atributa i uklanja nevažeće stavke prostora naziva iz standardnih vlasnika
RepairAttributeRevisionsNormalizira negativne ili frakcijske brojeve revizija i uklanja siročadne revizijske stavke iz polja atributa
RepairListSemanticsNormalizira numeriranje, zastavice nastavka, nevažeće tipove nastavka i jedan pogrešno smješten caption bez izmišljanja sadržaja popisa
RepairTableSemanticsNormalizira nevažeće raspone i opsege, uklanja nevažeće lokalne reference zaglavlja tablice i premješta jedan pogrešno smješten caption
RepairRubyWarichuSequencesRaspoređuje djecu samo kad je točno traženi multiskup uloga već prisutan
RepairPronunciationHintsUklanja pogrešno tipizirane savjete, prorjeđuje nevažeće reference leksikona i normalizira ugrađene PLS MIME podtipove
RepairMissingAlternateTextObnavlja nedostajući Alt za Figure, Formula i Form iz postojećeg naslova, proširenog teksta, teksta izdvojenog iz istog MCID-a ili izričitog pričuvnog rješenja, tim redoslijedom
RepairLanguageInheritancePodiže valjani jezik strukturnog korijena ili izričiti zadani jezik u Catalog te uklanja nevažeće ili suvišne jezične stavke razine strukture kad je nasljeđivanje nedvosmisleno
RepairHeadingOrderPrenumerira samo nedostatke prvog naslova i preskočenih razina uz zadržavanje redoslijeda dokumenta
RepairArtifactTaggingPrepisuje place i marked-content oznake povezane sa strukturnim elementom Artifact za sadržaj proizvođača i učitane stranice
AllowDocumentFragmentHeadingStartsResetira kontekst naslova unutar svakog DocumentFragment-a za popravak i validaciju nakon popravka
RollbackOnValidationFailureVraća izvorni graf kad nakon popravka ostane bila koja PDF/UA-2 greška
CustomAttributeNamespaceURIDostavlja izričiti prostor naziva za prilagođene vlasnike atributa čiju semantiku nije moguće sigurno zaključiti, s praznom zadana vrijednošću koja ne uspijeva sigurno
DefaultLanguageDostavlja BCP-47 jezičnu oznaku samo kad ni Catalog ni strukturni korijen ne sadrže valjani jezik
FallbackAlternateTextDostavlja alternativni tekst koji je pregledao pozivatelj nakon što zakažu svi izvori iz dokumenta, s praznom zadana vrijednošću koja nikada ne izmišlja opis
MaxGeneratedAlternateTextCharactersOgraničava izdvajanje teksta iz istog MCID-a i standardno iznosi 4.096 UTF-16 kodnih jedinica
MaxObjectsOgraničava skeniranje grafa objekata i standardno iznosi 1.000.000 objekata
MaxRepairsOgraničava zadržane promjene i standardno iznosi 100.000 operacija popravka

Izvješće o popravku

THPDFUA2RepairReport izvješćuje je li se graf promijenio ili povukao, je li prekoračeno ograničenje, status validacije nakon popravka, pregledane objekte, preostale greške i brojače za svaku obitelj popravaka uključujući alternativni tekst, jezične stavke, razine naslova i Artifact oznake

UnresolvedAlternateTextCount, UnresolvedLanguageCount i UnresolvedArtifactCount razlikuju semantiku koja još zahtijeva autorov pregled od automatskih mutacija

Vraćeno polje THPDFUA2ValidationIssues sadrži dijagnostiku nakon popravka kad validacija ne uspije te stabilnu dijagnostiku specifičnu za popravak kad ograničenje resursa ili sukobljena duplicirana mapa uloga prekine transakciju

Detaljni overload također vraća nalaze prije popravka označene kao crsApplied, crsUnresolved, crsRolledBack ili crsFailed, uz zbrojene sažetke za svaku obitelj popravaka

Ovaj overload s izvorom izvodi dodatnu ograničenu validaciju prije popravka; koristite postojeći overload s tri izlaza kad su potrebni samo konačno izvješće i problemi

Atomskost i sigurnost

Primjer

var
  Options: THPDFUA2RepairOptions;
  Report: THPDFUA2RepairReport;
  Issues: THPDFUA2ValidationIssues;
begin
  Options := THPDFUA2RepairOptions.Default;
  Options.DefaultLanguage := 'en-US';
  Options.CustomAttributeNamespaceURI :=
    'https://example.com/ns/accessibility-attributes';
  if not PDF.RepairPDFUA2Structure(Options, Report, Issues) then
    raise Exception.CreateFmt('%s at %s',
      [String(Issues[0].Code), String(Issues[0].Path)]);
end;

Povezani API-ji