Pour télécharger l'exemple complet de code, consultez notre site Partage de code. Pour obtenir plus d'informations sur l'utilisation de l'extraction de position avec les champs conditionnels, voir Extraction de position + champs conditionnels.
La fonction Extraction de position garantit que la position et la taille exactes d'un champ ou d'une signature dans un fichier PDF téléversé sont automatiquement conservées dans OneSpan Sign.
L'exemple de code suivant vous montre comment modifier l'objet du bloc de document avec l'extraction de position.
Si vous avez besoin d'une comparaison avec la procédure de création d'objets de base, ou si c'est la première fois que vous créez une transaction, consultez la rubrique Création et envoi d'une transaction.
.withDocument(newDocumentWithName("First Document") .fromFile("DOC_FILE_PATH") .enableExtraction() .withSignature(signatureFor("[email protected]") .withName("sig1") .withPositionExtracted()) )
Assurez-vous que l'appel enableExtraction() soit défini au niveau du document et que votre document PDF contient un champ nommé sig1. Sinon, une erreur sera déclenchée.
Résultats
Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code.
Pour télécharger l'exemple complet de code, consultez notre site Partage de code.
La fonction Extraction de position garantit que la position et la taille exactes d'un champ ou d'une signature dans un fichier PDF téléversé sont automatiquement conservées dans OneSpan Sign.
L'exemple de code suivant vous montre comment modifier l'objet du bloc de document avec l'extraction de position.
Si vous avez besoin d'une comparaison avec la procédure de création d'objets de base, ou si c'est la première fois que vous créez une transaction, consultez la rubrique Création et envoi d'une transaction.
.WithDocument(DocumentBuilder.NewDocumentNamed("First Document") .FromFile("C:/Users/hhaidary/Desktop/pdf/working.pdf") .EnableExtraction() .WithSignature(SignatureBuilder.SignatureFor("[email protected]") .WithName("sig1") .WithPositionExtracted()) )
Assurez-vous que l'appel enableExtraction() soit défini au niveau du document et que votre document PDF contient un champ nommé sig1. Sinon, une erreur sera déclenchée.
Résultats
Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code.
Pour télécharger l'exemple complet de code, consultez notre site Partage de code.
La fonction Extraction de position garantit que la position et la taille exactes d'un champ ou d'une signature dans un fichier PDF téléversé sont automatiquement conservées dans OneSpan Sign.
L'exemple de code suivant vous montre comment modifier l'objet du bloc de document avec l'extraction de position.
Si vous avez besoin d'une comparaison avec la procédure de création d'objets de base, ou si c'est la première fois que vous créez une transaction, consultez la rubrique Création et envoi d'une transaction.
Requête HTTP
POST /api/packages
En-têtes HTTP
Accept: application/json Content-Type: multipart/form-data Authorization: Basic api_key
Données utiles de la demande
------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="file"; filename="testDocumentExtraction.pdf" Content-Type: application/pdf %PDF-1.5 %µµµµ 1 0 obj <>>> endobj.... ------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="payload" { "roles": [ { "id": "Signer1", "type": "SIGNER", "signers": [ { "firstName": "John", "lastName": "Smith", "email": "[email protected]" } ], "name": "Signer1" } ], "documents": [ { "approvals": [ { "fields": [ { "type": "INPUT", "extract": true, "subtype": "LABEL", "name": "name1", "binding": "{signer.name}" }, { "type": "INPUT", "extract": true, "subtype": "TEXTFIELD", "name": "age1" }, { "type": "INPUT", "extract": true, "subtype": "TEXTFIELD", "name": "address1" }, { "type": "INPUT", "extract": true, "subtype": "TEXTFIELD", "name": "zip1" }, { "type": "INPUT", "extract": true, "subtype": "TEXTFIELD", "name": "city1" }, { "type": "SIGNATURE", "extract": true, "subtype": "FULLNAME", "name": "sig1" } ], "role": "Signer1" } ], "extract": true, "name": "Sample Contract" } ], "name": "Field Position Extraction Example", "type": "PACKAGE", "language": "en", "autoComplete": true, "status": "DRAFT" } ------WebKitFormBoundary1bNO60n7FqP5WO4t--
Assurez-vous que “extract” : true est défini au niveau du document et que votre document PDF contient des champs nommés name1 age1, address1, zip1, city1 et sig1. Si vous ne le faites pas, une erreur sera générée.
Pour une description complète de chaque champ, voir le tableau des données utiles de la demande ci-dessous.
Données utiles de la réponse
{ "id": "9sKhW-h-qS9m6Ho3zRv3n2a-rkI=" }
Résultats
Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code.
Tableau des données utiles de la demande
Propriété | Type | Modifiable | Requis | Par défaut | Exemples de valeurs | ||
---|---|---|---|---|---|---|---|
statut | chaîne de caractères | Oui | Non | ÉBAUCHE | ÉBAUCHE / ENVOYÉ / COMPLÉTÉ / ARCHIVÉ / DÉCLINÉ / REFUSÉ / EXPIRÉ | ||
ComplétionAuto | booléen | Oui | Non | vrai | vrai / faux | ||
type | chaîne de caractères | Oui | Non | PACKAGE | PAQUET / MODÈLE / MISE EN PAGE | ||
nom | chaîne de caractères | Oui | Oui | s.o. | Exemple d'extraction de la position du champ | ||
documents | |||||||
nom | chaîne de caractères | Oui | Non | s.o. | Exemple de contrat | ||
extrait | booléen | Oui | Non | faux | vrai / faux | ||
approbations | |||||||
rôle | chaîne de caractères | Oui | Non | s.o. | Signataire1 | ||
champs | |||||||
type | chaîne de caractères | Oui | Oui | s.o. | SIGNATURE / ENTRÉE | ||
extrait | booléen | Oui | Non | faux | vrai / faux | ||
sous-type | chaîne de caractères | Oui | Oui | s.o. | NOM COMPLET / INITIALES / CAPTURE / CAPTURE_MOBILE / ÉTIQUETTE / CHAMP DE TEXTE / ZONE DE TEXTE / CASE / DATE / RADIO / LISTE | ||
nom | chaîne de caractères | Oui | Non | s.o. | sig1 | ||
valeur | chaîne de caractères | Oui | Non | s.o. | NOM COMPLET / INITIALES / CAPTURE / ÉTIQUETTE / CHAMP DE TEXTE / ZONE DE TEXTE / CASE / RADIO / LISTE | ||
liaison | chaîne de caractères | Oui | Non | nul | {approval.signed} / {signer.title} / {signer.name} / {signer.company} | ||
rôles | |||||||
id | chaîne de caractères | Oui | Non | s.o. | Signataire1 | ||
nom | chaîne de caractères | Oui | Non | s.o. | Expéditeur | ||
type | chaîne de caractères | Oui | Non | SIGNER | SIGNATAIRE / EXPÉDITEUR | ||
signataires | |||||||
courriel | chaîne de caractères | Oui | Oui | s.o. | [email protected] | ||
Prénom | chaîne de caractères | Oui | Oui | s.o. | John | ||
Nom de famille | chaîne de caractères | Oui | Oui | s.o. | Smith |
Pour télécharger l'exemple complet de code, consultez notre site Partage de code.
La fonction Extraction de position garantit que la position et la taille exactes d'un champ ou d'une signature dans un fichier PDF téléversé sont automatiquement conservées dans OneSpan Sign.
L'exemple de code suivant vous montre comment modifier l'objet du bloc de document avec l'extraction de position.
Si vous avez besoin d'une comparaison avec la procédure de création d'objets de base, ou si c'est la première fois que vous créez une transaction, consultez la rubrique Création et envoi d'une transaction.
//Prepare Documents Blob String document1Name = 'Sample_Position_Extraction'; StaticResource sr = [SELECT Id, Body FROM StaticResource WHERE Name = 'test_position_extraction' LIMIT 1]; Map<String,Blob> documentBlobMap = new Map<String,Blob>(); documentBlobMap.put(document1Name, sr.Body); //Create Document Metadata ESignLiveAPIObjects.Document document1 = new ESignLiveAPIObjects.Document(); document1.name = document1Name; document1.id = document1Name; document1.extract = true; //document level extraction:true ESignLiveAPIObjects.Approval approval1 = new ESignLiveAPIObjects.Approval(); approval1.role = roleId1; approval1.id = 'approval1'; ESignLiveAPIObjects.Field field1 = new ESignLiveAPIObjects.Field(); field1.id = 'signature1'; field1.extract = true; field1.name = 'sig1'; //match pdf field property name field1.type = 'SIGNATURE'; field1.subtype = 'FULLNAME'; approval1.fields = new List<ESignLiveAPIObjects.Field>{field1}; document1.approvals = new List<ESignLiveAPIObjects.Approval>{approval1}; pkg.documents = new List<ESignLiveAPIObjects.Document>{document1}; //add document
Assurez-vous que l'appel enableExtraction() soit défini au niveau du document et que votre document PDF contient un champ nommé sig1. Sinon, une erreur sera déclenchée.
Résultats
Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code.