如何设置签名占位符在adobeechosign文档中的位置


How set the location of Signature placeholder in adobe echosign document

我正在一个网站上实现echosign api。

我已经从下载了php脚本

https://github.com/craigballinger/echosign-api-php

我想为我的网站嵌入小工具。我已经实现了这个小部件。

现在,在我的案例中,我们为每个订单动态生成文档。它是PDF,根据计划可能从3到6页。

现在我想知道如何将签名占位符放在动态文档的特定位置。

在此之前,我使用了docusign,其中我必须指定X Y坐标来指定文档上签名占位符的位置。

请帮忙。

不能像DocuSign那样使用X、Y坐标以编程方式设置签名字段的位置。我遇到了同样的问题,并给EchoSign发了电子邮件,他们告诉我,字段名称必须使用文本标签。

文件编制:http://secure.echosign.com/doc/TextFormsTutorial.pdf

因此,例如,要将签名字段放入文档中,请将字段命名为{{_es_:signer:signature}},EchoSign将用签名字段替换它。

值得注意的是,如果您不将这些内容放入文档中,EchoSign将自动在文档末尾附加一个签名字段。

您可以使用表单字段层模板,该模板是可以应用于文档的预定义表单字段位置。有关更多信息,请查看参数formFieldLayerTemplates

https://secure.echosign.com/public/docs/EchoSignDocumentService17#DocumentCreationInfo

嗨,我也有同样的情况。我仍然无法使用API添加自定义字段。

这是我的代码:

$fields_array = array(
    "fileInfos" => array([
        "transientDocumentId" => $transientDocumentId
    ]),
    "name" => "PDF testing",
    "participantSetsInfo" => array([
        "memberInfos" => array([
            "email" => "myemail@test.com"
        ]),
        "order" => 1,
        "role" => "SIGNER"
    ]),
    "mergeFieldInfo" => array([
          "defaultValue" => "Test",
          "fieldName" => "sigBlock2"
    ]),
    "signatureType" => "ESIGN",
    "state" => "DRAFT" //<-- if I use AUTHORING i can't assign custom fields
);

$postdata = json_encode($fields_array);
$resource = curl_init();
curl_setopt_array($resource, array(
  CURLOPT_URL => "https://api.eu1.echosign.com/api/rest/v6/agreements",
  CURLOPT_HTTPHEADER => $header, //<---contain token etc....
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => $postdata,
  CURLOPT_SSL_VERIFYHOST => false,
  CURLOPT_SSL_VERIFYPEER => false
));
$res = curl_exec($resource);
$result = json_decode($res,true);
$id = $result['id'];

然后设置自定义字段:

$fields_array = array(
    "fields" => [array(
        "locations" => [array(
            "height" => 36,
            "left" => 75,
            "pageNumber" => 2,
            "top" => 200,
            "width" => 150
        )],
        "contentType" => "DATA",
        "name" => "sigBlock1",
        "backgroundColor" => "#CCCCCC",
        "inputType" => "TEXT_FIELD",
        "required" => true,
        "visible" => true
    )]
);
$postdata = json_encode($fields_array);
$resource = curl_init();
curl_setopt_array($resource, array(
  CURLOPT_URL => "https://api.eu1.echosign.com/api/rest/v6/agreements/" . $id . "/formFields",
  CURLOPT_HTTPHEADER => $header,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_POSTFIELDS => $postdata,
  CURLOPT_SSL_VERIFYHOST => false,
  CURLOPT_SSL_VERIFYPEER => false
));
$res = curl_exec($resource);

然后将状态更改为IN_PROGRESS以发送电子邮件:

$fields_array = array(
    "state" => "IN_PROCESS"
);
$postdata = json_encode($fields_array);
$resource = curl_init();
curl_setopt_array($resource, array(
  CURLOPT_URL => "https://api.eu1.echosign.com/api/rest/v6/agreements/" . $id . "/state",
  CURLOPT_HTTPHEADER => $header,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_POSTFIELDS => $postdata,
  CURLOPT_SSL_VERIFYHOST => false,
  CURLOPT_SSL_VERIFYPEER => false
));
$res = curl_exec($resource);

所以我收到了一封带有签名链接的电子邮件。。。。但是我看不到我的自定义字段!我总是看到默认的符号字段附加在文档的末尾。

我错在哪里了?