WOFF

¿Qué es un archivo WOFF?

Una fuente empaquetada para la web. Sustituida por WOFF2, pero aún necesaria para navegadores antiguos.

Qué es WOFF

WOFF es un formato binario, que solo significa algo para un programa que lo conoce. Se usa para la web.

La extensión es .woff y el nombre completo, Web Open Font Format. Ambos importan menos que lo que el archivo puede contener, y de eso trata el resto de esta página.

De dónde viene WOFF

W3C lo publicó en 2009. La especificación es WOFF 1.0.

La edad interesa por un motivo práctico: cuanto más antiguo es un formato, más programas han tenido tiempo de aprenderlo.

La especificación es pública

Está publicada entera, así que cualquiera puede implementarla leyendo el documento en vez de a base de inspeccionar archivos. Por eso aparece en tantos programas, y por eso los archivos escritos hace veinte años siguen abriéndose hoy. Publicada no quiere decir libre de regalías: cuando un formato envuelve un códec, la licencia de las patentes es un asunto aparte que la norma no resuelve.

Es un formato heredado

Sigue abriéndose en todas partes y los programas antiguos aún lo escriben, pero ya no se construye nada nuevo a su alrededor. Convierte lo que quieras conservar y no lo elijas para algo que empieza hoy.

No se tira nada

WOFF guarda su contenido exactamente. Volver a guardarlo no cambia nada, así que puedes abrirlo, editarlo y guardarlo tantas veces como quieras sin acumular daño; eso es lo que lo convierte en un formato de trabajo y no de entrega.

Qué abre WOFF

FontForge y fonttools lo leen, y también la mayoría de programas del mismo tipo.

Cuando un archivo no se abre, el formato rara vez es el problema: lo más habitual es que el programa sea anterior al formato. Convertir a algo más antiguo es la salida fiable, y para eso está el resto de este sitio.

Abrirlo en el navegador

Cualquier navegador actual lo lee.

Eso lo convierte en algo que puedes poner en una página o adjuntar a un mensaje sin preguntarte qué tiene instalado el otro lado.

Es un formato de entrega

WOFF está pensado para entregarse, no para trabajar dentro. Editar uno es posible y rara vez agradable; lo sensato es cambiar el original y volver a exportar.

El formato que convirtió las tipografías web en algo normal

Antes de 2009, una página web podía elegir entre el puñado de fuentes instaladas en el equipo de quien la visitaba y un formato exclusivo de Microsoft que nadie más implementó. WOFF acabó con eso: una especificación abierta del W3C que envuelve una fuente TrueType u OpenType corriente añadiéndole compresión y un bloque de metadatos y, sobre todo, un formato que todos los fabricantes de navegadores aceptaron admitir.

Lo que cambió no fue tanto técnico como político. Las fundiciones tipográficas se resistían a la incrustación en la web porque significaba dejar el archivo de la fuente en un servidor público. WOFF tampoco lo impedía, pero era un formato pensado para la web y con un sitio donde anotar la información de licencia, y bastó para que el sector empezara a vender licencias web. Casi todas las tipografías que hoy hay en la web están ahí gracias a aquel acuerdo.

Es un envoltorio, no una fuente distinta

Dentro de un WOFF están las mismas tablas de fuente que había dentro del TTF o del OTF del que salió: los mismos contornos, el mismo kerning, las mismas prestaciones de OpenType. El envoltorio añade compresión zlib y una pequeña sección de metadatos, y nada más.

Por eso convertir una fuente a WOFF y de vuelta no pierde nada, y por eso un WOFF nunca tiene más ni menos calidad que su origen. También por eso ningún sistema operativo instala uno: no hay nada dentro que la fuente original no tuviera ya, y los sistemas de escritorio quieren el original.

Qué cambió WOFF2

La compresión, y solo la compresión. WOFF2 sustituyó zlib por Brotli y añadió un paso previo que reordena las tablas de la fuente para que comprima mejor, y entre las dos cosas se llevan alrededor de otro treinta por ciento del tamaño.

No difiere nada más. La misma fuente, las mismas prestaciones, la misma representación en pantalla y una descarga más pequeña. De ahí que la transición fuera rápida y que no haya ninguna razón de diseño para preferir el formato antiguo.

¿Hace falta seguir sirviendo los dos?

No. WOFF2 lo admite desde hace años cualquier navegador que siga recibiendo actualizaciones, incluidos Safari y todos los móviles. Servir WOFF como respaldo significa publicar una segunda copia de cada tipografía para un público que en la práctica se ha quedado vacío.

La excepción, dicha con precisión para que no se aplique de más: un entorno anclado en un navegador anterior a 2016 más o menos. Terminales de consulta, algunos sistemas embebidos, instalaciones corporativas congeladas por política. Si ese es de verdad tu público, sirve los dos. Si no estás seguro de que lo sea, estás manteniendo archivos para nadie, y ese respaldo cuesta una petición cada vez que alguien lo toma.

Los metadatos que nadie llegó a usar

WOFF incluyó un bloque XML opcional para la fundición, la licencia, el distribuidor y una descripción: el mecanismo por el que una fuente encontrada en un servidor podía declarar sus propias condiciones.

En la práctica casi nada lo escribe y nada lo lee. Los servicios de fuentes lo eliminan, los generadores lo omiten y los navegadores lo ignoran. Es una idea razonable que perdió contra la misma realidad que el bloqueo por dominio de Embedded OpenType: las licencias resultaron ser un problema de contrato y no de formato de archivo, y a los formatos que intentaron resolverlo dentro de los bytes se les dio la vuelta sin ruido.

Qué hacer con el WOFF que tienes

Si va a una página web, conviértelo a WOFF2 y sirve ese. La conversión no pierde nada en ninguna de las dos direcciones, porque los dos son envoltorios sobre las mismas tablas, y el resultado es un tercio más pequeño sin ningún trabajo.

Si lo que quieres es la tipografía instalada en tu equipo, conviértelo a TTF o a OTF e instala eso, porque un WOFF no se instala. Y si el archivo salió de la web de otra persona, la cuestión de la licencia va antes que las dos anteriores: una fuente recuperada de una página no es una fuente que puedas usar, y las licencias web suelen estar además atadas a un dominio concreto y a un volumen de tráfico.

El envoltorio cambia y los contornos no se tocan

Aquí conviene ser exacto sobre lo que hace la herramienta, porque en tipografía la palabra convertir se usa para dos cosas muy distintas. Lo que ocurre es un reempaquetado: se cambia el envoltorio del archivo y se vuelve a guardar. Los contornos no se recalculan, no se redondean y no se aproximan nunca, así que ninguna de estas conversiones puede empeorar el dibujo de las letras.

De ahí sale un límite que sorprende a quien lo pide. El tipo real de curva se detecta por la presencia de las tablas CFF o CFF2, y si pides un TTF a partir de una fuente con curvas PostScript la herramienta se niega con un error en lugar de entregarte un archivo mal etiquetado. No existe aquí una conversión de curvas entre TTF y OTF, porque eso es un algoritmo y no un envoltorio, y EOT no está admitido.

Estas conversiones sí envían el archivo

El reempaquetado lo hace fontTools, que no corre en un navegador, así que las conversiones de fuentes son de las pocas de esta web en las que el archivo se sube. Va a api.quinvert.com, se guarda en una carpeta temporal recién creada con un nombre neutro, de modo que el nombre de tu archivo no llega a tocar el disco, y la carpeta se borra al terminar, también en cada camino de error. El contenedor que ejecuta fontTools no tiene salida a internet.

El límite en ese camino es de 25 MB por archivo, frente a los 100 MB de las conversiones que ocurren en tu navegador, y hay un tope de 100 conversiones de servidor al día que se reinicia a medianoche UTC. En tipografía esos 25 MB casi nunca son un obstáculo: una fuente de texto completa rara vez pasa de unos cientos de kilobytes, y solo las variables con muchos ejes o las de CJK se acercan a la cifra.

Los datos, en un solo sitio

Identificadores y procedencia del formato WOFF.
Extensión.woff
Tipo de mediofont/woff
Publicado porW3C
Primera publicación2009
EspecificaciónWOFF 1.0

Preguntas frecuentes sobre los archivos WOFF

¿Qué diferencia hay entre WOFF y WOFF2?

Solo la compresión. WOFF usa zlib; WOFF2 usa Brotli con un paso previo pensado para datos tipográficos y sale alrededor de un 30 por ciento más pequeño. La misma fuente, las mismas prestaciones y el mismo dibujo: solo una descarga menor.

¿Sigue haciendo falta un respaldo en WOFF?

En casi todos los casos, no. Cualquier navegador que siga recibiendo actualizaciones lee WOFF2, así que servir también WOFF significa publicar una segunda copia de cada tipografía para prácticamente nadie. La excepción es un entorno congelado a propósito en un navegador anterior a 2016.

¿Puedo instalar una fuente WOFF en mi equipo?

No: los sistemas operativos no lo aceptan. Es un envoltorio para entregar una fuente por la web. Conviértelo a TTF o a OTF e instala eso; no se pierde nada, porque el envoltorio contiene exactamente esas tablas.

¿Convertir WOFF a WOFF2 pierde calidad?

No. Los dos son envoltorios sobre las mismas tablas, así que la conversión no pierde nada en ninguna dirección. Los contornos, el kerning y las prestaciones de OpenType son idénticos: lo único que cambia es la compresión.

¿Por qué el conversor rechaza convertir mi fuente a TTF?

Porque lleva curvas PostScript, detectadas por la presencia de una tabla CFF o CFF2. La herramienta cambia el envoltorio y nunca redibuja los contornos, así que prefiere fallar con un mensaje antes que entregarte un archivo etiquetado como algo que no es.

¿Puedo usar un WOFF que he encontrado en una web?

Técnicamente funcionará; legalmente casi nunca. Las licencias de fuentes web suelen estar atadas a un dominio concreto y a un volumen de tráfico, y descargar el archivo no transfiere nada. Las publicadas bajo la SIL Open Font License son la excepción y pueden alojarse libremente.