文字コード統一

2008/09/26 未分類 spok
Qdmailは、あらゆる環境で文字化けゼロを目指すメールライブラリですが、その様々な状況に対応するために、多くの場所で文字コードの自動検出を行っています。
ところが、この文字コード自動検出は、完璧にすることが難しいため、かえって問題を起こすことがあります。
例えば、UTF-8に文字コードを統一しているはずなのに、自動検出でSJISと認定されてしまうようなことです。
1.1.3b以降では、この自動検出機能を停止し、すべて統一文字コードでオペレーションを行うという宣言を用意しました。

例)すべてUTF-8で統一している場合。
$mail -> unitedCharset( 'UTF-8' );
これで、すべての自動検出ルーチンで、強制的にUTF-8と認識させることができます。

文字コードについて

2008/04/17 文字コード spok
日本語メールでもっとも文字化けが少ない文字コードは、
キャラクタセット:ISO-2022-JP
エンコード   :7bit
です。

Qdmailは、Quicklyにメールを作成するために、ユーザーから特に指示がない限り、iso-2022-jp,7bitに変換して送ります。

ただし、Qdmailは、Dteiledに指定を変えることができます。
例えば、以下のような組み合わせも、日本語メールでよく使われます。
キャラクタセットエンコードメリットデメリット
UTF-8Base64多言語対応。丸数字など多彩な文字を送付可能base64に対応していないWEBメールなどでは文字化けすることもある。base64は、通常エンコードに比べて、約1.3倍に容量が増える
Shift-JIS7bit機種依存文字を送付可能。日本語以外対応できない。文字化けがでることもある
UTF-8Qauted-Printableんーどうなんでしょ。ヨーロッパではQPエンコードが多いそうだ対応していないメーラーも多い
他にも様々な組み合わせが考えられます。
今後はUTF-8のメールが増えると私は予想しています。
ここでは、文字コードに関係する様々なQdmailのオプションの設定方法をみてみましょう。