6


2

電子メールに背景画像を埋め込む

電子メールに埋め込まれた画像を背景画像として使用しようとしています。それを埋め込むための次のコードがあります。

        LinkedResource backgroundLink = new LinkedResource("..\\..\\background.gif");
        backgroundLink.ContentId = "BackgroundImage";
        backgroundLink.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
        htmlView.LinkedResources.Add(backgroundLink);
        m.AlternateViews.Add(htmlView);

次に、電子メールの本文に、テストする次のコードがあります。

                  test

表示されませんが、このように画像を入れると問題ありません。


背景として表示されない理由を知っている人はいますか?

事前に感謝します:)

4 Answer


6


MS Outlook 2007、Live Hotmailなどは、本文、テーブルなど、ある種の背景画像を含む電子メールコンテンツをサポートしていないことに注意してください。

メールクライアントでテストする前に、これを確認してください:http://www.campaignmonitor.com/css/


3


残念ながら、多くの一般的な電子メールクライアントはレンダリングしないため、電子メールで背景画像を確実に使用することはできません。

私はこれを回避しようとして多くのイライラする時間を費やしましたが、まだ良い解決策を見つけていません!


1


あなたは以下を試しましたか? EメールでCSSを使用できます-background-imageプロパティを使用するだけです。

                  test

このスニペットはApple Mailでのみテストしました!


1


これを使って

文字列Body = "";

AlternateView htmlView = AlternateView.CreateAlternateViewFromString(Body、null、 "text / html");

    LinkedResource imagelink = new LinkedResource(Server.MapPath("~/images/gmail_top.jpg"));

    LinkedResource imagelink1 = new LinkedResource(Server.MapPath("~/images/gmail_btm.jpg"));
    imagelink.ContentId = "imageId";
    imagelink1.ContentId = "imageId1";
    imagelink.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
    htmlView.LinkedResources.Add(imagelink);

    imagelink.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
    htmlView.LinkedResources.Add(imagelink1);

Mail.AlternateViews.Add(htmlView);

この後、SMTP設定を使用できます