es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Adjunto en formato PDF con @sendgrid/mail.

Quiero adjuntar un archivo PDF en Node.js. Estoy usando @sendgrid/mail para enviar correos electrónicos y pdfkit para crear el archivo PDF. He creado un archivo PDF con datos HTML y añadido el logotipo de la empresa. Este archivo adjunto se recibe correctamente en mi bandeja de entrada. Pero el logotipo de la empresa en el archivo PDF adjunto no se muestra allí. Aquí está mi código:

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para asegurar que el logotipo de la empresa en el adjunto PDF sea visible, debes asegurarte de que el archivo del logotipo sea accesible para el receptor del correo electrónico. Esto se puede lograr ya sea incrustando los datos de imagen del logotipo dentro del PDF mismo o alojando la imagen en una URL pública accesible.

    Una forma de incrustar los datos de imagen dentro del PDF es usar el método image() de PDFKit para agregar el logotipo al documento PDF. Puedes hacer esto agregando el siguiente código justo antes de doc.end():

    doc.image('path/to/my/logo.png', {
      fit: [100, 100],
      align: 'center',
      valign: 'center'
    });
    

    Esto agregará el logotipo como una imagen en el centro de la página, con un ancho y altura máximos de 100 puntos.

    Alternativamente, si deseas alojar la imagen del logotipo en una URL, puedes especificar la URL como la fuente de la imagen usando la propiedad src:

    doc.image('https://example.com/my/logo.png', {
      fit: [100, 100],
      align: 'center',
      valign: 'center',
      src: true
    });
    

    Esto descargará automáticamente la imagen desde la URL especificada e incrustará dentro del documento PDF.

    De cualquier manera, asegúrate de que el archivo del logotipo sea accesible para el receptor del correo electrónico. Si el archivo del logotipo se aloja en una red local o privada, es posible que no sea accesible para el receptor. En este caso, es posible que debas copiar el archivo del logotipo a una ubicación públicamente accesible, como un servicio de almacenamiento en la nube como AWS S3 o Google Cloud Storage, y usar la URL del archivo alojado en el documento PDF.

Comments are closed.