Extraction de la position
  • 28 Feb 2025
  • 6 Minutes à lire
  • Sombre
    Lumière
  • PDF

Extraction de la position

  • Sombre
    Lumière
  • PDF

Résumé de l’article

SDK Java.NET SDKAPI RESTAPEX SDK

SDK Java

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("john.smith@email.com")
      .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.

Capture

.NET SDK

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("john.smith@email.com")
      .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.

Capture

API REST

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": "john.smith@example.com"
        }
      ],
      "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.

Capture

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.

john.smith@exemple.com

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

APEX SDK

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.

Capture


Cet article vous a-t-il été utile ?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.
ESC

Ozzy, facilitant la découverte de connaissances grâce à l’intelligence conversationnelle