0

私の仕事は、ほとんどの受信者が HTML として読む電子メールを送信することです。HTML を読むことができない、または読まないことを選択した人のために、MIME テキスト/プレーンの代替が含まれます。

HTML は英語で、Latin-1 Supplement と General Punctuation の文字が含まれているため、US-ASCII または ISO-8859-1 ではそれらのすべてが保持されません。エンコードする前に文字を置き換えることで軽減できます。

私の質問は、テキスト/プレーン部分にどの文字セットを使用するかです? US-ASCII、ISO-8859-1 または UTF-8。関連する質問として、現在も使用されているテキスト ベースの電子メール クライアントはどれか、それらはこれらの文字セットをサポートしていますか?

4

1 に答える 1

1

テキスト ベースの電子メール クライアントがどの程度文字セットを読み取れるかについては答えがありませんでした。そのため、一般的な電子メールの送信者が代替テキストをどのようにエンコードしているかを調べました。

GMail と Outlook (2007) はどちらも、コンテンツを表すことができる最小の文字セットを選択します。言い換えれば、テキストが単純な場合は US-ASCII を使用し、ヨーロッパ文字が存在する場合は ISO-8859-* を使用し、文字のスパンが大きい場合は UTF-8 を使用します。

私のテストの 1 つで、Outlook に少しバグがありました。一般的な句読点をいくつか入れました。Outlook は WINDOWS-1252 を使用してエンコードしましたが、ISO-8859-1 としてタグ付けしました。

疑似コードでの質問に対する答えは

for charset in us-ascii, iso-8859-1, utf-8
    if encode(text, charset)
        break

文字セットのリストは、期待している入力に適しています。

于 2013-03-12T13:33:10.853 に答える