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