Entrecomillado imprimible
Quoted-Printable, o Codificación de QP, es un codificación de utilizando caracteres ASCII imprimibles (alfanuméricos y de la signo igual "=
") para transmitir 8-bit datos sobre una ruta de datos de 7 bits o, en general, un medio que no es 8-bit limpio.[1] Se define como un MIMO codificación de transferencia de contenido para su uso en correo electrónico.
QP trabajos usando el signo de igual"=
"como un carácter de escape. También se limita la longitud de la línea 76, como algunos software tiene límites en la longitud de la línea.
Contenido
- 1 Introducción
- 2 Codificación de entrecomillado imprimible
- 3 Ejemplo
- 4 Notas
- 5 Esquemas de codificación similares
- 6 Acoplamientos externos
Introducción
MIME define mecanismos para el envío de otros tipos de información en el correo electrónico, incluyendo texto en idiomas que Inglés, utilizando codificaciones del carácter distinto de ASCII. Sin embargo, estas codificaciones utilizan valores de byte fuera del rango ASCII necesitan ser codificados más antes de que sean convenientes para el uso en un entorno no-8-bit-limpio. Codificación quoted-Printable es un método utilizado para el mapeo de bytes arbitrarios en secuencias de caracteres ASCII. Por lo tanto, para imprimir el citado no es un carácter codificación esquema de sí mismo, pero una capa de codificación de datos para ser utilizado en algunos orientada a byte codificación de caracteres. Codificación de QP es reversible, lo que significa los bytes originales y por lo tanto, los caracteres no-ASCII que representan idénticamente recuperables.
Quoted-Printable y Base64 son las dos básicas MIME codificaciones de transferencia de contenido, si una codificación de trivial "8 bits" no se cuenta. Si el texto a codificar no contiene muchos caracteres no-ASCII, entonces imprimibles citado resulta en una bastante legible[2] y compacto el resultado codificado. Por otro lado, si la entrada no es sobre todo ASCII, entonces cotizado imprimible se convierte en ilegible y extremadamente ineficiente. Base64 no es legible, pero tiene una sobrecarga uniforme para todos los datos y es la opción más sensata para formatos binarios o de texto en idiomas base no latinos.
Codificación de entrecomillado imprimible
Cualquier valor de byte de 8 bits puede ser codificado con 3 personajes: una "=
"seguida de dos hexadecimal () dígitos0
–9
o A
–F
) que representan el valor numérico de byte. Por ejemplo, un ASCII forma de alimentación carácter (valor decimal 12) puede ser representado por"= 0C
", y un signo de igual de ASCII (valor decimal 61) debe ser representado por"= 3D
". Todos los caracteres excepto caracteres imprimibles de ASCII o final de caracteres de línea deben ser codificados de esta manera.
Todos los caracteres ASCII imprimibles (valores decimales entre 33 y 126) pueden ser representados por ellos mismos, excepto"=
«(61 decimal).
ASCII ficha y espacio caracteres, valores decimales 9 y 32, pueden representarse por sí mismas, excepto si estos personajes aparecerían en el final de la línea codificada. En ese caso, tendrían que ser escapado como"= 09
"(ficha) o"= 20
"(espacio), o ser seguido por un"=
"(salto de línea suave) como el último carácter de la línea codificada. Esta última solución es válida porque impide que la ficha o el espacio que el último carácter de la línea codificada.
Si los datos están codificados contienen saltos de línea significativa, debe codificar como una secuencia ASCII CR LF, no como sus bytes originales, ni directamente ni a través de"=
"signos. Por el contrario, si los valores de byte 13 y 10 tienen significados distintos de final de línea (en los tipos de medios,[3] por ejemplo), entonces debe codificar como = 0D
y = 0A
respectivamente.
Líneas de datos codificados citado imprimibles no deben ser más de 76 caracteres. Para satisfacer este requisito sin alterar el texto codificado, saltos de línea suave puede añadirse como deseado. Un salto de línea suave consiste en un "=
"al final de una línea codificada y no aparece como un salto de línea en el texto decodificado. Estos saltos de línea suave también permiten codificar texto sin saltos de línea (o que contienen las líneas muy largas) para un entorno en línea se limita, como el límite de "1000 caracteres por línea" de algunos SMTP software, según lo permitido por RFC 2821.
Se utiliza una versión ligeramente modificada del citado imprimibles en encabezados de los mensajes; Ver MIMO #Encoded palabra.
Ejemplo
El ejemplo siguiente es un texto en francés, con una alta frecuencia de Letras con marcas diacríticas combinables (tales como la é).
J'interdis aux marchands de vanter trop leur marchandises. Fuente de Car ils se = p vite = C3 = A9dagogues et t'enseignent comme pero ce esencia de par de n ' est qu'= un moyen, et ainsi sur la ruta de te trompant = C3 = A0 suivre les voilà = C3 = A0 bi = ent = C3 = B4t te d = C3 = A9gradent, coche si leur musique est vulgaire ils te f = abriquent pour te la vendre une = C3 = A2me vulgaire.
Esto codifica la cadena:
J'interdis aux marchands de vanter trop leur marchandises. Car ils se font vite pédagogues et t'enseignent comme pero ce n ' est par esencia tanto moyen, et te trompant ainsi sur la ruta à suivre les voilà bientôt te dégradent, coche si leur musique est vulgaire ils te fabriquent pour te la vendre une âme vulgaire.
Notas
- ^ Históricamente, correo electrónico a menudo refirieron como no-8-bit-limpio, porque se utilizaron diversos medios de comunicación para transferir mensajes, a veces de Internet. Moderno ESMTP los servidores son de 8 bits limpio aunque en la mayoría de los casos, ver 8BITMIME.
- ^ Esto implica que se utiliza una codificación ASCII compatible. Un texto de codificación de QP de p. ej. EBCDIC no sería legible por supuesto.
- ^ Multipurpose Internet Mail Extensions (MIME) primera parte: Formato de cuerpos de mensaje de Internet. Noviembre de 1996. RFC 2045 # 6.7 Quoted-Printable Content-Transfer-Encoding, parte "(4) (saltos de línea)". Obtenido 18 de marzo de 2013.
Esquemas de codificación similares
- Codificación por ciento (codificación de datos en direcciones URL, utilizadas sobre todo para texto)
- Referencia de caracteres numéricos (texto de codificación SGML, HTML, XML)
- Rica texto formato #Character de codificación (un componente de la codificación de texto)
Acoplamientos externos
- RFC 1521 (obsoleto)
- RFC 2045 (MIME)
- Decodificador de Quoted-Printable en línea