スキップしてメイン コンテンツに移動

投稿

12月, 2025の投稿を表示しています

Outlookで自動改行させないための設定 ~もういい加減 UTF-8 / base64 でよくね?~

Outlookで勝手に「自動改行」させないための設定、正解は、[ファイル] - [オプション] - [詳細設定] の「文字設定オプション」で 「送信メッセージで優先使用するエンコード方法( E ):」を『 Unicode (UTF-8) 』にする 。 こうすることで、テキスト形式のメールは Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 として送信されるので、受信側でメールを表示すると  閲覧環境にあわせて適切に「折り返し」  送信者の意図した位置で「改行」 される。 送ったメールの「ソース」を受信側で表示するとこんな感じ。 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Content-Language: ja 44CA44KE44GB44CBDQrjgIDjgZPjgozjgpLoqq3jgpPjgafjgYTjgovjgajjgYTjgYbjgZPjgajj ga/jgIFiYXNlNjTjgqjjg7PjgrPjg7zjg4njgZXjgozjgZ/mloflrZfliJfjgpLjg4fjgrPjg7zj g4njgZfjgZ/jga7jga3jgIHjgZnjgbDjgonjgZfjgYTvvIENCg== base64エンコードすると、76文字で「改行」していることがわかるよね。 っていうかさ、違うんだよ。いつも、もやーっとするのね。 『Unicode (UTF-8)』って、Unicode という「符号化文字集合(character set)」を UTF-8 という「文字符号化方式」で「エンコード」してるんであって、「メールのエンコード方法」じゃないんだよね。 本来なら 符号化文字集合は何を使いますか? 文字符号化方式は何を使いますか? メールのエンコードはどうしますか? と3つ聞かないといけないんだけど、メールのヘッダには「符号化文字集合」を表すヘッダがないから(というか、世の中そうなんだけど)、1.と2.が「セット(UTF-8と言えばUnicode)」になってて、3.はそれに従う(8ビット...