2009-11-12 7 views

Répondre

10

Ah, vous utilisez Java.

Notez qu'à mon avis, vous devriez toujours définir une alternative en texte brut dans un courriel HTML.

Ce code vous permet également des images en ligne (par rapport à partir du HTML avec <img src="cid:foo">, mais pas tous les clients de messagerie appui.

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); 
1

Vous définissez le type de contenu mime à text/html sur cette partie de l'e-mail?

Alternativement vous visualisez en utilisant Outlook - l'observateur d'Outlook utilise Word, de toutes choses, pour rendre le HTML, au lieu d'utiliser le moteur de rendu IE comme n'importe quel design sensible le ferait. Cela signifie que la mise en forme importante peut être perdue.

Vous pouvez également essayer une autre police. Un couple de polices ne définit pas les variantes en gras. Cependant, la plupart des techniques de rendu des polices peuvent mettre en gras une police non-bold.

1

le langage de programmation que vous utilisez pour envoyer des e-mails.

Dans toutes les langues, une option devrait être là comme "IsBodyHtml". Pour faire le "vrai" cette vérification. Comme le code de .NET

System.Net.Mail.MailMessage mm = new System.Net.Mail.MailMessage(); mm.IsBodyHtml = true; Ainsi, le courrier ira en tant que texte html

+0

J'utilise java – Harish

1

Il est un peu difficile d'avoir une réponse définitive à cette question. Il y a plusieurs raisons pour lesquelles les choses peuvent ne pas fonctionner. Ce sont des choses que vous pourriez vérifier pour essayer d'isoler le problème.

D'autres balises html sont-elles reconnues? par exemple. <p>, <a>? Si oui, avez-vous essayé d'utiliser une balise <strong> au lieu de <b>?

Vérifiez la source du message dans le lecteur de courrier électronique. Peut-être que les caractères '<' ou '>' ont été échappés en tant que '& lt;' ou '& gt;' avant qu'il ne soit envoyé.

Avez-vous essayé de lire l'e-mail dans un autre lecteur, par exemple webmail ou sur un ordinateur de bureau?

Essayez d'utiliser les CSS pour changer la police poids:

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

<span class=".important-text">Super important text</span> 
Questions connexes