Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 多部分电子邮件_Java_Html_Email_Multipart - Fatal编程技术网

Java 多部分电子邮件

Java 多部分电子邮件,java,html,email,multipart,Java,Html,Email,Multipart,如何在多部分电子邮件中使用html标记。当我使用时,它不会被识别为粗体标记。您正在将电子邮件中该部分的内容类型mime设置为text/html 或者,您是否使用Outlook查看—Outlook的查看器使用Word来呈现HTML,而不是像任何合理的设计那样使用IE呈现引擎。这确实意味着重要的格式可能会丢失 或者,尝试不同的字体。一些字体不定义粗体变体。不过,这是一个长期的尝试,大多数字体渲染技术都可以自动加粗非加粗字体。您正在使用哪种编程语言发送电子邮件 在任何语言中,都应该有一个类似“IsBo

如何在多部分电子邮件中使用html标记。当我使用
时,它不会被识别为粗体标记。

您正在将电子邮件中该部分的内容类型mime设置为text/html

或者,您是否使用Outlook查看—Outlook的查看器使用Word来呈现HTML,而不是像任何合理的设计那样使用IE呈现引擎。这确实意味着重要的格式可能会丢失


或者,尝试不同的字体。一些字体不定义粗体变体。不过,这是一个长期的尝试,大多数字体渲染技术都可以自动加粗非加粗字体。

您正在使用哪种编程语言发送电子邮件

在任何语言中,都应该有一个类似“IsBodyHtml”的选项。要执行此检查的“True”。比如.NET的代码

System.Net.Mail.MailMessage mm=新系统.Net.Mail.MailMessage(); mm.IsBodyHtml=true


因此邮件将以html文本的形式发送。

要对这个问题有一个明确的答案有点困难。事情可能不起作用的原因有很多。您可以通过检查这些内容来隔离问题

是否识别其他html标记?例如,
?如果是,您是否尝试过使用
标记而不是

检查电子邮件阅读器中的消息源。在发送“”之前,可能已将其转义为“”或“”

您是否尝试过在不同的阅读器中查看电子邮件,例如webmail或基于桌面的阅读器

尝试使用CSS更改字体大小:

.important-text { font-weight: bold; }

<span class=".important-text">Super important text</span>
。重要文本{font-weight:bold;}
超重要文本
啊,你在用Java

请注意,在我看来,您应该始终在HTML电子邮件中设置纯文本选项

此代码还允许您内联图像(从HTML中引用,带有
),但并非所有电子邮件客户端都支持此功能

MimeMessage mm = prepareMessage(from, to, subject, cc, bcc);
MimeMultipart mp = new MimeMultipart("alternative");

// Attach Plain Text
MimeBodyPart plain = new MimeBodyPart();
plain.setText(plainText);
mp.addBodyPart(plain);

/*
 * Any attached images for the HTML portion of the email need to be encapsulated with
 * the HTML portion within a 'related' MimeMultipart. Hence we create one of these and
 * set it as a bodypart for the overall message.
 */
MimeMultipart htmlmp = new MimeMultipart("related");
MimeBodyPart htmlbp = new MimeBodyPart();
htmlbp.setContent(htmlmp);
mp.addBodyPart(htmlbp);

// Attach HTML Text
MimeBodyPart html = new MimeBodyPart();
html.setContent(htmlText, "text/html");
htmlmp.addBodyPart(html);

// Attach template images (EmailImage is a simple class that holds image data)
for (EmailImage ei : template.getImages()) {
    MimeBodyPart img = new MimeBodyPart();
    img.setContentID(ei.getFilename());
    img.setFileName(ei.getFilename());
    ByteArrayDataSource bads = new ByteArrayDataSource(ei.getImageData(), ei.getMimeType());
    img.setDataHandler(new DataHandler(bads));
    htmlmp.addBodyPart(img);
}

mm.setContent(mp);