THPDFWindowsFormDataTransaction

HPDFWindowsFormData leverer en Windows-bro fra den aktuelle THotPDF-graf til den native autentificerede FDF/XFDF-motor

Deklarationer

constructor Create(Document: THotPDF; OriginalSource: TStream;
  const Password: AnsiString; const Limits: THPDFWindowsFormDataLimits;
  Checkpoint: TNotifyEvent = nil);
procedure SetSignaturePolicyOptions(const Options: THPDFHeadlessCMSOptions);
function ExportData(Format: THPDFHeadlessFormDataFormat;
  const Options: THPDFHeadlessFormDataOptions): TBytes;
procedure ImportData(const Bytes: TBytes; Format: THPDFHeadlessFormDataFormat;
  const Fonts: THPDFHeadlessRichTextFonts;
  const AppearanceOptions: THPDFHeadlessTextAppearanceOptions;
  const Options: THPDFHeadlessFormDataOptions; const Password: AnsiString);
procedure ImportDataWithFamilies(const Bytes: TBytes;
  Format: THPDFHeadlessFormDataFormat; const Families: THPDFHeadlessRichTextFontFamilies;
  const AppearanceOptions: THPDFHeadlessTextAppearanceOptions;
  const Options: THPDFHeadlessFormDataOptions; const Password: AnsiString);
procedure FillTypedData(const Updates: THPDFHeadlessRichTextFieldUpdates;
  const Options: THPDFHeadlessFormDataOptions; const Password: AnsiString);
function ExportAnnotations(const Options: THPDFHeadlessXFDFOptions;
  out Bytes: SysUtils.TBytes): THPDFHeadlessXFDFExportResult;
procedure ImportAnnotations(const Bytes: SysUtils.TBytes;
  const Options: THPDFHeadlessXFDFOptions; const Password: AnsiString);
property ChangedAnnotations: Integer;
function PreparedFieldCount: Integer;
procedure GetPreparedField(Index: Integer; out Name, Value: UnicodeString;
  out FieldType: Integer);
procedure WritePreparedPDF(Destination: TStream);
procedure TakeCandidate(out Document: THotPDF;
  out Source: THPDFWindowsFormDataSource);
property ChangedFields: Integer;
property CancellationToken: THPDFCancellationToken;

Ejerskab og politik

Document, OriginalSource og Checkpoint lånes indtil destruktion; OriginalSource skal svare nøjagtigt til dokumentets indlæste originale revision; konstruktøren kopierer og forsegler en privat original kilde, autentificerer dennes AES-legitimation og forbereder den faktiske ventende graf i en anden privat kilde

Den native motor tjekker eksisterende signaturintegritet og ESS-certifikatbinding, DocMDP-tilladelser, FieldMDP-låse og felt read-only-flag; tilladte P2/P3-opdateringer regenererer rigtige appearances, mens originale signerede bytes beholdes

Krævet trust, timestamp og signeret revocation-tjek kan konfigureres med SetSignaturePolicyOptions; et almindeligt integritetstjek indebærer ikke trust til en uspecificeret forretningsrod

ImportData forbereder én kandidat-PDF og én separat indlæst THotPDF; den muterer ikke det lånte dokument; en semantisk uændret import autentificerer stadig signeret politik, før den eksakte aktuelle revision kopieres

WritePreparedPDF kopierer afgrænsede kandidat-bytes til den leverede stream; publicér alle krævede PDF- og resultat-callbacks succesfuldt inden TakeCandidate; fejl eller cancellation betyder at kassere transaktionen

TakeCandidate overfører ejerskab af både THotPDF og dets THPDFWindowsFormDataSource; destruer dokumentet før dets kilde destrueres; kandidaten beholder ikke transaktionens cancellation-token

THPDFWindowsFormDataSource ejer en eksklusivt oprettet midlertidig fil; Seal flusher den og genåbner den til skrivebeskyttet adgang; destruktion lukker og fjerner filen; kilde-callbacks overlever ikke den eede kilde

ExportAnnotations og ImportAnnotations implementerer mapped annotation XFDF-udveksling; ChangedAnnotations rapporterer tilføjelsesantallet med samme forberedt-ændrings-tæller som ChangedFields

Grænser

FillTypedData forbereder blandede scalar-felter og originale typede rich runs i samme kandidat uden RV-dekodningsrundtur; forberedt-felt-accessors læser den faktiske resulterende kandidat

ImportDataWithFamilies vælger én til sekteen navngivne familier med rigtige style-programmer og samme autentificerede kandidat-livscyklus; den originale ImportData-metode beholder sin enkelt-familie-adfærd

THPDFWindowsFormDataLimits.Default sætter MaxWorkingBytes til 256 MiB, MaxOutputBytes til 128 MiB, MaxObjects til 100000 og MaxPages til 10000; arbejdskapacitet skal være mindst 1 MiB, og alle andre kapaciteter skal være positive

CancellationToken lånes og er kun gyldig indtil transaktionsdestruktion; den poller det originale dokuments operationstoken og Checkpoint under native parsing, rich XML-dekodning, politikvalidering og kopiering

Denne Windows-klasse er tilgængelig for moderne Delphi, C++Builder og Windows FPC; native Linux bruger THPDFHeadlessDocument direkte

Relaterede emner

Windows FDF/XFDF-udveksling, Aktuel graf-forberedelse, Native form data

FDF-annotationsgrafer

ExportAnnotationsFDF returnerer annotationsantallet og skriver afgrænset binær FDF til Bytes; ImportAnnotationsFDF forbereder en kandidat med THPDFFDFOptions

FDF-profilen bevarer leverede appearance-ressourcer og delte indirekte objekter; matchende NM-værdier på samme side vælger eksisterende annotationer til erstatning

FDF-metoderne bruger samme lånte dokumentejerskab, autentificeret politik og forberedt kandidat-levetid; ChangedAnnotations tæller faktiske erstatninger og tilføjelser, og en ækvivalent import bevarer den eksakte aktuelle revision

Annotationsfjernelse

RemoveAnnotations forbereder eksakte side- og NM-baserede fjernelser, inklusive afhængige popups og replies, gennem samme kandidat-levetid; ChangedAnnotations rapporterer alle fjernelser én gang

Publicér PDF- og resultatdata, før TakeCandidate; fejl lader det lånte dokument og kilden forblive uændret