Imagem - Com escopo, global

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 4 min. de leitura
  • Cria um objeto Image que representa uma imagem e sua inserção de layout em um PDF. Permite definir atributos como escala, alinhamento e cor da borda.

    Esta API faz parte do plug-in ServiceNow Utilitários de geração de PDF (com.snc.apppdfgenerator) e é fornecida no namespace sn_pdfgeneratorutils. O plug-in é ativado por padrão.

    Esta API é um componente usado com a API de documentos para gerar um PDF.

    Você pode adicionar uma imagem a um PDF usando um dos seguintes métodos:

    Image - Image(cadeia de caracteres attachmentSysId)

    Instancia um novo objeto de imagem. Usado para verificar se um anexo de imagem existe e está disponível para modificação.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    attachmentSysId Cadeia de caracteres Sys_id de uma imagem na tabela Anexos [sys_attachment].

    O exemplo a seguir mostra como criar um objeto Image.

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

    Image – scaleAbsolute(largura do número, altura do número)

    Dimensiona uma imagem para tamanhos absolutos de largura e altura. Esta configuração não preserva a proporção largura-altura da imagem e pode resultar em um aumento indesejado se as configurações não forem precisas.

    Para dimensionar para um tamanho absoluto que preserva a proporção largura-altura de uma imagem, use o método scaleToFit().

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    largura Número Largura da imagem em pontos.
    altura Número Altura da imagem em pontos.
    Tabela 3. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como adicionar uma imagem a um PDF com configurações absolutas de largura e altura.

    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(largura do número, altura do número)

    Dimensiona uma imagem para um tamanho absoluto enquanto preserva a proporção entre largura e altura.

    A saída resultante varia de acordo com a proporção da imagem. Se os valores do parâmetro de largura e altura não corresponderem à proporção da imagem, um valor será renderizado menor na saída do que o valor fornecido.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    largura Número Largura máxima da imagem em pontos.
    altura Número Altura máxima da imagem em pontos.
    Tabela 5. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como inserir uma imagem dimensionada para caber usando o método Célula – 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");

    Imagem – setAutoScale(Boolean value)

    Habilita o dimensionamento de largura e altura para uma página ou célula, mantendo as dimensões.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    valor Booliano

    Sinalizador que indica se uma imagem deve ser dimensionada automaticamente.

    Valores válidos:
    • verdadeiro: dimensiona a imagem automaticamente
    • falso: a imagem não é dimensionada

    Padrão: falso

    Tabela 7. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como adicionar uma imagem a um PDF com escalonamento automático. A imagem é adicionada usando o método Tabela – 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(Cor, Largura do número)

    Define uma borda em um PDF na cor especificada.

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    cor Cor Cor da borda da imagem.
    largura Número Largura da borda em pontos.
    Tabela 9. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como definir uma borda vermelha de cinco pontos em uma imagem.

    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(cadeia de caracteres "alignment")

    Define o alinhamento horizontal da imagem.

    Tabela 10. Parâmetros
    Nome Tipo Descrição
    alinhamento Cadeia de caracteres Posiciona o alinhamento da imagem em uma página ou elemento de bloco.
    Valores válidos:
    • Centro
    • Esquerda
    • Direita

    Padrão: Esquerda

    Tabela 11. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como adicionar uma imagem centralizada em uma página de 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");

    Imagem – setNoBorder()

    Define uma imagem para não ter borda.

    Tabela 12. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 13. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como adicionar uma imagem a um documento sem uma borda.

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