2013-03-05 58 views
0

我的任務是發送大多數收件人將閱讀爲HTML的電子郵件。一個MIME文本/純文本替代將包括那些不能閱讀HTML或不選擇的人。哪個字符集用於multipart/alternative text/plain?

的HTML是英語和拉丁語1補充和通用標點符號字符,所以US-ASCII或ISO-8859-1不會保留所有的人。我可以通過在編碼之前替換字符來緩解。

我的問題是哪個字符集用於文本/平原部分? US-ASCII,ISO-8859-1或UTF-8。相關問題是基於文本的電子郵件客戶端仍在使用什麼,它們是否支持這些字符集?

回答

1

我還沒有收到有關基於電子郵件的客戶端文本如何讀取字符集的答案,所以我必須看看發件人的電子郵件是如何共同編碼它們的替代文本。

GMail和Outlook(2007)都選擇可代表內容的最小字符集。換句話說,如果文本很簡單,他們使用US-ASCII,如果歐洲字符存在,則使用ISO-8859- *,如果使用大量字符,則使用UTF-8。

展望是我的一個測試有點buggy。我加入了一些標點符號。 Outlook使用WINDOWS-1252編碼它,但將其標記爲ISO-8859-1。

答案的僞代碼的問題是

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

字符集的列表是適合我期待的輸入。

相關問題