Декодер Quoted-Printable

Кодирование и декодирование формата Quoted-Printable, используемого в почтовых системах (MIME). Обработка мягких переносов строк и не-ASCII символов. Вся обработка выполняется в вашем браузере.

Кодирование и декодирование Совместимость с MIME Обработка на стороне клиента
Результат появится здесь...

Как использовать декодер Quoted-Printable

1

Выберите режим

Выберите режим «Декодировать» (QP в текст) или «Кодировать» (текст в QP).

2

Введите данные

Вставьте текст Quoted-Printable или обычный текст в зависимости от режима.

3

Преобразование и копирование

Нажмите «Преобразовать» и скопируйте результат в буфер обмена.

Что такое Quoted-Printable?

Quoted-Printable — это метод кодирования, используемый в MIME (Multipurpose Internet Mail Extensions) для представления не-ASCII символов в почтовых сообщениях. Он кодирует байты, не являющиеся печатаемыми ASCII-символами (значения вне 33-126, кроме пробела), как =XX, где XX — шестнадцатеричное значение байта.

Как это работает

Экранирующее кодирование

Не-ASCII и специальные символы кодируются как =XX

Мягкие переносы строк

Строки переносятся на 76-м символе с использованием = в конце строки

Безопасные символы

Печатаемые ASCII-символы (33-126) и табуляция/пробелы передаются без изменений

Часто задаваемые вопросы

Где используется Quoted-Printable?

Quoted-Printable в основном используется в почтовых системах (MIME) для кодирования тела сообщений. Это метод Content-Transfer-Encoding для текстового содержимого email, содержащего не-ASCII символы.

Что такое мягкий перенос строки?

Мягкий перенос строки представляется символом = в конце строки, за которым следует CRLF. Он означает, что строка была перенесена для передачи, но должна быть объединена при декодировании. Это обеспечивает длину строк не более 76 символов.

Чем он отличается от Base64?

Quoted-Printable оставляет большинство ASCII-текста читаемым и кодирует только не-ASCII или специальные символы. Base64 кодирует всё и создаёт вывод примерно на 33% больше. QP предпочтителен для содержимого, состоящего преимущественно из ASCII, а Base64 — для двоичных данных.

Как кодируются не-ASCII символы в Quoted-Printable?

Каждый байт последовательности UTF-8 превращается в =XX: например, é (e с акутом) — это два байта, записываемые как =C3=A9, а китайское слово — двенадцать групп =XX. ASCII-буквы, цифры и большинство знаков препинания передаются буквально, поэтому текст на европейских языках остаётся в основном читаемым — в этом и заключалась цель кодирования.

Что такое ограничение длины строки в 76 символов и мягкий перенос строки?

Раздел 6.7 RFC 2045 требует, чтобы закодированные строки были не длиннее 76 символов. Когда строку нужно разбить, знак = в её конце обозначает мягкий перенос — декодер удаляет его и склеивает строки без пробела или перевода строки. Жёсткий перенос в исходном тексте сохраняется как =0D=0A, поэтому эти два случая однозначно различаются.

Как кодируется сам символ =?

Как =3D — экранирующий символ должен экранировать сам себя, точно так же, как обратная косая черта в строковых литералах. Позиция устраняет неоднозначность завершающего случая: =3D — это данные, а одиночный = в конце строки — транспортный маркер (мягкий перенос). Именно поэтому тело в формате quoted-printable, где каждый = начинает корректную шестнадцатеричную пару, декодируется чисто, а всё остальное сигнализирует о повреждении.

Где Quoted-Printable встречается в заголовках письма?

В encoded-words согласно RFC 2047: заголовок Subject вида =?UTF-8?Q?Hello=20world?=, где Q означает quoted-printable внутри оболочки charset/encoding. Тело письма text/plain обычно напрямую объявляет Content-Transfer-Encoding: quoted-printable. Этот инструмент декодирует как исходную форму тела, так и форму Q-фрагмента.

Как распознать текст в quoted-printable?

Характерные признаки: последовательности вроде =C3=A9 или =20, разбросанные по в остальном читаемому тексту, строки, оканчивающиеся одиночным =, и длины строк, группирующиеся около 76 символов. Тело, состоящее на 90% из печатаемых ASCII-символов с редкими =XX-последовательностями — вместо однородного четырёхсимвольного алфавита Base64 — почти наверняка является quoted-printable.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}