software‎ > ‎módulos‎ > ‎engine‎ > ‎perguntas frequentes‎ > ‎

Como fazer para inserir imagem no conteúdo do e-mail gerado pelo objeto Mail

postado em 16 de ago de 2010 09:50 por Usuário desconhecido   [ atualizado em 5 de nov de 2010 07:23 por Usuário desconhecido ]
O objeto Mail permite que o desenvolvedor possa inserir uma imagem dentro do conteúdo do E-mail. A inserção é realizada usando HTML através da TAG <img>. Para inserir um imagem o desenvolvedor deverá executar basicamente os seguintes passos:
  1. Inserir o binário da imagem no e-mail usando o método addRelatedContent() e guarda o content-id gerado na adição da imagem.
  2. Inserir uma TAG <img> no conteúdo html do e-mail. Aqui o desenvolvedor deverá usar o prefixo CID(Contend-Id). Exemplo: <img src="cid: ...">

Segue abaixo um exemplo do uso do objeto Mail para inserir imagens dentro do conteúdo do e-mail:

var mail = new Mail()

//Configuração do SMTP
mail.userName = "seuemail@unum.com.br"
mail.fullSsl = true
mail.smtpServer = "smtp.gmail.com:465"
mail.password = "sua senha"

mail.senderName = "Seu Nome"
mail.senderMailAddress = "seuemail@unum.com.br"
mail.subject = "Anexando e exibindo imagens no e-mail"
mail.addRecipient( "destinatario@gmail.com" )

//Adiciona um arquivo de imagem e retorna o content-id gerado.
var imgId = mail.addRelatedContent( "img01.jpg", File.stringFromFile( "C:\\images\\foto.jpg" ) )

//Conteúdo HTML da mensagem
mail.htmlContent = "<html>"
mail.htmlContent += "Imagem de teste<br>"
mail.htmlContent += "<img src=\"cid:"+imgId+"\"><br>"
mail.htmlContent += "Fim do HTML."
mail.htmlContent += "</html>"


mail.logEnabled = true
var logError
try {
   mail.sendLocally() //Envia o e-mail
}
finally {
   logError = mail.log
}
logError