THPDFWindowsFormDataTransaction
HPDFWindowsFormData aporta un bridge de Windows desde el grafo THotPDF actual al engine nativo autenticado de FDF/XFDF
Declaraciones
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 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;
Propiedad y política
Document, OriginalSource y Checkpoint son prestados hasta la destrucción; OriginalSource debe corresponder exactamente a la revisión original cargada del documento; el constructor copia y sella una fuente original privada, autentica sus credenciales AES y prepara el grafo pendiente real en otra fuente privada
El engine nativo comprueba la integridad de firmas existentes y el binding de certificados ESS, los permisos DocMDP, los locks FieldMDP y los flags de solo lectura de campos; las actualizaciones P2/P3 permitidas regeneran apariencias genuinas conservando los bytes firmados originales
Las comprobaciones obligatorias de confianza, timestamp y revocación firmada pueden configurarse con SetSignaturePolicyOptions; una comprobación ordinaria de integridad no implica confianza en una raíz de negocio sin especificar
ImportData prepara un PDF candidato y un THotPDF cargado por separado; no muta el documento prestado; una importación semánticamente sin cambios igualmente autentica la política firmada antes de copiar la revisión actual exacta
WritePreparedPDF copia bytes del candidato acotados al stream suministrado; publica con éxito todos los callbacks obligatorios de PDF y de resultado antes de TakeCandidate; un fallo o una cancelación significa descartar la transacción
TakeCandidate transfiere la propiedad tanto del THotPDF como de su THPDFWindowsFormDataSource; destruye el documento antes de destruir su fuente; el candidato no retiene el token de cancelación de la transacción
THPDFWindowsFormDataSource posee un fichero temporal creado en exclusiva; Seal lo volca y lo reabre para acceso de solo lectura; la destrucción lo cierra y lo elimina; los callbacks de la fuente no sobreviven a la fuente propietaria
ExportAnnotations e ImportAnnotations implementan el intercambio mapeado de anotaciones XFDF; ChangedAnnotations informa el recuento de añadidos usando el contador compartido de cambios preparados
Límites
FillTypedData prepara campos escalares mixtos y runs rich tipados originales en el mismo candidato sin un round-trip de decodificación RV; los accesores de campos preparados leen el candidato resultante real
ImportDataWithFamilies selecciona de una a dieciséis familias con nombre con programas de estilo reales y el mismo ciclo de vida autenticado de candidato; el método ImportData original conserva su comportamiento de familia única
THPDFWindowsFormDataLimits.Default fija MaxWorkingBytes en 256 MiB, MaxOutputBytes en 128 MiB, MaxObjects en 100000 y MaxPages en 10000; la capacidad de trabajo debe ser de al menos 1 MiB y todas las demás capacidades deben ser positivas
CancellationToken es prestado y solo es válido hasta la destrucción de la transacción; consulta el token de operación del documento original y Checkpoint durante el parsing nativo, la decodificación de XML rich, la validación de política y la copia
Esta clase de Windows está disponible para Delphi moderno, C++Builder y FPC en Windows; el Linux nativo usa THPDFHeadlessDocument directamente
Temas relacionados
Windows FDF/XFDF exchange, Current graph preparation, Native form data
Grafos de anotaciones FDF
ExportAnnotationsFDF devuelve el recuento de anotaciones y escribe FDF binario acotado en Bytes; ImportAnnotationsFDF prepara un candidato usando THPDFFDFOptions
El perfil FDF retiene los recursos de appearance suministrados y los objetos indirectos compartidos; los valores NM coincidentes en la misma página seleccionan anotaciones existentes para reemplazar
Los métodos FDF usan la misma propiedad de documento prestado, política autenticada y ciclo de vida de candidato preparado; ChangedAnnotations cuenta reemplazos y adiciones reales, y una importación equivalente retiene la revisión actual exacta
Eliminación de anotaciones
RemoveAnnotations prepara eliminaciones exactas de página-y-NM, incluidos popups y respuestas dependientes, a través del mismo ciclo de vida de candidato; ChangedAnnotations reporta todas las eliminaciones una vez
Publique los datos de PDF y resultado antes de TakeCandidate; el fallo deja el documento y la fuente prestados sin cambios