THotPDF.AddLoadedSignedSignatureField Method

Voegt een handtekeningveld dat klaar is om te ondertekenen toe aan een geladen document. Het veld bevat een handtekeningwoordenboek met gereserveerde ruimte voor /ByteRange en /Contents, zodat SignPDFWithPFX, PreparePDFForSigning en InsertSignatureHex het kunnen ondertekenen zodra het document is opgeslagen. Samen met BeginIncrementalUpdate is dit de manier waarop een reeds ondertekende PDF een tweede handtekening krijgt

Declaratie

function AddLoadedSignedSignatureField(PageIndex: Integer; X1, Y1, X2, Y2: Single;
  const AFieldName: AnsiString; ContentsBytes: Integer = 8192;
  const SubFilter: AnsiString = 'adbe.pkcs7.detached';
  const Reason: AnsiString = ''; const Location: AnsiString = '';
  const ContactName: AnsiString = ''): Integer;

Eenheid

HPDFDoc

Parameters

NaamDoel
PageIndexNulgebasererde index van de geladen pagina die de handtekening-widget toont
X1, Y1, X2, Y2Widgetrechthoek in PDF-gebruikersruimte (punten, oorsprong linksonder); breedte en hoogte moeten positief zijn
AFieldNameNaam van het nieuwe handtekeningveld; deze mag niet leeg zijn en mag nog niet in het document bestaan
ContentsBytesBytes gereserveerd voor de CMS-handtekening (geschreven als twee keer zoveel hexadecimale cijfers); het moet de volledige handtekening kunnen bevatten, inclusief certificaten en eventueel een timestamp-token
SubFilterHandtekeningformaat, bijvoorbeeld adbe.pkcs7.detached of ETSI.CAdES.detached
Reason, Location, ContactNameOptionele /Reason-, /Location- en /ContactInfo-items van het handtekeningwoordenboek

Retourwaarde

Retourneert de index van het nieuwe formulierveld, of -1 wanneer PageIndex buiten het bereik ligt

Gebruiksopmerkingen

Voorbeeld

PDF := THotPDF.Create(nil);
try
  PDF.BeginIncrementalUpdate('Signed.pdf');
  PDF.AddLoadedSignedSignatureField(0, 300, 120, 500, 160, 'Approver', 8192,
    'adbe.pkcs7.detached', 'Approved');
  PDF.SaveIncrementalUpdate('Prepared.pdf');
finally
  PDF.Free;
end;
// Signs the reserved field; the first signature stays valid
THotPDF.SignPDFWithPFX('Prepared.pdf', 'SignedTwice.pdf', 'Signer.pfx', 'password');

Gerelateerde API's