Migliorare l'aspetto dei font: differenze tra le versioni

accorpamento dell'altra guida eliminata
m (rimosso riferimento a guida eliminata)
(accorpamento dell'altra guida eliminata)
Riga 1: Riga 1:
{{Versioni compatibili}}
{{Versioni compatibili}}


== Introduzione ==
= Introduzione =
Molti nuovi utenti di Debian, subito dopo l'installazione, si lamentano del brutto aspetto che hanno i caratteri (mentre alcuni invece piacciono, de gustibus). Il problema risiede principalmente nella configurazione predefinita di Debian, che non imposta il [http://en.wikipedia.org/wiki/Font_rasterization rendering dei caratteri] adeguatamente.
Molti nuovi utenti di Debian, subito dopo l'installazione, si lamentano del brutto aspetto che hanno i caratteri (mentre alcuni invece piacciono, de gustibus). Il problema risiede principalmente nella configurazione predefinita di Debian, che non imposta il [http://en.wikipedia.org/wiki/Font_rasterization rendering dei caratteri] adeguatamente.


Ci sono vari modi e tanti parametri per migliorare il rendering, di seguito si farà una carrellata quanto più esplicativa possibile (spero). Ulteriori approfondimenti sull'argomento si possono leggere nell'ultimo capitolo "[[Migliorare l'aspetto dei font#Riferimenti |Riferimenti]]".
Ci sono vari modi e tanti parametri per migliorare il rendering, di seguito si farà una carrellata quanto più esplicativa possibile (spero). Ulteriori approfondimenti sull'argomento si possono leggere nell'ultimo capitolo "[[Migliorare l'aspetto dei font#Riferimenti|Riferimenti]]".<br>
A chi invece interessa solo il risultato finale può leggere direttamente la "[[Migliorare l'aspetto dei font#Guida rapida|Guida rapida]]".


Prima di cominciare bisognerebbe controllare che siano installati i pacchetti responsabili della gestione dei font, e cioè <code>fontconfig</code>, <code>libfreetype6</code>, <code>libcairo2</code> e <code>libxft2</code>, ma è un controllo superfluo, dato che questi pacchetti sono dipendenze di tutti i principali ambienti desktop (senza un interfaccia grafica ci sarebbero solo [http://en.wikipedia.org/wiki/Computer_font#Bitmap_fonts caratteri bitmap], e in tal caso questa guida potrebbe essere utile solo per il paragrafo che riguarda la [[Migliorare l'aspetto dei font#Console Linux |console Linux]]).
Prima di cominciare bisognerebbe controllare che siano installati i pacchetti responsabili della gestione dei font, e cioè <code>fontconfig</code>, <code>libfreetype6</code>, <code>libcairo2</code> e <code>libxft2</code>, ma è un controllo superfluo, dato che questi pacchetti sono dipendenze di tutti i principali ambienti desktop (senza un interfaccia grafica ci sarebbero solo [http://en.wikipedia.org/wiki/Computer_font#Bitmap_fonts caratteri bitmap], e in tal caso questa guida potrebbe essere utile solo per il paragrafo che riguarda la [[Migliorare l'aspetto dei font#Console Linux |console Linux]]).
Riga 10: Riga 11:
Volendo fare una similitudine, [http://www.freetype.org/ FreeType] è come la "mano" che disegna i caratteri sullo schermo, mentre [http://cairographics.org/ Cairo] è la "matita" usata da FreeType per disegnare. [http://www.freedesktop.org/wiki/Software/fontconfig/ Fontconfig] gestisce, configura e personalizza i caratteri, e infine [http://www.freedesktop.org/wiki/Software/Xft/ Xft] è un componente del server grafico X che usa e "coordina" FreeType e Fontconfig (in quanto questi ultimi sono pensati per essere universali e non dipendenti da X).
Volendo fare una similitudine, [http://www.freetype.org/ FreeType] è come la "mano" che disegna i caratteri sullo schermo, mentre [http://cairographics.org/ Cairo] è la "matita" usata da FreeType per disegnare. [http://www.freedesktop.org/wiki/Software/fontconfig/ Fontconfig] gestisce, configura e personalizza i caratteri, e infine [http://www.freedesktop.org/wiki/Software/Xft/ Xft] è un componente del server grafico X che usa e "coordina" FreeType e Fontconfig (in quanto questi ultimi sono pensati per essere universali e non dipendenti da X).


== Fontconfig ==
= Fontconfig =
Tra le varie funzioni di ''Fontconfig'' c'è anche quella di indicare a ''FreeType'' come disegnare i caratteri. Ad esempio può essere configurato per usare l'antialiasing su tutti i font tranne che su quelli di lingua orientale, oppure può disabilitare l'hinting su un determinato font quando questo è di dimensioni inferiori a 8 punti.
Tra le varie funzioni di ''Fontconfig'' c'è anche quella di indicare a ''FreeType'' come disegnare i caratteri. Ad esempio può essere configurato per usare l'antialiasing su tutti i font tranne che su quelli di lingua orientale, oppure può disabilitare l'hinting su un determinato font quando questo è di dimensioni inferiori a 8 punti.


Riga 164: Riga 165:
Alla fine del tuning potrete testare la vostra configurazione corrente [http://www.infinality.net/files/font.html in questa pagina].
Alla fine del tuning potrete testare la vostra configurazione corrente [http://www.infinality.net/files/font.html in questa pagina].


=== Ubuntu ===
== Ubuntu ==
Molti utenti che passano da Ubuntu a Debian o che li usano entrambi si lamentano dell'aspetto dei caratteri "out of the box", nettamente migliore su Ubuntu.
Molti utenti che passano da Ubuntu a Debian o che li usano entrambi si lamentano dell'aspetto dei caratteri "out of the box", nettamente migliore su Ubuntu.


Riga 176: Riga 177:
<pre># dpkg -i fonts-ubuntu_0.80-6.2_all.deb</pre>
<pre># dpkg -i fonts-ubuntu_0.80-6.2_all.deb</pre>


=== Jessie ===
== Jessie ==
A partire dalla [http://cgit.freedesktop.org/fontconfig/commit/?id&#61;8c255fb185d5651b57380b0a9443001e8051b29d versione 2.10] di ''Fontconfig'' (presente da Debian 8 "Jessie" in poi) cambierà la posizione di alcuni file di configurazione, anche se sarà mantenuta la compatibilità con i vecchi percorsi ancora per qualche versione. Ecco una tabella dei cambiamenti:
A partire dalla [http://cgit.freedesktop.org/fontconfig/commit/?id&#61;8c255fb185d5651b57380b0a9443001e8051b29d versione 2.10] di ''Fontconfig'' (presente da Debian 8 "Jessie" in poi) cambierà la posizione di alcuni file di configurazione, anche se sarà mantenuta la compatibilità con i vecchi percorsi ancora per qualche versione. Ecco una tabella dei cambiamenti:


Riga 195: Riga 196:
|}
|}


== Xft ==
= Xft =
"X FreeType interface library" come dice il nome stesso, è una libreria che serve ad interfacciare il rasterizzatore FreeType con X (precisamente con [http://en.wikipedia.org/wiki/X_Rendering_Extension XRender]).<br>
"X FreeType interface library" come dice il nome stesso, è una libreria che serve ad interfacciare il rasterizzatore FreeType con X (precisamente con [http://en.wikipedia.org/wiki/X_Rendering_Extension XRender]).<br>
Generalmente sono gli ambienti desktop ad impostare i parametri Xft a seconda delle scelte dell'utente (per verificare ciò si può usare il comando <code>xrdb -query | grep Xft</code> prima e dopo aver cambiato delle opzioni nell'ambiente desktop). Se non dovessero essere impostare questi valori, Xft comunque dovrebbe assumere le impostazioni di Fontconfig, quindi non ci dovrebbe essere alcuna necessità di intervenire direttamente su Xft, tranne se qualche applicazione mostrasse un rendering diverso (come ad esempio [[Openbox]]).<br>
Generalmente sono gli ambienti desktop ad impostare i parametri Xft a seconda delle scelte dell'utente (per verificare ciò si può usare il comando <code>xrdb -query | grep Xft</code> prima e dopo aver cambiato delle opzioni nell'ambiente desktop). Se non dovessero essere impostare questi valori, Xft comunque dovrebbe assumere le impostazioni di Fontconfig, quindi non ci dovrebbe essere alcuna necessità di intervenire direttamente su Xft, tranne se qualche applicazione mostrasse un rendering diverso (come ad esempio [[Openbox]]).<br>
Riga 226: Riga 227:
{{Box|Nota|Se usate [[Migliorare l'aspetto dei font#Infinality|Infinality]] lo script di avvio <code>/etc/X11/Xsession.d/99infinality-settings</code> già si occupa di impostare questi parametri, quindi non è necessario specificarli altrove; è invece possibile modificare lo script se si vuole cambiarli.}}
{{Box|Nota|Se usate [[Migliorare l'aspetto dei font#Infinality|Infinality]] lo script di avvio <code>/etc/X11/Xsession.d/99infinality-settings</code> già si occupa di impostare questi parametri, quindi non è necessario specificarli altrove; è invece possibile modificare lo script se si vuole cambiarli.}}


=== Iceweasel ===
== Iceweasel ==
Stranamente Iceweasel usa ''XRender'' invece di qualcosa di più recente come ''OpenGL'' per disegnare i caratteri, e a volte questo potrebbe causare vari problemi di visualizzazione, come tearing e caratteri che sembrano in grassetto.<br>
Stranamente Iceweasel usa ''XRender'' invece di qualcosa di più recente come ''OpenGL'' per disegnare i caratteri, e a volte questo potrebbe causare vari problemi di visualizzazione, come tearing e caratteri che sembrano in grassetto.<br>
Per dire ad Iceweasel di non usare più ''XRender'' basta aprire la pagina di configurazione all'indirizzo '''''about:config''''' e impostare con un doppio clic il valore di '''gfx.xrender.enabled''' su '''false''' e di '''layers.acceleration.force-enabled''' su '''true''' e riavviare il browser per applicare le modifiche.<br>
Per dire ad Iceweasel di non usare più ''XRender'' basta aprire la pagina di configurazione all'indirizzo '''''about:config''''' e impostare con un doppio clic il valore di '''gfx.xrender.enabled''' su '''false''' e di '''layers.acceleration.force-enabled''' su '''true''' e riavviare il browser per applicare le modifiche.<br>
Da notare che ciò risolve il problema di visualizzazione dei caratteri, ma potrebbe far sorgere altri problemi, come ad esempio strani comportamenti di Adobe Flash Player (se presente).
Da notare che ciò risolve il problema di visualizzazione dei caratteri, ma potrebbe far sorgere altri problemi, come ad esempio strani comportamenti di Adobe Flash Player (se presente).


== Infinality ==
= Infinality =
Infinality è una combinazione di patch e configurazioni che puntano, come scrive l'autore [http://www.infinality.net/blog/infinality-freetype-patches/ sul suo sito], a migliorare la resa dei font imitando quelle dei vari sistemi operativi, e di permettere all'utente di personalizzare al meglio le impostazioni.
Infinality è una combinazione di patch e configurazioni che puntano, come scrive l'autore [http://www.infinality.net/blog/infinality-freetype-patches/ sul suo sito], a migliorare la resa dei font imitando quelle dei vari sistemi operativi, e di permettere all'utente di personalizzare al meglio le impostazioni.


Riga 238: Riga 239:
Alcuni utenti che hanno provato Infinality non ne sono rimasti colpiti, altri hanno espresso un'opinione negativa. Probabilmente avranno giudicato senza provare le varie configurazioni predefinite messe a disposizione, oppure non hanno installato i font tipici dei sistemi operativi che vuole imitare Infinality, che è un requisito importante.
Alcuni utenti che hanno provato Infinality non ne sono rimasti colpiti, altri hanno espresso un'opinione negativa. Probabilmente avranno giudicato senza provare le varie configurazioni predefinite messe a disposizione, oppure non hanno installato i font tipici dei sistemi operativi che vuole imitare Infinality, che è un requisito importante.


=== Installazione ===
== Installazione ==
{{Box|Nota|Al momento è possibile installare Infinality solo su Debian Wheezy. Il creatore del progetto (conosciuto proprio come Infinality) non lo aggiorna da più di un anno, e attualmente sembra abbandonato da parte sua. L'utente [https://github.com/bohoomil/fontconfig-ultimate bohoomil] sembra stia portando avanti il progetto autonomamente. Comunque a detta di molti, il rendering di FreeType è ormai ottimo anche senza bisogno di questa patch, basta una buona configurazione.}}
{{Box|Nota|Al momento è possibile installare Infinality solo su Debian Wheezy. Il creatore del progetto (conosciuto proprio come Infinality) non lo aggiorna da più di un anno, e attualmente sembra abbandonato da parte sua. L'utente [https://github.com/bohoomil/fontconfig-ultimate bohoomil] sembra stia portando avanti il progetto autonomamente. Comunque a detta di molti, il rendering di FreeType è ormai ottimo anche senza bisogno di questa patch, basta una buona configurazione.}}


Riga 260: Riga 261:
È possibile creare anche altri preset e modificare altri parametri, ma per farlo rimando alla lettura del file <code>/etc/fonts/infinality/README</code> e dei file di configurazione <code>/etc/fonts/infinality/infinality.conf</code> e <code>/etc/X11/Xsession.d/99infinality-settings</code>.
È possibile creare anche altri preset e modificare altri parametri, ma per farlo rimando alla lettura del file <code>/etc/fonts/infinality/README</code> e dei file di configurazione <code>/etc/fonts/infinality/infinality.conf</code> e <code>/etc/X11/Xsession.d/99infinality-settings</code>.


== Disinstallazione ==
Per rimuovere Infinality e ripristinare lo status quo:
Per rimuovere Infinality e ripristinare lo status quo:
<pre># dpkg --purge --force-depends libfreetype6 fontconfig-infinality
<pre># dpkg --purge --force-depends libfreetype6 fontconfig-infinality
Riga 268: Riga 270:
poi ripristinare eventuali backup pre-Infinality e riavviare.
poi ripristinare eventuali backup pre-Infinality e riavviare.


== DPI ==
= DPI =
Se i caratteri a schermo sono troppo piccoli (o troppo grandi) perché il monitor ha una risoluzione elevata (o bassa), si può cambiare il valore del [http://en.wikipedia.org/wiki/Dots_per_inch DPI] specificando quello reale dello schermo (che sarebbe più corretto chiamare [http://en.wikipedia.org/wiki/Pixels_per_inch PPI]).<br>
Se i caratteri a schermo sono troppo piccoli (o troppo grandi) perché il monitor ha una risoluzione elevata (o bassa), si può cambiare il valore del [http://en.wikipedia.org/wiki/Dots_per_inch DPI] specificando quello reale dello schermo (che sarebbe più corretto chiamare [http://en.wikipedia.org/wiki/Pixels_per_inch PPI]).<br>
Impostare il corretto DPI è necessario quando è richiesta una grande cura dei dettagli, come nel font rendering, ma anche in altri casi (software di grafica, di impaginazione, ecc.).<br>
Impostare il corretto DPI è necessario quando è richiesta una grande cura dei dettagli, come nel font rendering, ma anche in altri casi (software di grafica, di impaginazione, ecc.).<br>
In Debian e in tutte le distribuzioni Linux con Xorg, sono presenti due DPI: quello usato da Xorg e quello usato da Xft/Fontconfig.
In Debian e in tutte le distribuzioni Linux con Xorg, sono presenti due DPI: quello usato da Xorg e quello usato da Xft/Fontconfig.


=== DPI di Xorg ===
== DPI di Xorg ==
Xorg ricava il suo valore dall'[http://en.wikipedia.org/wiki/Extended_display_identification_data EDID] del monitor ma se non si discosta molto dallo standard (non ufficiale) dei 96 DPI, usa tale valore. Potete controllare il valore attualmente impostato con il comando:
Xorg ricava il suo valore dall'[http://en.wikipedia.org/wiki/Extended_display_identification_data EDID] del monitor ma se non si discosta molto dallo standard (non ufficiale) dei 96 DPI, usa tale valore. Potete controllare il valore attualmente impostato con il comando:
<pre>$ xdpyinfo | grep -B2 resolution</pre>
<pre>$ xdpyinfo | grep -B2 resolution</pre>
Riga 290: Riga 292:
{{Box|Nota|Testando KDE, sembrerebbe che questo ambiente desktop rilevi automaticamente il DPI esatto dello schermo, in quanto il test del foglio A4 viene superato senza l'uso della procedura sopra, utilizzando il visualizzatore di documenti predefinito. Provando ad installare ed usare evince (il visualizzatore predefinito di Gnome) questo non sembra beneficiare della rilevazione automatica, rendendo necessario l'utilizzo della procedura sopra per una visualizzazione in scala 1:1. Probabilmente è una questione di toolkit: [http://qt-project.org/ Qt] da questo punto di vista sembra superiore a [http://www.gtk.org/ GTK].}}
{{Box|Nota|Testando KDE, sembrerebbe che questo ambiente desktop rilevi automaticamente il DPI esatto dello schermo, in quanto il test del foglio A4 viene superato senza l'uso della procedura sopra, utilizzando il visualizzatore di documenti predefinito. Provando ad installare ed usare evince (il visualizzatore predefinito di Gnome) questo non sembra beneficiare della rilevazione automatica, rendendo necessario l'utilizzo della procedura sopra per una visualizzazione in scala 1:1. Probabilmente è una questione di toolkit: [http://qt-project.org/ Qt] da questo punto di vista sembra superiore a [http://www.gtk.org/ GTK].}}


=== DPI di Xft / Fontconfig ===
== DPI di Xft / Fontconfig ==
Questo DPI, rappresentato dalla variabile ''Xft.dpi'', serve praticamente solo per impostare la grandezza dei caratteri e di altri elementi grafici su schermo. Fontconfig usa il valore di ''Xft.dpi'' il quale, se non è stato impostato manualmente o dall'ambiente desktop, è uguale al DPI di Xorg.<br>
Questo DPI, rappresentato dalla variabile ''Xft.dpi'', serve praticamente solo per impostare la grandezza dei caratteri e di altri elementi grafici su schermo. Fontconfig usa il valore di ''Xft.dpi'' il quale, se non è stato impostato manualmente o dall'ambiente desktop, è uguale al DPI di Xorg.<br>
Per controllare l'attuale valore di Xft.dpi (e di altre variabili Xft impostate) usate il comando
Per controllare l'attuale valore di Xft.dpi (e di altre variabili Xft impostate) usate il comando
Riga 313: Riga 315:
Nei valori DPI con parte decimale (per esempio 102.46) si usa il punto e non la virgola. Riavviate per vedere il risultato e, se questo non è soddisfacente, rimettete tutto com'era per tornare al valori standard.
Nei valori DPI con parte decimale (per esempio 102.46) si usa il punto e non la virgola. Riavviate per vedere il risultato e, se questo non è soddisfacente, rimettete tutto com'era per tornare al valori standard.


== Installazione nuovi caratteri ==
= Installazione nuovi caratteri =
Quando si vuole installare un nuovo carattere non presente nei repository di Debian, bisogna mettere il/i file del font in questione in determinate directory per essere utilizzabile.<br>
Quando si vuole installare un nuovo carattere non presente nei repository di Debian, bisogna mettere il/i file del font in questione in determinate directory per essere utilizzabile.<br>
La directory dove sono presenti tutti i font di sistema è <code>/usr/share/fonts/</code> ma è preferibile non usare questa. I font vanno inseriti in <code>~/.fonts/</code> per poter essere usati dall'utente corrente, oppure in <code>/usr/local/share/fonts/</code> per metterli a disposizione di tutti gli utenti del sistema.<br>
La directory dove sono presenti tutti i font di sistema è <code>/usr/share/fonts/</code> ma è preferibile non usare questa. I font vanno inseriti in <code>~/.fonts/</code> per poter essere usati dall'utente corrente, oppure in <code>/usr/local/share/fonts/</code> per metterli a disposizione di tutti gli utenti del sistema.<br>
Riga 343: Riga 345:
Da notare che, come per i vari software, anche i caratteri hanno un numero di versione, perché possono essere revisionati per svariati motivi (come per l'aggiunta dei glifi di una lingua non latina, per migliorarne le istruzioni di hinting, per perfezionare il design, ecc.).
Da notare che, come per i vari software, anche i caratteri hanno un numero di versione, perché possono essere revisionati per svariati motivi (come per l'aggiunta dei glifi di una lingua non latina, per migliorarne le istruzioni di hinting, per perfezionare il design, ecc.).


== Console Linux ==
= Console Linux =
Si possono anche cambiare i font bitmap della console Linux (i font visibili quando X non è avviato, per esempio quando si avvia il sistema in modalità ripristino) per aumentare la leggibilità.<br>
Si possono anche cambiare i font bitmap della console Linux (i font visibili quando X non è avviato, per esempio quando si avvia il sistema in modalità ripristino) per aumentare la leggibilità.<br>


Riga 362: Riga 364:
Per maggiori dettagli: <code>man console-setup</code>
Per maggiori dettagli: <code>man console-setup</code>


== Riferimenti ==
= Guida rapida =
Questa guida è un estratto di quanto scritto finora e serve da riferimento rapido, ma tralascia molti particolari (come ad esempio il [[Migliorare l'aspetto dei font#DPI|DPI]]). Se non siete alle prime armi e volete più dettagli, consiglio di leggere tutta la guida.
 
== Configurazione di sistema ==
Come utente root o superuser creare il file <code>/etc/fonts/local.conf</code> con un editor di testi (es. ''nano''):
<pre># nano /etc/fonts/local.conf</pre>
e incollare quanto segue:
<pre>
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="pattern">
    <edit mode="append" name="antialias">
      <bool>true</bool>
    </edit>
    <edit mode="append" name="hinting">
      <bool>true</bool>
    </edit>
    <edit mode="append" name="autohint">
      <bool>false</bool>
    </edit>
    <edit mode="append" name="hintstyle">
      <const>hintslight</const>
    </edit>
    <edit mode="append" name="rgba">
      <const>rgb</const>
    </edit>
    <edit mode="append" name="lcdfilter">
      <const>lcddefault</const>
    </edit>
    <edit mode="append" name="embeddedbitmap">
      <bool>false</bool>
    </edit>
  </match>
  <selectfont><rejectfont><pattern>
    <patelt name="scalable"><bool>false</bool></patelt>
  </pattern></rejectfont></selectfont>
</fontconfig>
</pre>
 
Salvare il file e attivare le nuove impostazioni riavviando il server X (con un logout e login oppure riavviando il pc).<br>
Le impostazioni usate nel file creano un rendering uguale a quello di Ubuntu, che piace a molti utenti. Ovviamente sono delle impostazioni consigliate e potete cambiarle a vostro piacimento.<br>
Il rendering ottenuto con queste impostazioni sarà adottato in modo predefinito da tutti gli utenti del sistema, anche dalla schermata iniziale di login. Ma ogni utente può (e in alcuni casi <u>deve</u>, come in GNOME) cambiare queste impostazioni nel proprio profilo, come spiegato di seguito.
 
== Configurazione utente ==
Ogni utente può usare gli strumenti messi a disposizione dall'ambiente desktop in uso per cambiare i valori predefiniti del sistema se non sono di suo gradimento.
 
[[Image:Kde-font-rendering.jpg|thumb|right|KDE 4]]
[[Image:Gnome-font-rendering.png|thumb|right|GNOME 3]]
[[Image:Xfce-font-rendering.png|thumb|right|Xfce]]
=== KDE 4 ===
In KDE le impostazioni si trovano in "Impostazioni di sistema" > "Aspetto delle applicazioni" > "Caratteri" > "Utilizza l'antialiasing per i caratteri". Qui è possibile scegliere tra ''Abilitato'', ''Disabilitato'' (sconsigliato) e ''Impostazioni di sistema'' ([http://bugs.kde.org/show_bug.cgi?id=245664 che non funziona]). L'unica scelta logica rimane quindi ''Abilitato'', dove poi è possibile con il tasto ''Configura'' cambiare le impostazioni (valori consigliati nell'immagine a destra).<br>
KDE salva le impostazioni nello stesso file di configurazione illustrato nel successivo paragrafo "[[Migliorare l'aspetto dei font#Altri desktop|Altri desktop]]".
 
=== GNOME 3 ===
GNOME Shell imposta automaticamente una configurazione generica che non sfrutta bene le caratteristiche degli schermi LCD e che va a sovrascrivere quella di sistema, per cui è necessario cambiarla (tranne nel caso in cui vi piaccia, ovviamente). Per farlo bisogna prima installare il pacchetto <code>gnome-tweak-tool</code>, successivamente andare in "Preferenze" > "Impostazioni avanzate" > "Tipi di carattere" e da qui cambiare i valori di ''Hinting'' e ''Antialiasing'' (valori consigliati nell'immagine a destra).
 
=== Xfce ===
In Xfce le impostazioni si trovano in "Impostazioni" > "Aspetto" > "Caratteri". Valori consigliati nell'immagine a destra.
 
=== LXDE, Mate, Cinnamon ===
Anche questi ambienti desktop, come i precedenti, includono dei pannelli di configurazione per cambiare il rendering dei font. Valori consigliati uguali a quelli degli altri ambienti desktop.
 
=== Altri desktop ===
Altri ambienti desktop (come [[Enlightenment]]) potrebbero avere degli strumenti di configurazione dei font poco pratici, incompleti o non averne affatto. In questi casi, se la [[Migliorare l'aspetto dei font#Configurazione di sistema|configurazione di sistema]] non piace all'utente o non è stata impostata, bisogna creare un file di configurazione simile a quello di sistema, ma a livello utente. Basta aprire un editor di testi come ''gedit'' o ''kwrite'' e incollare quanto segue:
<pre>
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit mode="assign" name="antialias">
      <bool>true</bool>
    </edit>
    <edit mode="assign" name="hinting">
      <bool>true</bool>
    </edit>
    <edit mode="assign" name="autohint">
      <bool>false</bool>
    </edit>
    <edit mode="assign" name="hintstyle">
      <const>hintslight</const>
    </edit>
    <edit mode="assign" name="rgba">
      <const>rgb</const>
    </edit>
    <edit mode="assign" name="lcdfilter">
      <const>lcddefault</const>
    </edit>
    <edit mode="assign" name="dpi">
      <double>96</double>
    </edit>
  </match>
</fontconfig>
</pre>
(notare l'uso di ''mode="assign"'' che permette di sovrascrivere le impostazioni di sistema, dove invece si usa ''mode="append"'' proprio per permettere la sovrascrittura da parte dei singoli utenti).
 
Dopodiché:
*se si usa '''Wheezy''' salvare il file come <code>~/.fonts.conf</code>
*se si usa '''Jessie''' (o versioni successive) salvare come <code>~/.config/fontconfig/fonts.conf</code>
e infine riavviare X (riavviando il sistema o facendo il logout) per applicare la configurazione.
 
==== Openbox ====
Su [[Openbox]] (e forse anche in altri ambienti minimalisti simili, come [[Fluxbox]]) si avranno miglioramenti solo parziali: ad esempio l'interno delle finestre rimarranno insensibili ai cambiamenti, al contrario dei titoli.<br>
In questo caso bisogna usare un altro file di configurazione (in aggiunta o in sostituzione a quello sopra), che andremo a creare con il nome <code>~/.Xresources</code> e con il seguente contenuto:
<pre>
Xft.antialias: 1
Xft.hinting: 1
Xft.autohint: 0
Xft.hintstyle: hintslight
Xft.rgba: rgb
Xft.lcdfilter: lcddefault
Xft.dpi: 96
</pre>
Se si usa anche l'altro file di configurazione accertarsi che le impostazioni dei due coincidano, per evitare problemi di visualizzazione.<br>
Come in precedenza, riavviare X o il sistema per vedere i risultati.
 
 
= Riferimenti =
Per approfondimenti sulla rasterizzazione consiglio la lettura di [https://www.grc.com/cleartype.htm questo articolo], dettagliato ma comprensibile.<br>
Per approfondimenti sulla rasterizzazione consiglio la lettura di [https://www.grc.com/cleartype.htm questo articolo], dettagliato ma comprensibile.<br>
Invece [http://www.rastertragedy.com/ quest'altro] è più simile ad una tesi di laurea, con un approccio più scientifico.
Invece [http://www.rastertragedy.com/ quest'altro] è più simile ad una tesi di laurea, con un approccio più scientifico.
317

contributi