0

HTML SMTP メールに円グラフを含めたいと考えています。

最初に ASP.NET チャートを考えましたが、これはフロント エンドです。次に、ハイチャートについて考えましたが、それらのjavascriptを添付できません。最後に、Google Chart API を使用することにしました。

URL を画像タグに入れると、URL から返された画像がメールに送信されることがわかりました。しかし、私はこれを行っており、「代替」テキストしか取得していません。少しグーグルで、smtp HTMLを作成する必要があると言いました。しかし、私もそれをしましたが、まだ画像はありません。

var mail = new MailMessage();
mail.From = new MailAddress("email@address.com");
mail.To.Add("email@address.com");
mail.Subject = "Chart Test";
mail.Body = "<img src='https://chart.googleapis.com/chart?chs=250x100&chd=t:60,40&cht=p3&chl=Hello|World' alt='chart' />";
mail.IsBodyHtml = true;

var smtp = new SmtpClient();
smtp.Send(mail);

どんな提案でも大歓迎です。

Ps - 初めての投稿なのでお手柔らかに(笑)

4

2 に答える 2

0

あなたのアプローチで私が間違っていると思ういくつかのことは次のとおりです。

1: メール本文が不完全な HTML ドキュメントです

2: 電子メールに画像を含めるのではなく、外部コンテンツにリンクしています。外部画像は、スパム フィルターなどによってブロックされることがよくあります。

3: 機密データの可能性があるものを Google に送信しています

4: 選択した円グラフは円形ではありませんが、これは意図的な誤解を招く試みですか? 比率は、インク領域、目に見えるサブテブド角度、変換前のサブテブド角度、およびそうであれば、変換の斜めまたは遠近法に対するものですか?

残念ながら、私は asp メールについて、それを修正する方法の詳細を提供するのに十分な知識がありませんが、最良の結果を得るには、次のことを行う必要があります。

1> 有効な HTML を送信する

2> サーバー上でグラフを生成し、マルチパート関連として電子メールでグラフと HTML を一緒に送信します。

3>それとテキストをバージョンに組み合わせる(マルチパート代替を使用)

4> 必ず円形の円グラフを生成してください。見栄えをよくしたい場合 (特に印刷する場合) は、ピクセル形式の代わりに SVG などのベクトル形式を使用してください。

于 2013-12-10T02:54:44.170 に答える
0

ここで、この問題の何が問題なのかを判断するために、いくつかの手順に戻ります。まず、画像をフルストップで電子メールで送信します。次に、画像のソースが https であることに気付きます。より単純な HTTPS イメージでそれが可能かどうかを確認してください。次に、自分のものではない Web サーバーからのコンテンツを電子メールで含めることができるかどうかを確認する価値があります (サーバーの設定に関係している可能性があります)。

デバッグのこれら 3 つのステップがあなたの答えにつながることを願っています。

幸運を!

于 2012-06-01T11:32:31.840 に答える