THotPDF.BeginIncrementalUpdate

THotPDF

 

Arriba  Métodos  Siguiente

Carga un PDF existente y cambia el documento al modo de actualización incremental de solo anexado

 

Sintaxis Delphi:

procedure BeginIncrementalUpdate(const SourceFile: TFileName);

 

Sintaxis C++:

void __fastcall BeginIncrementalUpdate(System::Sysutils::TFileName SourceFile);

 

Descripción

Llamen a BeginIncrementalUpdate cuando sea necesario extender un PDF existente sin reescribir sus bytes originales. HotPDF analiza el archivo fuente por la ruta normal de carga y conserva una copia byte por byte del archivo original para el paso de guardado posterior

 

Los nuevos objetos indirectos creados después de esta llamada se marcan como modificados automáticamente. Los objetos cargados existentes solo se vuelven a emitir cuando el llamador los marca con MarkDirty

 

Este flujo de trabajo es útil para agregar un campo de firma posterior, anexar metadatos o extender un documento ya firmado mientras se conservan los rangos de bytes cubiertos por firmas digitales anteriores

 

For a Standard-encrypted source, pass either its user or owner password to the two-argument overload. For a public-key encrypted source, assign PubSecKeyMaterial and call the one-argument overload. HotPDF retains the authenticated file key or FEK only for the update lifetime, preserves the original string, stream, metadata, and Identity crypt-filter policies, and derives legacy per-object keys from both the object number and its retained generation

El diccionario de cifrado se hereda de la revisión de origen y no puede introducirse, reemplazarse ni reconfigurarse mientras el modo incremental está activo. Las reescrituras no soportadas de crypt filters explícitos heterogéneos fallan antes de la salida en lugar de emitir ciphertext bajo una política distinta

 

Este flujo es útil para añadir un campo de firma posterior, agregar metadatos o extender un documento ya firmado conservando los rangos de bytes cubiertos por las firmas digitales anteriores. Se usa el trailer activo incluso cuando el origen ya contiene varias revisiones

 

Agregar una segunda firma

Después de cargar el documento no hay ninguna página actual, así que el campo firmable se agrega con AddLoadedSignedSignatureField, que recibe el índice de página. Ese campo reserva el espacio de firma que rellenan SignPDFWithPFX, o PreparePDFForSigning e InsertSignatureHex para un firmante externo, una vez guardada la actualización. La nueva firma cubre el archivo completo y las firmas anteriores siguen válidas porque sus bytes no se tocan

PDF := THotPDF.Create(nil);
try
  PDF.BeginIncrementalUpdate('Signed.pdf');
  PDF.AddLoadedSignedSignatureField(0, 300, 120, 500, 160, 'Approver', 8192);
  PDF.SaveIncrementalUpdate('Prepared.pdf');
finally
  PDF.Free;
end;
THotPDF.SignPDFWithPFX('Prepared.pdf', 'SignedTwice.pdf', 'Signer.pfx', 'password');

 

Ver también: MarkDirty, SaveIncrementalUpdate, AddLoadedSignedSignatureField, GetIncrementalUpdateSourceInfo, Soporte AcroForm, Soporte de filtros PDF