jueves, 31 de marzo de 2022

Insertar imágenes desde Drive en un correo (por ejemplo)

 Para insertar imágenes en nuestro correo necesitamos utilizar las opción de correo htmlBody

Por ejemplo:


var mensaje = ' Mi mensaje'
var opciones = {htmlBody: mensaje}

MailApp.sendEmail(correo_cargo, 'Nuevo mensaje', mensaje,opciones)





Antes de estas líneas metemos en el mensaje, mediante lenguaje html la imagen que

queremos que aparezca en el correo
var mensaje = ' Mi mensaje'

var imagen = <img src= > // ahí añadimos la url de la imagen.

mensaje = mensaje + imagen


PERO, CON IMÁGENES DRIVE NO FUNCIONA.

Necesitamos crear una url especial, tal que así:

http://drive.google.com/uc?export=view&id=


Nos falta el id de la imagen, que lo sacaremos del enlace público de compartir la imagen.

En dicho enlace público tenemos el id necesario entre /file/d/ y / view?

Una vez conseguido el Id lo metemos en una variable:

var id_conseguido = 'xxxxxxxxxxxxxxxxxxxxxxxxxxx'


Y con este dato y la url anterior creamos la imagen en html

var imagen = '<img src=http://drive.google.com/uc?export=view&id='+idconseguido+'>'

peeeero, aún no va a funcionar, ya que necesitamos desmarcar una opción dentro del menú de

compartir donde hemos conseguido la url pública
:

Haz clic en la rueda de
configuración
Quita la marca
a aplicar actualización de seguridad



Una vez hecho esto, la imagen debería aparecer sin problemas en el correo.


Un ejemplo del trozo de código necesario sería este:

var miid = '0B_iUREgZco_VaWpseFlnNFQzZGFrR1VxRXlRWkg4YWVKN2pj' 
// Se consigue del enlace público a compartir entre file/d/ y /view?
// Hay que darle a configuración y quitar la marca de seguridad
var imagen = '<img src=http://drive.google.com/uc?export=view&id='+miid+'>'
mensaje = mensaje + '<br>'+imagen
var opciones = {htmlBodymensaje}

MailApp.sendEmail(correo_cargo'Nuevo mensaje'mensaje,opciones)

Crear PDF horizontal

El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...