Saltar al contenido

Recortar una fuente a los glifos usados

Font Subsetter

Reduce una fuente TrueType a los glifos que tu texto usa de verdad y puede envolver el resultado como WOFF, que es la diferencia entre una fuente web de megabytes y una de kilobytes.

Recorta una fuente TrueType a los caracteres que una página usa de verdad y reconstruye un archivo válido con lo que queda. Para el coreano es la diferencia entre una descarga de varios megabytes y un par de cientos de kilobytes, porque una fuente hangul completa lleva 11 172 sílabas y una página usa unos cientos. Puede emitir WOFF junto al TTF, y vuelve a analizar su propia salida antes de ofrecerla.

🔒 Se ejecuta por completo en tu navegadorfontsubsetperformancewebfont

Suelta un archivo TTF

Solo contornos TrueType (.ttf, o un .otf con tabla glyf). Todo ocurre en esta pestaña.

Cómo recorta

  • · Conserva los glifos de los caracteres que pediste y los glifos componentes a los que hacen referencia (el cierre de los glifos compuestos), y luego reescribe glyf·loca·hmtx·hhea·maxp·cmap (formatos 4 y 12) y post. Las sumas de comprobación de las tablas y head.checkSumAdjustment se vuelven a calcular.
  • · La salida se vuelve a leer con el mismo analizador y solo se ofrece cuando pasa. Los programas de hinting (fpgm·prep·cvt) se dejan como están.
  • · Un carácter que dejes fuera se dibuja como una caja vacía. Pega el texto real de la página o, para el coreano, activa el juego KS X 1001 de 2350 sílabas.

Para mirar la fuente primero, el inspector de fuentes; para cambiar solo el formato, el conversor de formatos de fuente.

Cómo se usa

  1. Suelta un archivo TrueType

    Un `.ttf`, o un `.otf` que tenga contornos TrueType dentro. El panel dice de qué tipo es el archivo en cuanto se abre, porque una fuente CFF no se puede recortar aquí.

  2. Pega el texto que usa la página

    Copia el texto real: títulos, etiquetas, texto de botones, mensajes de error. Los duplicados se colapsan automáticamente. Cualquier cosa que dejes fuera se dibujará como un cuadrado vacío en la página final, así que peca de incluir de más.

  3. Decide entre tu texto y el conjunto estándar

    Esta es la decisión real. Pegar solo tu texto da el archivo más pequeño y se rompe en cuanto alguien escribe un nombre en un campo. Activar el conjunto KS X 1001 de 2350 sílabas da un archivo más grande que sobrevive a entrada coreana arbitraria. El texto estático de marketing quiere lo primero; cualquier cosa con contenido de usuario quiere lo segundo.

  4. Constrúyelo y lee los números

    Glifos antes y después, bytes antes y después, y el porcentaje ahorrado. Si algún carácter que pediste falta en la fuente, se lista en lugar de descartarse en silencio.

  5. Toma el archivo y el @font-face de al lado

    La declaración se genera con el peso y la bandera de cursiva leídos de las propias tablas OS/2 y post de la fuente, así que coincide con el archivo en lugar de ser una suposición.

Preguntas frecuentes

Rechaza mi OTF. ¿Por qué?

Porque ese archivo tiene contornos CFF (PostScript), y recortar esos significa reescribir charstrings en otro formato de contorno: un programa aparte de cortar registros `glyf` de TrueType, que es lo que hace esto. La página lo dice en lugar de producir un archivo roto. Usa pyftsubset de fonttools en un equipo de escritorio. Inspeccionar la fuente sigue funcionando.

¿Sobrevivirán el interletraje y las ligaduras?

No. `GPOS` y `GSUB` se descartan, y la página los lista cuando lo hace. Para texto latino eso significa que no hay pares de interletraje ni ligaduras en el recorte; para el coreano rara vez importa, porque la composición hangul está en los propios glifos. Si el interletraje es esencial para ti, recorta con fonttools en su lugar, que puede reescribir esas tablas.

¿Qué pasa con una fuente variable?

Sale como la instancia por defecto: las tablas de variación no se conservan. Eso suele estar bien para un recorte, porque un recorte es un artefacto para publicar y no un archivo de trabajo, pero si dependías de un eje, recorta la instancia estática que realmente uses.

¿Puede hacer WOFF2?

No. WOFF2 necesita Brotli y el navegador no se lo da a una página. WOFF está disponible y se produce con `CompressionStream("deflate")`: normalmente quita otro 40–50 % al TTF. WOFF2 quitaría aproximadamente otro 20–30 % más allá de eso, que necesita una herramienta de escritorio.

Algunos caracteres salieron como cuadrados vacíos.

No estaban en la lista de caracteres cuando se construyó el recorte. Ese es todo el trato del recorte: el archivo solo contiene lo que pediste. Reconstruye con los caracteres que faltan añadidos, o activa el conjunto KS X 1001 para que la entrada coreana arbitraria tenga dónde caer.

Puede recibir de

Después

Estas aceptan lo que produce esta herramienta, así que el resultado puede pasar directamente.