¿Cómo puedo reparar las ligaduras de las fuentes TTF (tt, ti, fi, ff, etc.) en Firefox?

21

Con ciertas fuentes de Windows hay un problema de visualización en el que el ligamiento del kerning parece volverse y hacer que las dos letras estén en negrita. Aquí hay una captura de pantalla de un correo electrónico utilizando Helvetica en Firefox:

Como puede ver, parece haber algo relacionado con la forma en que los caracteres cruzados ( t y f ) se conectan entre sí y letras como i .

He tenido este problema durante mucho tiempo (en varios sistemas) y me he preguntado si alguien ha visto problemas similares y ha encontrado una manera de solucionarlos.

Nota: creo que esto solo afecta a Firefox. Chrome y LibreOffice están bien.

    
pregunta Oli 26.04.2012 - 09:30

5 respuestas

24

Otra solución que funcionará con todas las aplicaciones, incluida Libre Office, está dada por aldeby :

Edite o cree el archivo ~/.fonts.conf y pegue este código en él:

<match target="font" >
<edit name="embeddedbitmap" mode="assign">
<bool>false</bool>
</edit>
</match>

Asegúrate de mantener la estructura XML.

Cierre la sesión y vuelva a iniciarla, y Calibri (y posiblemente algunas otras fuentes) se verá mucho mejor (en realidad, incluso mejor que con las otras respuestas que se dan aquí, porque las feas sustituciones de mapas de bits están completamente deshabilitadas).

    
respondido por el Calimo 12.09.2012 - 12:15
8

Desactivar ligaduras (consulte La respuesta de fonts.conf de Calimo ) es la dirección incorrecta. Puede eliminar esas ligaduras "en negrita" sobredosiadas en fuentes como Calibri , pero también elimina algo de la belleza de la tipografía. Es bastante similar a reducir la fuente hasta que no se puede notar la diferencia.

Resolví esto para mi sistema eliminando la fuente Calibri, instalando Carlito , que es " compatible con métricas con Calibri" y está empaquetado con "una entrada de asignación a fontconfig (local.conf), "y actualizando mi caché de fuentes:

$ rm ~/.fonts/microsoft/CALIBRI*
$ sudo apt install fonts-crosextra-carlito
$ fc-cache

A continuación, puede verificar que Carlito sustituye a Calibri:

$ fc-match Calibri
Carlito-Regular.ttf: "Carlito" "Regular"

Antes de eliminar Calibri de Microsoft, guardé un documento de prueba en LibreOffice que usaba Calibri y tomé una captura de pantalla. Después de hacer eso, salí de LibreOffice, lo abrí de nuevo y luego cargué mi documento de prueba. El nombre de la fuente "Calibri" estaba en cursiva para indicar que se había sustituido. Tomé una captura de pantalla de esta versión sustituida y la pegué debajo del original:

EltextodearribaesunpardecapturasdepantalladeCalibride13puntos,conCalibrideMicrosoftporencimadeCarlito,juntoconfontconfig.Nohaynegrita,ningúnformato,"emparejamiento de kerning" habilitado, tal como lo muestra LibreOffice 5.0.5.1.

Carlito está bastante cerca de Calibri, las ligaduras se procesan correctamente y, en general, es mucho más bonita.

Puedes hacer lo mismo con Caladea para Cambria con fonts-crosextra-caladea y puede usar Fuentes croscore Arimo, Tinos y Cousine para Arial , Times New Roman , y Courier New con fonts-croscore . Obtenga más información en el wiki de Sustitución de las Fuentes de Calibri y Cambria de Debian.

Pero ¿qué pasa con Helvetica?

Esta pregunta se refiere a la fuente Helvetica , que es la preferida de Apple sans-serif . Microsoft prefirió Arial antes de que cambiara a Calibri. La asignación predeterminada de Linux varía según la distribución, pero generalmente es Nimbus Sans L o bien Sansing de información , por ejemplo,

$ fc-match Helvetica
n019003l.pfb: "Nimbus Sans L" "Regular"

Si ejecutas eso y obtienes Arial, esa es una buena razón para tener el problema de ligadura descrito anteriormente: Arial no es una buena fuente.

Helvetica tiene toda la cultura que la rodea y no puedo encontrar una fuente que sea totalmente compatible con métricas con Helvetica. Arial (y las fuentes compatibles métricamente con Arial, incluidos Liberation Sans y su horquilla, Arimo , tienen anchos de caracteres idénticos (lo que significa que "son" en su mayoría compatibles con la métrica; el texto se ajustará de la misma manera que con Helvetica). Entre las fuentes gratuitas, Liberation Sans y Nimbus Sans parece tener la estética más similar.

También hay IBM Plex , una nueva fuente con mucho dinero detrás [ 1 ] [ 2 ] . Plex está diseñado para reemplazar a Helvetica (también tiene sans condensados, así como fuentes serif y monoespacio) en todos los materiales de IBM, aunque no es del todo compatible con métricas a Helvetica u otras fuentes. Font Squirrel tiene una buena vista de muestras de las fuentes Plex .

    
respondido por el Adam Katz 06.02.2016 - 02:32
6

la respuesta de lgarzo funcionará solo en sitios web que tengan una clase de "noligs" en texto (la mayoría de los sitios web no).

Para deshabilitar globalmente las ligaduras en todos los sitios web, agregue la siguiente línea a su userChrome.css :

* { -moz-font-feature-settings: "liga" 0; }

La forma más sencilla de hacerlo es crear un nuevo estilo con Stylish extensión.

    
respondido por el Calimo 05.07.2012 - 09:09
4

Algunas observaciones aparecieron en mi mente al mirar la imagen:

  • Las ligaduras parecen ser anti-aliased , mientras que el resto del texto no lo es. Por lo tanto, parece más grueso que el texto normal (aunque no puedo negarlo, también se ve en negrita).
  • AFAIK la fuente Helvetica es una fuente no estándar , es decir, no viene con las instalaciones predeterminadas de Windows. ¿Lo tiene instalado o es una fuente diferente?

Creo que el problema se basa en que la fuente no admite las ligaduras / kerning correctamente.

Puede deshabilitar las ligaduras en FF con la siguiente regla de CSS:

/* disable common ligatures, usually on by default */
.noligs { -moz-font-feature-settings: "liga" 0; }

Fuente: Referencia de CSS: Extensiones de Mozilla

    
respondido por el lgarzo 26.04.2012 - 10:02
0

Además de la respuesta de Calimo, los usuarios de Archlinux pueden encontrar ayuda enlace : deshabilitar las fuentes de mapa de bits

Se sugirió crear un archivo de configuración local ~ / .config / fontconfig / conf.d / 20-no-embedded.conf, pero elegí una opción para todo el sistema

sudo touch /etc/fonts/conf.d/20-no-embedded.conf
sudo chmod 777 /etc/fonts/conf.d/20-no-embedded.conf
nano 777 /etc/fonts/conf.d/20-no-embedded.conf

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit name="embeddedbitmap" mode="assign">
      <bool>false</bool>
    </edit>
  </match>
</fontconfig>

Luego simplemente reinicia la aplicación (en mi caso thunderbird)

    
respondido por el Uzumaki D. Ichigo 02.06.2017 - 16:50

Lea otras preguntas en las etiquetas