Quoted-Printable
Quoted-Printable (QP) est un format d'encodage de données codées sur 8 bits, qui utilise exclusivement les caractères alphanumériques imprimables du code ASCII (7 bits).
En effet, les différents codages comprennent de nombreux caractères qui ne sont pas représentables en ASCII (par exemple les caractères accentués), ainsi que des caractères dits « non-imprimables ».
L'encodage Quoted-Printable permet de remédier à ce problème, en procédant de la manière suivante :
- Un octet correspondant à un caractère imprimable de l'ASCII sauf le signe égal (donc un caractère de code ASCII entre 33 et 60 ou entre 62 et 126) ou aux caractères de saut de ligne (codes ASCII 13 et 10) ou une suite de tabulations et espaces non situées en fin de ligne (de codes ASCII respectifs 9 et 32) est représenté tel quel.
- Un octet qui ne correspond pas à la définition ci-dessus (caractère non imprimable de l'ASCII, tabulation ou espaces non suivies d'un caractère imprimable avant la fin de la ligne ou signe égal) est représenté par un signe égal, suivi de son numéro, exprimé en hexadécimal.
Enfin, un signe égal suivi par un saut de ligne (donc la suite des trois caractères de codes ASCII 61, 13 et 10) peut être inséré n'importe où, afin de limiter la taille des lignes produites si nécessaire. Une limite de 76 caractères par ligne est généralement respectée, ceci afin d'assurer la compatibilité avec certains logiciels de messagerie limités dans la longueur de ligne qu'ils peuvent gérer.
Par exemple, le caractère « é
» est encodé en latin-9 par un octet valant 233, qui s'écrit « E9
» en hexadécimal. Le caractère « é
» sera donc représenté par « =E9
» sous le format Quoted-Printable. Si l’on utilise plutôt l’encodage UTF-8, le caractère « é
» est encodé par deux octets de valeurs hexadécimales C3
et A9
, que le format Quoted-Printable représente par « =C3=A9
».
Autre exemple, pour une phrase, encodée en latin-9 :
Ce texte, qui contient le caractère =, va être encodé en Quoted-Printable
- donne, par exemple :
Ce texte, qui contient le caract=E8re =3D, va =EAtre encod=E9 en Quoted-Prin=
table
Le format Quoted-Printable permet de préserver l'essentiel de la lisibilité du message, contrairement au codage Base64. Ces deux codages sont notamment utilisés dans la partie MIME des courriels.