Image - スコープ指定、グローバル
画像と PDF に挿入するそのレイアウトを表す Image オブジェクトを作成します。スケール、配置、境界色などの属性を定義できます。
この API は、 ServiceNow PDF 生成ユーティリティプラグイン (com.snc.apppdfgenerator) の一部であり、 sn_pdfgeneratorutils 名前空間内で提供されます。このプラグインはデフォルトでは有効になっています。
この API は、PDF を生成するためにドキュメント API とともに使用されるコンポーネントです。
- Cell – addImage(画像 image) – テーブルセルに画像を追加する
- Table – addImageCell(画像 image) – 画像を含むセルをテーブルに追加する
- Document – addImage(画像 image) - ページに画像を追加する
Image - Image(文字列 attachmentSysId)
新しい Image オブジェクトをインスタンス化します。画像添付ファイルが存在し、変更できるかどうかを確認するために使用されます。
| 名前 | タイプ | 説明 |
|---|---|---|
| attachmentSysId | 文字列 | 添付ファイル [sys_attachment] テーブル内の画像の sys_id。 |
次の例は、Image オブジェクトを作成する方法を示しています。
var image = new sn_pdfgeneratorutils.Image("<sys_id>");
Image – scaleAbsolute(数字 width, 数字 height)
画像を幅と高さのサイズ (絶対値) に拡大縮小します。この設定では画像の幅と高さの比率が保持されないため、設定が正確でないと望ましくないサイズに拡大される可能性があります。
画像の幅と高さの比率を保持した絶対値のサイズに拡大縮小するには、scaleToFit() メソッドを使用します。
| 名前 | タイプ | 説明 |
|---|---|---|
| width | 番号 | 画像の幅 (単位:ポイント)。 |
| height | 番号 | 画像の高さ (単位:ポイント)。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、絶対値の幅と高さを設定して PDF に画像を追加する方法を示しています。
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var scaleAbsPic = new sn_pdfgeneratorutils.Image("<img_sys_id>");
scaleAbsPic.scaleAbsolute(25,50);
document.addImage(scaleAbsPic);
document.saveAsAttachment("incident", "<record_sys_id>", "docWithImg.pdf");
Image – scaleToFit(数字 width, 数字 height)
幅と高さの比率を維持して画像を絶対値のサイズに拡大縮小します。
結果の出力は画像のアスペクト比によって異なります。幅と高さのパラメーター値が画像のアスペクト比と一致しない場合、一方の値が指定された値よりも小さく出力に表示されます。
| 名前 | タイプ | 説明 |
|---|---|---|
| width | 数字 | 画像の最大幅 (単位:ポイント)。 |
| height | 数字 | 画像の最大の高さ (単位:ポイント)。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、Cell – addImage() メソッドを使用して拡大縮小された画像を挿入する方法を示しています。
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// add a table
var table = new sn_pdfgeneratorutils.Table([1,3],false);
// text for the left column
var text = "sample image";
// add a table cell for the image in the right column
var imgCell = new sn_pdfgeneratorutils.Cell(1, 1);
// add an image and set it scale-to-fit
var scaleToFitPic = new sn_pdfgeneratorutils.Image("<img_sys_id>");
scaleToFitPic.scaleToFit(90,175);
// add the image to the cell
imgCell.addImage(scaleToFitPic);
table.addTextCell(text);
table.addCell(imgCell);
// Here's a paragraph
var para = new sn_pdfgeneratorutils.Paragraph("The following table image uses scale to fit.");
document.addParagraph(para);
document.addTable(table);
document.saveAsAttachment("incident", "<record_sys_id>", "imgScaleToFit.pdf");
Image – setAutoScale(ブーリアン value)
サイズを保持して、ページまたはセルの幅と高さを拡大縮小できます。
| 名前 | タイプ | 説明 |
|---|---|---|
| value | ブーリアン | 画像を自動的に拡大/縮小するかどうかを示すフラグ。 有効な値:
デフォルト値:false |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、自動的に拡大縮小して PDF に画像を追加する方法を示しています。画像を追加する際は Table – addImageCell() メソッドを使用します。
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// Add a table
var table = new sn_pdfgeneratorutils.Table([1,2],false);
// Text in left column
var text = "sample image";
// Image in right column
var autoScaledPic = new sn_pdfgeneratorutils.Image("<image_sys_id>");
autoScaledPic.setAutoScale(true);
table.addTextCell(text);
table.addImageCell(autoScaledPic);
document.addTable(table);
document.saveAsAttachment("incident", "<record_sys_id>", "imgAutoScale.pdf");
Image – setColoredBorder(色 color, 数字 width)
指定された色で PDF に境界線を設定します。
| 名前 | タイプ | 説明 |
|---|---|---|
| color | 色 | 画像の境界線の色。 |
| width | 数字 | 境界線の幅 (単位:ポイント)。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、画像に赤色の境界線を 5 ポイントの幅で設定する方法を示しています。
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var borderColor = new sn_pdfgeneratorutils.Color([1.0,0.0,0.0]);
// declare image using sys attachment
var image = new sn_pdfgeneratorutils.Image("<imgAttachment_sys_id>");
image.setColoredBorder(borderColor, 5);
document.addImage(image);
document.saveAsAttachment("incident", "<record_sys_id>", "docWithBorderedImage.pdf");
Image – setHorizontalAlignment(文字列 alignment)
画像の水平配置を設定します。
| 名前 | タイプ | 説明 |
|---|---|---|
| alignment | 文字列 | ページまたはブロック要素に画像の位置調整を配置します。 有効な値:
デフォルト:左 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、PDF ページに中央揃えの画像を追加する方法を示しています。
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// declare image using sys attachment
var image = new sn_pdfgeneratorutils.Image("<imgAttachment_sys_id>");
String alignment = "Center";
image.setHorizontalAlignment(alignment);
document.addImage(image);
// save pdf as attachment to target record in the Incident table
document.saveAsAttachment("incident", "<sys_id>", "docWithImageCentered.pdf");
Image – setNoBorder()
境界線なしで画像を設定します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、ドキュメントに境界線なしの画像を追加する方法を示しています。
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// declare image using sys attachment
var image = new sn_pdfgeneratorutils.Image("<imgAttachment_sys_id>");
image.setNoBorder();
document.addImage(image);
document.saveAsAttachment("incident", "<sys_id>", "docWithImgNoBorder.pdf");