THPDFWindowsFormDataTransaction
HPDFWindowsFormData, mevcut THotPDF grafiğinden native authenticated FDF/XFDF engine'ine bir Windows köprüsü sağlar
Bildirimler
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);
function ExportAnnotationsFDF(const Options: THPDFFDFOptions;
out Bytes: SysUtils.TBytes): Integer;
procedure ImportAnnotationsFDF(const Bytes: SysUtils.TBytes;
const Options: THPDFFDFOptions; const Password: AnsiString);
procedure RemoveAnnotations(
const Identities: array of THPDFHeadlessAnnotationIdentity;
const Options: THPDFHeadlessAnnotationRemovalOptions;
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;
Ownership ve politika
Document, OriginalSource ve Checkpoint, yok edilmeye kadar ödünç alınır; OriginalSource, belgenin yüklenmiş orijinal revizyonuna tam olarak karşılık gelmelidir; constructor, private bir orijinal kaynak kopyalar ve mühürler, AES credential'larını doğrular ve gerçek bekleyen grafiği başka bir private kaynakta hazırlar
Native engine, mevcut signature integrity'sini ve ESS certificate binding'ini, DocMDP izinlerini, FieldMDP kilitlerini ve field read-only flag'lerini denetler; izin verilen P2/P3 güncellemeleri, orijinal imzalı baytları korurken gerçek görünümleri yeniden üretir
Zorunlu trust, timestamp ve imzalı revocation denetimleri SetSignaturePolicyOptions ile yapılandırılabilir; sıradan bir integrity check, belirtilmemiş bir işletme root'una trust ima etmez
ImportData, bir aday PDF ve ayrı olarak yüklenmiş bir THotPDF hazırlar; ödünç alınan belgeyi mutasyona uğratmaz; semantik olarak değişmemiş bir import bile, kesin mevcut revizyonu kopyalamadan önce imzalı politikayı doğrular
WritePreparedPDF, sınırlı aday baytlarını sağlanan stream'e kopyalar; TakeCandidate'ten önce her zorunlu PDF ve result callback'ini başarılı şekilde yayımlayın; başarısızlık veya cancellation, transaction'ı atmak anlamına gelir
TakeCandidate, hem THotPDF'in hem de onun THPDFWindowsFormDataSource'unun ownership'ini devreder; kaynağını yok etmeden önce belgeyi yok edin; aday, transaction'ın cancellation token'ını tutmaz
THPDFWindowsFormDataSource, münhasıran oluşturulmuş geçici bir dosyaya sahiptir; Seal onu flush eder ve read-only erişim için yeniden açar; yok etme dosyayı kapatır ve kaldırır; kaynak callback'leri, sahip kaynaktan uzun yaşamaz
ExportAnnotations ve ImportAnnotations, eşlenmiş anotasyon XFDF exchange'ini uygular; ChangedAnnotations, ChangedFields ile aynı prepared-change sayacını kullanarak eşlenmiş XFDF import'ları için append sayısını raporlar
Limitler
FillTypedData, karışık scalar field'ları ve orijinal yazılan rich run'ları aynı adayda, RV decoding round-trip'i olmadan hazırlar; prepared-field accessor'ları gerçek sonuç adayını okur
ImportDataWithFamilies, gerçek style programları ve aynı authenticated aday lifecycle'ıyla bir ile on altı arasında adlandırılmış family seçer; orijinal ImportData method'u tek-family davranışını korur
THPDFWindowsFormDataLimits.Default, MaxWorkingBytes'ı 256 MiB'ye, MaxOutputBytes'ı 128 MiB'ye, MaxObjects'ı 100000'e ve MaxPages'ı 10000'e ayarlar; working kapasitesi en az 1 MiB olmalıdır ve diğer tüm kapasiteler pozitif olmalıdır
CancellationToken ödünç alınır ve yalnızca transaction yok edilene kadar geçerlidir; native parsing, rich XML decoding, politika doğrulaması ve kopyalama sırasında orijinal belgenin operation token'ını ve Checkpoint'ini poll eder
Bu Windows class'ı modern Delphi, C++Builder ve Windows FPC için kullanılabilir; native Linux THPDFHeadlessDocument'ı doğrudan kullanır
İlgili konular
Windows FDF/XFDF exchange, Mevcut graf hazırlığı, Native form data
FDF anotasyon graf'leri
ExportAnnotationsFDF anotasyon sayısını döndürür ve sınırlı ikili FDF'i Bytes'a yazar; ImportAnnotationsFDF, THPDFFDFOptions kullanarak bir aday hazırlar
FDF profili, verilen appearance kaynaklarını ve paylaşılan indirect nesneleri korur; aynı sayfadaki eşleşen NM değerleri, değiştirilmek üzere mevcut anotasyonları seçer
FDF metotları aynı ödünç-belge ownership'ini, kimlik doğrulamalı politikayı ve hazırlanmış aday lifecycle'ını kullanır; ChangedAnnotations gerçek değiştirmeleri ve eklemeleri sayar ve eşdeğer bir import, kesin mevcut revizyonu korur
Anotasyon kaldırma
RemoveAnnotations, aynı aday lifecycle'ı üzerinden bağımlı popup ve yanıtlar dâhil kesin sayfa-ve-NM kaldırmaları hazırlar; ChangedAnnotations tüm kaldırmaları bir kez raporlar
TakeCandidate'ten önce PDF ve sonuç verisini yayınlayın; başarısızlık, ödünç alınan belgeyi ve kaynağı değişmeden bırakır