Image - スコープ指定、グローバル

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む9読むのに数分
  • 画像と PDF に挿入するそのレイアウトを表す Image オブジェクトを作成します。スケール、配置、境界色などの属性を定義できます。

    この API は PDF Generation Utilities プラグイン (com.snc.apppdfgenerator) の一部 ServiceNow であり、 sn_pdfgeneratorutils 名前空間内で提供されます。このプラグインはデフォルトでは有効になっています。

    この API は、PDF を生成するためにドキュメント API とともに使用されるコンポーネントです。

    次のいずれかの方法を使用して、PDF に画像を追加できます。

    Image - Image(文字列 attachmentSysId)

    新しい Image オブジェクトをインスタンス化します。画像添付ファイルが存在し、変更できるかどうかを確認するために使用されます。

    表 : 1. パラメーター
    名前 タイプ 説明
    attachmentSysId 文字列 添付ファイル [sys_attachment] テーブル内の画像の sys_id。

    次の例は、Image オブジェクトを作成する方法を示しています。

    var image = new sn_pdfgeneratorutils.Image("<sys_id>");

    Image – scaleAbsolute(数字 width, 数字 height)

    画像を幅と高さのサイズ (絶対値) に拡大縮小します。この設定では画像の幅と高さの比率が保持されないため、設定が正確でないと望ましくないサイズに拡大される可能性があります。

    画像の幅と高さの比率を保持した絶対値のサイズに拡大縮小するには、scaleToFit() メソッドを使用します。

    表 : 2. パラメーター
    名前 タイプ 説明
    width 番号 画像の幅 (単位:ポイント)。
    height 番号 画像の高さ (単位:ポイント)。
    表 : 3. 返される内容
    タイプ 説明
    なし

    次の例は、絶対値の幅と高さを設定して 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)

    幅と高さの比率を維持して画像を絶対値のサイズに拡大縮小します。

    結果の出力は画像のアスペクト比によって異なります。幅と高さのパラメーター値が画像のアスペクト比と一致しない場合、一方の値が指定された値よりも小さく出力に表示されます。

    表 : 4. パラメーター
    名前 タイプ 説明
    width 数字 画像の最大幅 (単位:ポイント)。
    height 数字 画像の最大の高さ (単位:ポイント)。
    表 : 5. 返される内容
    タイプ 説明
    なし

    次の例は、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)

    サイズを保持して、ページまたはセルの幅と高さを拡大縮小できます。

    表 : 6. パラメーター
    名前 タイプ 説明
    value ブーリアン

    画像を自動的に拡大/縮小するかどうかを示すフラグ。

    有効な値:
    • true:画像を自動的に拡大縮小する
    • false:画像は拡大縮小されない

    デフォルト値:false

    表 : 7. 返される内容
    タイプ 説明
    なし

    次の例は、自動的に拡大縮小して 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 に境界線を設定します。

    表 : 8. パラメーター
    名前 タイプ 説明
    color 画像の境界線の色。
    width 数字 境界線の幅 (単位:ポイント)。
    表 : 9. 返される内容
    タイプ 説明
    なし

    次の例は、画像に赤色の境界線を 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)

    画像の水平配置を設定します。

    表 : 10. パラメーター
    名前 タイプ 説明
    alignment 文字列 ページまたはブロック要素に画像の位置調整を配置します。
    有効な値:
    • 中心

    デフォルト:左

    表 : 11. 返される内容
    タイプ 説明
    なし

    次の例は、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()

    境界線なしで画像を設定します。

    表 : 12. パラメーター
    名前 タイプ 説明
    なし
    表 : 13. 返される内容
    タイプ 説明
    なし

    次の例は、ドキュメントに境界線なしの画像を追加する方法を示しています。

    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");