property SignatureCount: Integer; // read only
SignatureCount renvoie le nombre de dictionnaires de signature actuellement présents dans le document. PDFium énumère les champs de signature AcroForm (section 12.8 de la spécification PDF 1.7) — chaque entrée correspond à un champ /Sig dont la valeur /V est un dictionnaire de signature (/Type /Sig) contenant la chaîne hexadécimale /Contents et la couverture /ByteRange
La valeur est 0 lorsque Active est False, lorsque le PDF ne contient que des espaces réservés de signature vides qui n’ont pas encore été remplis, ou lorsque le fichier n’a tout simplement pas été signé. Notez qu’il s’agit d’un comptage au niveau du document : les champs de signature peuvent être placés visuellement sur n’importe quelle page mais le comptage lui-même est global
Utilisez Signature[Index] pour récupérer un seul TPdfSignature contenant les octets bruts PKCS#7 Content, la chaîne Encoding (adbe.pkcs7.detached, ETSI.CAdES.detached, etc.), les chaînes Reason / Time fournies par le signataire et le niveau Permission. PDFium Delphi Component expose uniquement des données d’inspection ; la vérification de la signature nécessite une bibliothèque cryptographique tierce pour valider le blob PKCS#7 par rapport à la plage d’octets du document
n valide l’état au moment de la signature, pas nécessairement l’état courantSaveToFile tant qu’aucun nouveau champ n’est ajouté ; signer en externe et sauvegarder via FPDF_SaveAsCopy préserve les signatures existantes octet par octetFormFieldCount pour voir si le document a des champs interactifs non-signature supplémentaires
var I: Integer;
var Sig: TPdfSignature;
for I := 0 to Pdf1.SignatureCount - 1 do
begin
Sig := Pdf1.Signature[I];
Memo1.Lines.Add(Format('Signer reason: %s, time: %s',
[Sig.Reason, Sig.Time]));
end;