# [xfree] caratteri sfocati

## akiross

hola!

ho un problemino: sul mio pc adoro avere alte risoluzioni (per ora il massimo che posso e' 1280x1024). Ovviamente si deve vedere tutto bene.

Cosi' e' sempre stato, ma non in questa installazione di gentoo:

infatti, avviando X, mi sono accorto che i caratteri (ma non solo) sono incredibilmente sfocati. Sembra quasi che venga fatto l'effetto blur al mio schermo...

dubito che sia lo schermo vero e proprio, dato che andava tutto bene fino a una settimana fa.

avro' sbagliato qualche impostazione di Xfree? quale errore puo' causare una sfocatura? (senza sfarfallii o cose varie)

grazie

ciao

----------

## Legolas80

A 1024x768 come si vede? Hai provato con altri sistemi operativi? Che scheda video hai?

Forse un pò troppe domande  :Rolling Eyes:  ma cerca di essere più preciso.

----------

## darksides

 *Legolas80 wrote:*   

> A 1024x768 come si vede? Hai provato con altri sistemi operativi? Che scheda video hai?
> 
> Forse un pò troppe domande  ma cerca di essere più preciso.

 

anche io ho lo stesso problema ma solo con alcune applicazioni, e a 1024x768 devo dire che si vede bene, ma con un 19'' preferirei avere una risoluzione maggiore tipo 1280x1024

----------

## Legolas80

Ovviamente con un 19" è meglio andare a 1280, ma se si vede sfuocato non è colpa di Gentoo, ma di monitor e/o scheda video.

----------

## akiross

scheda video nuova di pacca: geForce 4 mx440

schermo no di sicuro, altrimento lo vedrei male anche in console, no?

altri OS non li ho provati

il refresh l'ho impostato in base alle caratteristiche del monitor

appena finisco di compilare provo a cambiare risoluzione, poi posto

grazie mille

ciao

----------

## darksides

 *Legolas80 wrote:*   

> Ovviamente con un 19" è meglio andare a 1280, ma se si vede sfuocato non è colpa di Gentoo, ma di monitor e/o scheda video.

 

sotto windows è tutto ok.

----------

## Legolas80

 *akiross wrote:*   

> scheda video nuova di pacca: geForce 4 mx440

 

Il fatto che sia nuova non vuol dire che sia di buona qualità... e non basta neanche avere un chip nVidia per essere sicuri della qualità visiva di una scheda video.

Ti sei mai chiesto perchè due schede video con lo stesso chip prodotte da due produttori diversi possono avere una differenza di prezzo anche dell'ordine di 60-80 Euro? La differenza sta nella qualità costruttiva dei componenti, soprattuto dei filtri passa-basso (che servono ad eliminare i disturbi del segnale dovuti a interferenze). Se questi componenti sono di qualità scadente anche una Radeon 9800Pro può risultare peggio di una TNT2.

----------

## Legolas80

 *darksides wrote:*   

> sotto windows è tutto ok.

 

Questo può essere dovuto al fatto che xfree applica l'antialias anche ai caratteri di piccole dimensioni, mentre windows no. Logicamente più i caratteri diventano piccoli (all'aumentare della risoluzione) più l'antialias crea l'effetto sfuocatura che serve ad eliminare l'effetto scalettato dei caratteri.

Prima dicevi che questo disturbo su linux ce l'hai solo con alcune applicazioni... per esempio?

----------

## BlueRaven

 *akiross wrote:*   

> infatti, avviando X, mi sono accorto che i caratteri (ma non solo) sono incredibilmente sfocati. Sembra quasi che venga fatto l'effetto blur al mio schermo...

 

Personalmente, credo che quello del rendering dei font sotto Linux sia uno degli argomenti più ostici in assoluto.

Da un lato, perché dietro c'è parecchia teoria e buona parte di essa riguarda argomenti di cui anche il più esperto degli utenti raramente si intende; dall'altro, perché non sempre è chiaro dove mettere le mani per ottenere il risultato voluto, vuoi per la complessità di X in sé vuoi per i vari "pezzi" aggiunti nelle varie release.

Dopo settimane passate a scontrarmi con questo problema e un buon grado e mezzo di vista immolato sull'altare della causa  :Wink: , provo a darti qualche dritta.

Per prima cosa, assicurati di usare font di buona qualità.

I migliori in assoluto sono i TrueType di M$ (i cosiddetti core fonts) e i Bitstream Vera; i primi sono già compresi con XFree, per gli altri c'è l'ebuild nel Portage.

Le directory dove sono contenuti dovrebbero essere le prime nel tuo /etc/X11/XF86Config, in modo che vengano selezionati in modo preferenziale:

```

    FontPath   "/usr/share/fonts/ttf-bitstream-vera/"

    FontPath   "/usr/X11R6/lib/X11/fonts/truetype/"

    FontPath   "/usr/X11R6/lib/X11/fonts/Speedo/"

    FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"

    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"

    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"

    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"

    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"

```

Fai attenzione anche a caricare il modulo per le librerie FreeType:

```
Load "freetype"
```

Il punto più importante di tutta la struttura di gestione dei font è la directory /etc/fonts, che contiene dei file in formato XML.

Modificandoli, puoi impostare a piacimento le varie opzioni che influiscono sul modo in cui il font viene visualizzato.

Il punto consigliato per le modifiche utente è il file local.conf; tuttavia, io ti consiglio di copiare il file nella tua home, col nome .fonts.conf e di effettuare lì le modifiche, in modo da assicurarti di non sovrascriverlo accidentalmente durante un upgrade.

Questo è il mio:

```
<?xml version="1.0"?>

<!DOCTYPE fontconfig SYSTEM "fonts.dtd">

<!-- /etc/fonts.conf file to configure system font access -->

<fontconfig>

 

<!--  Enable sub-pixel rendering -->

        <match target="font">

                <test qual="all" name="rgba">

                        <const>unknown</const>

                </test>

                <edit name="rgba" mode="assign"><const>rgb</const></edit>

        </match>

 

<!-- Autohint fonts

        <match target="font">

                <edit name="autohint" mode="assign"><bool>true</bool> </edit>

        </match>

-->

 

<!-- Use Bitstream Vera fonts by default -->

        <alias>

                <family>serif</family>

                <prefer>

                        <family>Bitstream Vera Serif</family>

                </prefer>

        </alias>

        <alias>

                <family>sans-serif</family>

                <prefer>

                        <family>Bitstream Vera Sans</family>

                </prefer>

        </alias>

        <alias>

                <family>monospace</family>

                <prefer>

                        <family>Bitstream Vera Sans Mono</family>

                </prefer>

        </alias>

</fontconfig>

```

La sezione più importante è la terza, dove, in pratica, dico al sistema di "risolvere" il nome dei font Sans, Serif e Monospace (usati nel 99,999% dei casi) nei rispettivi font forniti con i Bitstream.

La prima attiva il subpixel rendering, utilissimo sugli LCD per migliorare ulteriormente la definizione: per capirci, è quello che su XP si chiama ClearType.

Io l'ho provato anche su schermi non LCD e, in certi casi, funziona ugualmente bene, per cui sperimenta pure e vedi se fa al caso tuo.

Un altro punto fondamentale è il dot pitch del monitor: la resa visiva dei caratteri è nettamente superiore se X sa qual è la distanza tra i pixel.

Per trovare questa informazione, è sufficiente usare da un terminale il comando

```
xdpyinfo
```

e cercare la riga che inizia con "resolution:"; di default è un valore intorno a 75.

Un valore molto più preciso si può avere inserendo all'interno di XF86Config una riga come questa nella sezione "Monitor":

```
DisplaySize 304 227
```

dove le due cifre indicano la larghezza e l'altezza dell'area visibile dello schermo, in millimetri.

Se, a questo punto, provi a far ripartire X e a ridare xdpyinfo, vedrai un valore diverso e, se la misura è precisa, le due cifre riportate in "resolution:" saranno uguali.

Da me, ad esempio, è:

```
  resolution:    85x85 dots per inch
```

Ora, fai partire X con il valore giusto del parametro dpi:

```
 startx -- -dpi 85
```

Chiaramente, se usi direttamente un ambiente come KDE o Gnome, devi trovare dove impostare il valore in questione: su Gnome, ad esempio, sta sotto Applications -> Desktop Preferences -> Font, tra le opzioni avanzate.

In questo modo, dovresti ottenere un rendering ottimale, nettamente superiore a quello di Win.

Altri trucchetti possono essere quello di attivare l'autohinting dei font (seconda sezione del mio .fonts.conf), disattivare il bytecode interpreter delle FreeType

```
USE="bindist" emerge freetype
```

oppure, ancora, disattivare l'antialiasing dei font di dimensione troppo piccola, utile soprattutto ad alte risoluzioni come la tua.

Tutte le info di cui sopra vengono da semplici ricerche nel forum, quindi il trovare la configurazione migliore per te lo lascio come compito per casa.  :Laughing: 

Purtroppo, in questo momento, non posso postare uno screenshot per stimolarti allo smanettamento, ma se qualcuno mi mette a disposizione un po' di spazio su un sito mando qualcosa molto volentieri.Last edited by BlueRaven on Tue Nov 04, 2003 9:07 am; edited 1 time in total

----------

## shev

 *BlueRaven wrote:*   

> 
> 
> Purtroppo, in questo momento, non posso postare uno screenshot per stimolarti allo smanettamento, ma se qualcuno mi mette a disposizione un po' di spazio su un sito mando qualcosa molto volentieri.

 

Eccolo!

Mandameli pure al mio indirizzo qui sotto che te li metto on line.

Grazie mille per gli utilissimi tips, appena raggiungo una gentoo box li provo subito! Cerri, direi che questo merita di finire nel topic dei tips&tricks, giusto?

----------

## codadilupo

 *Shev wrote:*   

> Cerri, direi che questo merita di finre nel topic dei tips&tricks, giusto?

 

mi hai preceduto di un soffio  :Wink: 

Quindi io lo consiglio a morellik per gentoo.it   :Very Happy: 

Coda

----------

## BlueRaven

 *codadilupo wrote:*   

>  *Shev wrote:*   Cerri, direi che questo merita di finre nel topic dei tips&tricks, giusto? 
> 
> mi hai preceduto di un soffio 
> 
> Quindi io lo consiglio a morellik per gentoo.it  
> ...

 

Troppo buoni... così mi fate arrossire!   :Embarassed: 

----------

## silian87

anche io avevo lo stesso problema con la mia gforce 4 mx 440. Per risolverlo io ho trovato due modi:

1)Metti i driver ufficiali nvidia.

2)Io ho modificato le impostazioni del mio monitor, togliendo la geometria automatica e modificando il blocco dell'immagine. Se premo "auto" si reincasina tutto (se avessi gli nv, invece degli nvidia).

Non so se ti sono stato d'aiuto, perche' io ho un monitor LCD, cmq....  :Rolling Eyes: 

----------

## shev

Dopo l'annuncio ecco gli screenshots di BlueRaven:

Mozilla

Desktop

Non male direi  :Wink: 

----------

## MyZelF

Complimenti, ottimi consigli!

Volevo aggiungere che kde permette di abilitare molto semplicemente l'antiliasing (permettendo di scegliere un range in pt per cui disabilitarlo, ad esempio per le scritte piccole) e il sub-pixel hinting da Control Center > Appearance & Themes > Fonts.

 *Quote:*   

> 
> 
> Altri trucchetti possono essere quello di attivare l'autohinting dei font (seconda sezione del mio .fonts.conf), disattivare il bytecode interpreter delle FreeType 
> 
> 

 

Precisamente questi due "trucchetti" cosa fanno?

Ah, al .fonts.conf che hai postato manca un:

```
 </fontconfig>
```

alla fine...  :Smile: 

----------

## BlueRaven

 *MyZelF wrote:*   

> Complimenti, ottimi consigli!
> 
> Volevo aggiungere che kde permette di abilitare molto semplicemente l'antiliasing (permettendo di scegliere un range in pt per cui disabilitarlo, ad esempio per le scritte piccole) e il sub-pixel hinting da Control Center > Appearance & Themes > Fonts.

 

Grazie per i complimenti, posso aggiungere che su Gnome l'antialiasing è abilitato di default e anche qui il sub-pixel hinting può essere abilitato dalle Desktop Preferences.

Manca, invece, la possibilità - molto utile - di escludere l'antialiasing per i font di certe dimensioni, cosa che va fatta a mano nel .fonts.conf.

 *MyZelF wrote:*   

> Precisamente questi due "trucchetti" cosa fanno?

 

Innanzitutto, ho dimenticato di precisare che il risultato che si ottiene è più o meno equivalente. In buona sostanza, il sistema, a seconda delle caratteristiche del font, sceglie autonomamente il grado di hinting da applicare.

Da me non ha dato buoni risultati, ma, se devo dirla tutta, non ho approfondito più di tanto come funziona e non ho capito se ho sbagliato qualcosa io.

Propendo fortemente per quest'ultima ipotesi, visto che l'autohinting è la tecnica che usa RedHat per il suo BlueCurve... e vi assicuro che BlueCurve, in quanto a rendering dei font, è semplicemente spettacolare.

 *MyZelF wrote:*   

> 
> 
> Ah, al .fonts.conf che hai postato manca un:
> 
> ```
> ...

 

Uh, vero!  :Embarassed: 

E' che nel mio .fonts.conf, dopo la sezione sui font Bitstream, ce n'è un'altra identica che usa i font M$ ed è commentata, in quanto il risultato era inferiore. L'ho saltata nel copia-incolla e mi è rimasto fuori anche il tag di chiusura.  :Wink: 

Ho provveduto a correggere, grazie per la segnalazione.

----------

