Fontconfig/es

La biblioteca fontconfig está pensada para ofrecer una selección y configuracion uniforme de tipografías entre todas las aplicaciones GUI. Aunque es algo común que los entornos de escritorio ofrezcan sus propias tipografías y configuraciones, fontconfig es la librería que funciona por debajo.

Generico
fontconfig utiliza archivos XML en el direcotrio para generar su configuración interna. Por defecto analiza (¡Los usuaios no deben editar este archivo!) el cual define algunos valores por defecto seguros y normalmente contiene código para analizar también el contenido de. Además está el directorio que contiene algunos ficheros de configuración que cubren algún aspecto de fontconfig. Es una decisión personal crear enlaces simbólicos de los ficheros necesarios a. Estos ficheros se lanzan en un orden de acuerdo a su nombre. Debido a esto sus nombres comienzan con un número de dos dígitos en el que el primer dígito (las decenas) a lo que afecta el fichero (lo que se llama clase).

Específico de Gentoo
Gentoo incluye un módulo eselect (eselect fontconfig) que hace exactamente lo descrito de forma genérica, gestiona los enlaces simbólicos de ficheros en  añadiéndolos o eliminándolos del directorio. Por razones obvias el cambio de la configuración que afecta a todo el sistema requiere los permisos apropiados.

Las siguientes subsecciones explica cómo tratar con el módulo eselect de fontconfig.

Listar los ficheros disponibles
La orden list muestra los ficheros de fontconfig disponibles y marca los habilitados con un asterisco.

Habilitar un archivo
Los ficheros se pueden habilitar bien usando el nombre del archivo, bien usando el número entre corchetes. Ambas hacen lo mismo:

Deshabilitar un archivo
Los archivos se pueden deshabilitar del mismo modo:

Configuración personalizada para todo el sistema
Para crear un fichero de fontconfig</tt> personalizado que afecte a todo el sistema, se debe habilitar y crear  (esto es un fichero XML).

Configuración para una cuenta de usuario
Para crear ficheros fontconfig</tt> para una cuenta de usuario, se debe habilitar (que podría estar ya habilitado por defecto), y hacer que los usuaios finales utilicen  (que tiene el mismo formato XML que ).

Comprobar la configuración
Se debe comprobar el reemplazo de la tipografía por defecto, por ejemplo Arial, para ello se puede teclear:

Antialiasing, hinting y renderizado subpíxel
Se pueden ajustar también los aspectos de renderización. En las siguientes secciones, se ajustan las características Anti-aliasing, Hinting y Sub-pixel rendering.

Forzar el hinting
The default fontconfig</tt> behavior regarding hinting is rather undocumented, but it can be made deterministically sub-optimal by making a system wide default.


 * 1) First enable
 * 2) Edit the  file to include full hinting by default

Este extracto de habilita completamente el hinting:

Using sub-pixel rendering
It's important to determine the sub-pixel layout of the LCD matrix. It's usually RGB but the only way to be sure is to either consult display specification or use this sub-pixel layout test to determine it.

Una vez se haya determinado, habilite el archivo apropiado.

It's strongly advised that lcdfilter</tt>, if available, is used with sub-pixel rendering. It comes in different varieties but the default should be appropriate for all common fonts.

Regarding autohinter
Autohinter attempts to do automatic hinting disregarding any existing hinting information. Until recently it was the default because TrueType2 was covered by patents but now that they have expired there's very little reason to use it. From technical point of view it does better than broken or no hinting information but it will be strongly sub-optimal for fonts with good hinting information. Generally system fonts are of the second kind so autohinter should not be used.

Infinality
Infinality is a (somewhat controversial) set of patches for FreeType and accompanying fontconfig</tt> files. The goal of Infinality is to provide higher quality font rendering including emulation of other OS font rendering styles.

Habilitar Infinality
Habilite el ajuste USE 'infinality' editando bien manualmente, bien utilizando la herramienta euse.

A continuación reconstruya los programas afectados.

A menos que los mensajes que se muestran después de la reconstrucción digan lo contrario, habilite.

Configurar Infinality
Infinality can be configured in various ways including custom configurations, but easiest is to use pre-made profiles shipped in that along with eselect modules should have been installed as dependencies of the   USE flag.

Quick and reasonable config
It's also recommended to disable all fontconfig</tt> settings except for as they interfere with the rendering of infinality styles:

Certain fontconfig</tt> settings do not interfere with how the fonts are rendered, but rather determine the default fonts for font-types (such as Monospace, sans-serif, etc.). Such settings (for example the configurations) can be left enabled.

Explanation
Infinality provides FreeType environment variables that can be used to configure features introduced with its patches as well as fontconfig</tt> files to be used with these changes. fontconfig</tt> file sets are administrated on Gentoo via eselect infinality</tt> while the FreeType behaviour is set using eselect lcdfilter</tt>.

These eselect modules function as usual:


 * Listing available fontconfig</tt> file sets.


 * Listing available FreeType variable sets.


 * Both sets should match of course except when there are multiple matches possible such as shown below.

Picking fonts
Choosing the right font can be trickier than deciding on the right hinting type. For one reason or another fonts will not be perfect but it's certainly doable to make that same fonts look better than, say, Windows 7 default font configuration.

Recursos externos

 * In-depth articles from Arch Linux wiki on:
 * Font configuration
 * Infinality
 * Official fontconfig</tt> documentation for users
 * Wikipedia article on font hinting