Quoted-printable encoder

Handy when writing a MIME message by hand or testing an email template that contains Arabic.

Loading the tool…

Processing and privacy: The result is calculated inside your browser and your data is not sent to any server.

How to use it

  1. Enter text.
  2. The result appears straight away and updates as you edit.
  3. Copy the result, or copy a link that keeps the same values to share it.

How it is calculated

The text becomes UTF-8; every byte outside printable 33 to 126, or equal to =, is written =XX in hex. A space at the end of a line is encoded, and lines longer than 76 characters are split with a trailing = soft break.

Example

Result: Quoted-printable: =D9=85=D8=B1=D8=AD=D8=A8=D8=A7 =D8=A8=D9=83=D9=85; Lines: 1.

مرحبا بكم
=D9=85=D8=B1=D8=AD=D8=A8=D8=A7 =D8=A8=D9=83=D9=85

Limits and caveats

  • Lines are shown with LF; mail software turns them into CRLF when sending.
  • Text is always encoded as UTF-8, so declare charset=utf-8 in the message header.

Questions about this tool

Why does each Arabic letter become six characters like =D9=85?

An Arabic letter takes 2 bytes in UTF-8 and each byte is written =XX, which is why Base64 suits long Arabic emails better.

What does = at the end of a line mean?

It is a soft line break: the line was split only for length, and the break is removed when decoding.

Why is = itself encoded?

It starts every =XX code, so a literal = is written =3D to avoid confusion.