Image - Délimitée, globale

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 4 minutes de lecture
  • Crée un objet Image représentant une image et son insertion de mise en page dans un PDF. Permet de définir des attributs tels que l’échelle, l’alignement et la couleur des bordures.

    Cette API fait partie du module d’extension ServiceNow PDF Generation Utilities (com.snc.apppdfgenerator) et est fournie dans l’espace de noms sn_pdfgeneratorutils . Le module d’extension est activé par défaut.

    Cette API est un composant utilisé avec l’API Document pour générer un PDF.

    Vous pouvez ajouter une image à un fichier PDF à l’aide de l’une des méthodes suivantes :

    Image : image(String attachmentSysId)

    Instancie un nouvel objet Image . Utilisée pour vérifier si une pièce jointe d’image existe et est disponible pour modification.

    Tableau 1. Paramètres
    Nom Type Description
    attachmentSysId Chaîne Sys_id d’une image dans la table Pièces jointes [sys_attachment].

    L’exemple suivant montre comment créer un objet Image .

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

    Image – scaleAbsolute(largeur du nombre, hauteur du nombre)

    Met une image à l’échelle selon les tailles absolues de largeur et de hauteur. Ce paramètre ne préserve pas le rapport largeur/hauteur de l’image et peut entraîner un étirement indésirable si les paramètres ne sont pas précis.

    Pour obtenir une taille absolue qui préserve le rapport largeur-hauteur d’une image, utilisez la méthode scaleToFit().

    Tableau 2. Paramètres
    Nom Type Description
    largeur Numéro Largeur de l’image en points.
    hauteur Numéro Hauteur de l’image en points.
    Tableau 3. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment ajouter une image à un PDF avec des paramètres de largeur et de hauteur absolus.

    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(largeur du nombre, hauteur du nombre)

    Met à l’échelle une image à une taille absolue tout en préservant le rapport largeur/hauteur.

    Le résultat varie en fonction du rapport hauteur/largeur de l’image. Si les valeurs des paramètres de largeur et de hauteur ne correspondent pas au rapport hauteur/largeur de l’image, une valeur s’affiche en sortie plus petite que la valeur donnée.

    Tableau 4. Paramètres
    Nom Type Description
    largeur Numéro Largeur maximale de l’image en points.
    hauteur Numéro Hauteur maximale de l’image en points.
    Tableau 5. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment insérer une image mise à l’échelle à l’aide de la méthode 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(valeur booléenne)

    Permet de mettre à l’échelle la largeur et la hauteur d’une page ou d’une cellule tout en conservant les dimensions.

    Tableau 6. Paramètres
    Nom Type Description
    valide Booléen

    Marqueur indiquant s’il faut mettre automatiquement à l’échelle une image.

    Valeurs valides :
    • true : met automatiquement l’image à l’échelle
    • false : l’image n’est pas mise à l’échelle

    Valeur par défaut : false

    Tableau 7. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment ajouter une image à un PDF avec une mise à l’échelle automatique. L’image est ajoutée à l’aide de la méthode 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(Couleur de couleur, largeur du nombre)

    Définit une bordure sur un PDF dans la couleur spécifiée.

    Tableau 8. Paramètres
    Nom Type Description
    couleur Couleur Couleur de la bordure de l’image.
    largeur Numéro Largeur de la bordure en points.
    Tableau 9. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment définir une bordure rouge à cinq points sur une image.

    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(Alignement des chaînes)

    Définit l’alignement horizontal de l’image.

    Tableau 10. Paramètres
    Nom Type Description
    alignement Chaîne Positionne l’alignement de l’image sur un élément de page ou de bloc.
    Valeurs valides :
    • Centre
    • Gauche
    • Droite

    Par défaut : Gauche

    Tableau 11. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment ajouter une image centrée sur une page 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()

    Définit une image pour qu’elle n’ait pas de bordure.

    Tableau 12. Paramètres
    Nom Type Description
    Aucun
    Tableau 13. Renvoie
    Type Description
    Aucun

    L’exemple suivant montre comment ajouter une image à un document sans bordure.

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