Class Image

Image

Um widget que mostra uma única imagem. Para saber mais sobre como cortar imagens, consulte ImageCropStyle.

Disponível para complementos do Google Workspace e apps do Google Chat.

var image = CardService.newImage().setAltText("A nice image").setImageUrl("https://image.png");

Métodos

MétodoTipo de retornoBreve descrição
setAltText(altText)ImageDefine o texto alternativo da imagem para acessibilidade.
setAuthorizationAction(action)ImageDefine uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado.
setComposeAction(action, composedEmailType)ImageDefine uma ação que compõe um rascunho de e-mail quando o objeto é clicado.
setImageUrl(url)ImageDefine a imagem a ser usada fornecendo o URL ou a string de dados dela.
setOnClickAction(action)ImageDefine uma ação que é executada quando o objeto é clicado.
setOnClickOpenLinkAction(action)ImageDefine uma ação que abre um URL em uma guia quando o objeto é clicado.
setOpenLink(openLink)ImageDefine um URL que será aberto quando o objeto for clicado.

Documentação detalhada

setAltText(altText)

Define o texto alternativo da imagem para acessibilidade. Obrigatório.

Parâmetros

NomeTipoDescrição
altTextStringO texto alternativo a ser atribuído à imagem.

Retorno

Image: este objeto para encadeamento.


setAuthorizationAction(action)

Define uma ação de autorização que abre um URL para o fluxo de autorização quando o objeto é clicado. O URL será aberto em uma nova janela. Quando o usuário conclui o fluxo de autorização e retorna ao aplicativo, o complemento é recarregado.

Um objeto de interface só pode ter um dos seguintes valores: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

// ...

var action = CardService.newAuthorizationAction().setAuthorizationUrl('url');
CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);

Parâmetros

NomeTipoDescrição
actionAuthorizationActionO objeto que especifica a ação de autorização a ser realizada quando esse elemento é clicado.

Retorno

Image: este objeto para encadeamento.


setComposeAction(action, composedEmailType)

Define uma ação que compõe um rascunho de e-mail quando o objeto é clicado. Um objeto de interface só pode ter um dos seguintes valores: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

O parâmetro Action precisa especificar uma função de callback que retorne um objeto ComposeActionResponse configurado usando ComposeActionResponseBuilder.setGmailDraft(draft).

// ...

var action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
    .setText('Compose Email')
    .setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);

// ...

function composeEmailCallback() {
  var thread = GmailApp.getThreadById(e.threadId);
  var draft = thread.createDraftReply('This is a reply');
  return CardService.newComposeActionResponseBuilder()
      .setGmailDraft(draft)
      .build();
}

Parâmetros

NomeTipoDescrição
actionActionO objeto que especifica a ação de composição a ser realizada quando esse elemento é clicado.
composedEmailTypeComposedEmailTypeUm valor de enumeração que especifica se o rascunho composto é independente ou de resposta.

Retorno

Image: este objeto para encadeamento.


setImageUrl(url)

Define a imagem a ser usada fornecendo o URL ou a string de dados dela. Obrigatório.

O URL fornecido pode ser de acesso público ou uma string de imagem codificada em base64. Para conseguir o último, use o código a seguir para criar uma string de imagem codificada a partir de uma imagem no Google Drive e armazene essa string para uso posterior com setImageUrl(url). Esse método evita que seu complemento precise acessar um URL de imagem disponível publicamente:

// The following assumes you have the image to use in Google Drive and have its ID.
var imageBytes = DriveApp.getFileById(imageID).getBlob().getBytes();
var encodedImageURL = "data:image/jpeg;base64," + Utilities.base64Encode(imageBytes);

// You can store encodeImageURL and use it as a parameter to Image.setImageUrl(url).

Parâmetros

NomeTipoDescrição
urlStringO endereço de URL de uma imagem hospedada ou uma string de imagem codificada.

Retorno

Image: este objeto para encadeamento.


setOnClickAction(action)

Define uma ação que é executada quando o objeto é clicado. Um objeto de interface só pode ter um destes definidos: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

O parâmetro Action precisa especificar uma função de callback que retorne um objeto ActionResponse.

// ...

var action = CardService.newAction().setFunctionName('notificationCallback');
CardService.newTextButton().setText('Create notification').setOnClickAction(action);

// ...

function notificationCallback() {
  return CardService.newActionResponseBuilder()
      .setNotification(CardService.newNotification()
          .setText("Some info to display to user"))
      .build();
}

Parâmetros

NomeTipoDescrição
actionActionA ação a ser realizada quando esse elemento é clicado.

Retorno

Image: este objeto para encadeamento.


setOnClickOpenLinkAction(action)

Define uma ação que abre um URL em uma guia quando o objeto é clicado. Use essa função quando o URL precisar ser criado ou quando você precisar realizar outras ações além da criação do objeto OpenLink. Um objeto de interface só pode ter um dos seguintes valores: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType) definido.

O parâmetro Action precisa especificar uma função de callback que retorne um objeto ActionResponse configurado usando ActionResponseBuilder.setOpenLink(openLink).

// ...

var action = CardService.newAction().setFunctionName('openLinkCallback');
CardService.newTextButton().setText('Open Link').setOnClickOpenLinkAction(action);

// ...

function openLinkCallback() {
  return CardService.newActionResponseBuilder()
      .setOpenLink(CardService.newOpenLink()
          .setUrl('https://www.google.com'))
      .build();
}

Parâmetros

NomeTipoDescrição
actionActionO objeto que especifica a ação de abrir o link a ser realizada quando esse elemento é clicado.

Retorno

Image: este objeto para encadeamento.


Define um URL que será aberto quando o objeto for clicado. Use essa função quando o URL já for conhecido e só precisar ser aberto. Um objeto de interface só pode ter um dos seguintes valores: setOpenLink(openLink), setOnClickAction(action), setOnClickOpenLinkAction(action), setAuthorizationAction(action) ou setComposeAction(action, composedEmailType).

Parâmetros

NomeTipoDescrição
openLinkOpenLinkUm objeto OpenLink que descreve o URL a ser aberto.

Retorno

Image: este objeto para encadeamento.