Читать исходник письма в quoted-printable

В исходном тексте письма видно Caf=C3=A9 au lait. Декодирование quoted-printable возвращает последовательности =XX в отправленное café.

Инструменты, используемые в этом руководстве

Задача

Почта эпохи SMTP передаётся 7-битным ASCII. Quoted-printable оставляет печатаемый ASCII читаемым, а всё остальное экранирует парами байтов =XX; «=» в конце строки — мягкий перенос. Любая не-ASCII тема или имя с акцентами появляется в закодированном виде.

Декодирование и кодирование

Вставьте сырое тело письма для декодирования: мягкие переносы склеиваются, а байты =XX становятся текстом UTF-8. Кодирование делает обратное: UTF-8 на входе, quoted-printable на выходе с мягким переносом по 76 колонкам.

Пример

Café au lait кодируется как Caf=C3=A9 au lait — два байта UTF-8 буквы é становятся отдельными последовательностями. Кодирование 100 букв x показывает перенос: 76 символов, «=», остаток на следующей строке. Битое «=4» завершается ошибкой без догадок.

Охват

До 200 000 символов в обе стороны; конечные пробелы кодируются, чтобы пережить транспорт. Encoded-words в заголовках вида =?UTF-8?Q?…?= — другой слой: инструмент обрабатывает только транспортное кодирование тела письма.