PdfMergeSignRequestor:スコープ指定、グローバル
PdfMergeSignRequestor API には、署名を表す画像を PDF ドキュメントに追加するメソッドが用意されています。
この API は、 ServiceNow PDF Generation Utilities プラグイン (com.snc.apppdfgenerator) の一部であり、 sn_pdfgeneratorutils 名前空間内で提供されます。このプラグインはデフォルトでは有効になっています。
この API は、 PDFGenerationAPI を使用して PDF に実装できる署名オブジェクトを作成します。
PdfMergeSignRequestor - PdfMergeSignRequestor()
新しい PdfMergeSignRequestor オブジェクトをインスタンス化します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
次の例は、PdfMergeSignRequestor オブジェクトを作成する方法を示します。
var v = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
PdfMergeSignRequestor - addSignatureMapping(数字 pageNumber, 数字 leftMargin, 数字 topMargin, 数字 boxWidth, 数字 boxHeight, 文字列 sysId)
PDF 内で署名のサイズと位置の要件を割り当てます。
| 名前 | タイプ | 説明 |
|---|---|---|
| pageNumber | 数字 | 署名を挿入するページの番号。 |
| leftMargin | 数字 | 署名を挿入するページの左マージン領域を表す値 (ポイント単位)。 |
| topMargin | 数字 | 署名画像を挿入するページの上マージン領域を表す値 (ポイント単位)。 |
| boxWidth | 数字 | 署名を含めるボックスの幅を表す値 (ポイント単位)。 |
| boxHeight | 数字 | 署名画像を含めるボックスの高さを表す値 (ポイント単位)。 |
| sysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の署名画像の sys_id。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、署名マッピングを追加する方法を示しています。完全な例については、「processRequest()」を参照してください。
var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
// For the purpose of this example, set signature sizes and page number for signature placement
var page = 2;
var leftMargin = 48;
var topMargin = 60;
var signatureWidth = 96;
var signatureHeight = 36;
requestor.addSignatureMapping(page, leftMargin, topMargin, signatureWidth, signatureHeight, "<signatureSysId>");
PdfMergeSignRequestor - createRequest(文字列 targetSysId, 文字列 targetTable, 文字列 tableSysId, 文字列 targetFileName)
ソースとターゲットの入力を使用して署名要求を作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| targetSysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の PDF の sys_id。 この値を、署名を追加するターゲット PDF として使用します。 |
| targetTable | 文字列 | PDF が添付されるレコードを含むテーブルの名前。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| tableSysId | 文字列 | PDF が添付されるレコードの sys_id。この値は、添付ファイル [sys_attachment] テーブルにリストされている添付ファイルと同じ行にあります。 |
| targetFileName | 文字列 | 拡張子なしのターゲット PDF の名前。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、署名要求を作成する方法を示します。完全な例については、「processRequest()」を参照してください。
var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
requestor.createRequest("<sys_id>", "tableName", "<tableSysId>", "pdfFileName");
PdfMergeSignRequestor:processRequest()
要求を処理して署名を追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | 成功した場合は各ページのサイズを含むオブジェクト、失敗した場合はエラーメッセージ。 |
| <Object>.attachment_id | 要求が成功した場合、添付される署名済み PDF の sys_id。ファイルは、添付ファイル [sys_attachment] テーブルにリストされます。 データタイプ:文字列 |
| <Object>.message | 可能な値:
データタイプ:文字列 |
| <Object>.status | 操作が成功したかどうかを示すステータス。 可能な値:
データタイプ:文字列 |
次の例は、署名要求を処理する方法を示します。
var requestor = new sn_pdfgeneratorutils.PdfMergeSignRequestor;
requestor.createRequest("<sys_id>", "tableName", "<tableSysId>", pdfFileName);
// For the purpose of this example, set signature sizes and page number for signature placement
var page = 6;
var leftMargin = 40;
var topMargin = 50;
var signatureWidth = 188;
var signatureHeight = 44;
requestor.addSignatureMapping(page, leftMargin, topMargin, signatureWidth, signatureHeight, "<signatureSysId>");
var result = requestor.processRequest();
gs.info(JSON.stringify(result));