我想在电子邮件中添加图片以及一些文字,而无需在电子邮件中附加图片。这有可能吗?
到目前为止,我已设法执行以下操作,但它会附带附件以及邮件中的图像。我希望它没有附件,但作为邮件的一部分
`Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(username));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(emailID));
message.setSubject("Password Reset");
Multipart multipart = new MimeMultipart("related");
BodyPart htmlPart = new MimeBodyPart();
htmlPart.setContent("<html><body>Hi<img src=\"cid:the-img-1\"/></body></html>", "text/html");
multipart.addBodyPart(htmlPart);
BodyPart imgPart=new MimeBodyPart();
// Loading the image
DataSource ds=new FileDataSource("C:\\Users\\XYZ\\Desktop\\images.jpg");
imgPart.setDataHandler(new DataHandler(ds));
//Setting the header
imgPart.setHeader("Content-ID","the-img-1");
multipart.addBodyPart(imgPart);
// attaching the multi-part to the message
message.setContent(multipart);
Transport.send(message);`
答案 0 :(得分:0)
您需要为此目的构建基于html的电子邮件。 有很多例子可以在google上获得。 一个例子是here。
请注意,您要发送的图片应通过http访问收件人。可能是你可以在谷歌驱动器或某些图像服务器上传它
答案 1 :(得分:0)
您需要构建multipart/related消息。