脚本 - GmailApp.SendEmail与来自Google云端硬盘的InlineImages

时间:2017-05-14 13:02:33

标签: google-apps-script gmail

Hy,我试图让脚本从别名Gmail帐户发送内嵌图像。我在GmailApp的文档中找到了大部分代码,但现在我陷入了最后一步......请尽快帮助,我如何让这部分工作?

谢谢!

var html =  
'<body>' + 
  '<img src='cid:image'>' +
'</body>' 

    function testGmailApp() {  
var ImageBlob = DriveApp
                      .getFileById('0Bx4vy5p9TA6bekY3Q2ZNdzViVkE')
                      .getBlob()
                      .setName("ImageBlob");
      GmailApp.sendEmail(
'example@gmail.com', 
'test GmailApp', 
'test',{
htmlBody: html, 
inlineImages: {image: ImageBlob}
      }); 

}

1 个答案:

答案 0 :(得分:1)

以下是将内嵌图片插入电子邮件的方法。您可以在documentation for MailApp中找到相关示例。在发送内联图像的特定情况下,两个函数的语法保持不变。

如文档中所述,插入内嵌图像的第一步是插入img标记src =" cid:"Name of the image blob in inlineimages object here" html字符串将如下所示:

var html =  
'<body>' + 
  '<h2> Test <img src = "cid:image"> </h2><br />' +
'</body>'

其余功能保持不变。
注意: src指向cid:image,内嵌图像对象中键的名称。

最终代码:

var html =  
    '<body>' + 
      '<h2> Test <img src = "cid:image"> </h2><br />' +
    '</body>'

    function testGmailApp() {  
var ImageBlob = DriveApp
                      .getFileById('0Bx4vy5p9TA6bekY3Q2ZNdzViVkE')
                      .getBlob()
                      .setName("ImageBlob");
      GmailApp.sendEmail(
'someone@gmail.com', 
'test GmailApp', 
'test',{
htmlBody: html, 
inlineImages: {image: ImageBlob}
      }); 
}