【问题标题】:Formatting e-mail body (HTML?)格式化电子邮件正文(HTML?)
【发布时间】:2011-06-02 01:02:59
【问题描述】:

一个简单的问题,格式化一些电子邮件正文的方法是什么?特别是我需要类似的东西

<table><tr><td></td></tr></table>

标签。但就目前而言,我找不到实现这一点的方法(除了 bolditalic...))。

除了 HTML,还有其他选择吗?对于最终结果,我只需要一些简单的表格。

编辑:@EJB @jondavidjohn

这适用于 Android :)

@EJB

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<table>
<tr>
<td>Something</td>
<td>Something</td>
</tr>
<tr>
<td>Something</td>
<td>Something</td>
</tr>
</table>
</body>
</html>

【问题讨论】:

    标签: android email html-table html-email


    【解决方案1】:

    是的,HTML 电子邮件只需要是自我维持的文档...

    所以需要包含 css(没有外部样式表)

    并且所有图片路径都必须是完整的,而不是相对的。

    【讨论】:

      【解决方案2】:

      我的建议是查看您收到的一些 HTML 电子邮件的来源...您绝对可以使用 HTML 进行格式化,包括字体/颜色/图形等,但您用于制作网页的大多数规则都没有不适用。

      在很多方面,它就像“过去”,所有格式都嵌入在 html 中,而不是从 css 文件中提取。

      规则很棘手..如果您真的想知道如何正确操作(让大多数电子邮件客户端能够看到正确的格式 - 它们并不完全相同),请注册免费试用经常联系或 mailchimp 或其他知名电子邮件提供商的帐户,使用他们的模板创建一些电子邮件,将它们通过电子邮件发送给自己,然后研究它们的构建方式并使用您所学到的知识来构建自己的模板。

      或者,只需研究您已经收到的一些 HTML 格式电子邮件的来源;了解已知有效的方法,然后适应您的需求。

      【讨论】:

      • 所以上面的代码不起作用?因为没有什么特别的。只是普通的 HTML(我什至不需要 CSS)。我会检查'constantcontact'...... *我的意思是如果我把它放在“Html.fromHtml(bodyString)”中 - 我没有得到任何这些HTML代码,但没有表格 - 所有文本都被砸在一起(或者我需要 CSS?)
      • Html 类只支持少量的 html 标签。不支持表格标签。见 (nowherenearithaca.blogspot.ch/2011/10/…)
      【解决方案3】:

      我找到了解决办法。这不是一个很好的解决方案,但它对我有用。我生成 HTML,并将文本保存到 .html 文件中。然后,我通过电子邮件意图将其附加到电子邮件中。希望这会有所帮助!

      【讨论】:

        【解决方案4】:

        我尝试了很久才让它工作,但最终:

        使用电子邮件应用程序 2.3.4 版,我设法完成了。

        我使用了以下几行代码。

        Intent emailIntent = new Intent(Intent.ACTION_SEND);
        emailIntent.setType("text/html");
        emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{"rap@jesus.ch"});
        emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Process Data");
        emailIntent.putExtra(Intent.EXTRA_TEXT, text);
        context.startActivity(Intent.createChooser(emailIntent, "Chooser Title"));
        

        文本是一个简单的字符串,其中包含 Html。

        它不适用于 Gmail 应用程序(版本 2.3.6)

        【讨论】:

          【解决方案5】:

          我已经建立了这种方法来格式化我的电子邮件按摩正文。 在 HTML 中使用希伯来语进行 RTL 对齐

              private String formatMassageBody(MassageData newMassage) {
              String tmpMassage;
          
                  tmpMassage = "<html><meta charset=\"UTF-8\"><p><body dir=\"rtl\">";
                  tmpMassage += "<b>מק\"ט:  </b>" + newMassage.getID() + "<br><br>";
                  tmpMassage += "<b>התקבל ב:  </b>" + new Date().toString() + "<br>";
                  tmpMassage += "<b>שם הפרוייקט: </b>" + newMassage.getProjectName() + "<br>";
                  tmpMassage += "<b>שם מזמין העבודה:</b>" + newMassage.getOrderedBy()"<br>";
                  tmpMassage += "<b>טלפון:  </b>" + newMassage.getPhoneNumber() + "<br>";
                  tmpMassage += "<b>דחיפות:  </b>";
                  tmpMassage += (newMassage.getPriority() == 1) ? "דחוף<br>" : "רגיל<br>";
                  tmpMassage += "<b>מילות קוד:  </b>" + newMassage.getTagNames() + "<br>";
                  tmpMassage += "</body></p><p><body dir=\"rtl\">";
                  tmpMassage += "<br>";
                  tmpMassage += "<b>פירוט הטכנאים: </b>" + newMassage.getText() + "<br><br>";
                  tmpMassage += "<b>הטכנאי השולח: </b>" + newMassage.getTech() + "<br><br>";;
                  tmpMassage += "<b>זמן עבודה משוער: </b>" + newMassage.getTTL() + "<br>";;
                  tmpMassage += "</body></p><p></p></meta></html>";
          
                  return tmpMassage;
          }
          

          像魅力一样工作:)

          你可以看到我在这里使用的常见标签是:

              <br> - for a line break.
              <b> Text I want to BOLD </b> - for BOLD text.
              <p>....</p> - new paragraph.
              <meta charset=\"UTF-8\"> - declaring Hebrew characters
              <body dir=\"rtl\">" - setting the text direction to RIGHT-TO-LEFT for Hebrew.
          

          祝你好运

          戴夫

          【讨论】: