Cos'è e come viene
usato un font su computer?
In fin dei conti, sembrerebbe un compito quasi banale spiegare a un calcolatore
che una i minuscola in Helvetica si realizza sovrapponendo un quadrato a un
rettangolo, secondo certe proporzioni. La realtà è molto più complessa: la
definizione di un insieme di caratteri, che all'osservatore casuale potrebbe
sembrare semplicemente equivalente a definire un certo numero di sagome, è un
compito molto più vicino alla realizzazione di un programma che alla stesura di
un documento grafico.

In figura vediamo la sagoma di una K
maiuscola in Times Roman. Immaginiamo ora di voler rendere quella lettera in
corpo 8 sullo schermo del calcolatore. La soluzione è semplice: sovraimponiamo
alla sagoma del carattere un reticolo: se il centro di ogni quadratino è
contenuto all'interno del profilo del carattere, accendiamo il pixel
corrispondente sullo schermo. In caso contrario, lo spegnamo.
Il programma che prende un font (come Times), esegue una sequenza di istruzioni
per determinare la sagoma di un carattere (come la K), e poi sovraimpone un
reticolo per ricavare la matrice di punti che verrà stampata, si chiama
rasterizzatore: tutte le stampanti laser che dispongono di caratteri stampabili
a ogni dimensione, come la Hewlett Packard LaserJet o le LaserWriter di Apple,
ne contengono uno. Adobe Type Manager, il diffuso programma disponibile per
Macintosh e in ambiente Windows, è un rasterizzatore usato per rappresentare i
caratteri sullo schermo di un personal computer.
Il sistema TrueType, dunque, si compone di un rasterizzatore per i personal
computer e di font create per funzionare con questo. La stessa cosa vale per il
sistema Adobe e per tutti gli altri metodi alternativi, non molto sfruttati nel
mondo dei personal computer: quello che cambia è il modo in cui il sistema
viene implementato.
Oggi è disponibile il rasterizzatore per Apple Macintosh, in grado di pilotare
oltre al computer anche tutte le stampanti della casa che non usano PostScript:
con esso, Apple fornisce i font Helvetica, Times, Courier e Symbol. Il
rasterizzatore per Windows e OS/2 seguirà in futuro: non abbiamo anteprime di
Microsoft sulla sua disponibilità.

Torniamo al nostro esempio della K
maiuscola. Disgraziatamente, un rasterizzatore che applicasse banalmente il
metodo che abbiamo descritto produrrebbe un risultato inaccettabile: lo vediamo
in figura.
Se prendete in considerazione l'insieme dei quadratini neri vi rendete conto che
la loro sagoma ha una parentela solo marginale con la nostra K maiuscola.
É dunque necessario che nel sistema si introduca un po' di intelligenza: è
necessario il controllo di un programma che riconosca ed eviti le lacune,
minimizzi le seghettature, verifichi che l'altezza di tutti i caratteri in un
font di dimensione fissata sia costante, e compia mille altre operazioni per
ottimizzare i caratteri sulla periferica che si ha a disposizione (stampante o
schermo di computer).
Il primo candidato a incorporare questi algoritmi è, ovviamente, il
rasterizzatore. Questo è quanto avviene nel sistema Adobe.
![]()
Il rasterizzatore Adobe, quello
utilizzato nelle stampanti laser PostScript e nel programma Adobe Type Manager,
è un programma piuttosto complesso, che contiene molti sofisticati algoritmi
per ottimizzare l'aspetto dei font. Per esempio, esso sa evitare il problema
delle lacune nei caratteri: se venisse posto di fronte al caso del nostro
esempio, agirebbe per eliminare lo spazio bianco che separa le due metà della
lettera K.
Il linguaggio che descrive l'aspetto dei font Adobe, di converso, è molto
schematico ed è composto di un sottoinsieme limitato dei comandi PostScript:
ventiquattro di essi, per la precisione.
Oltre alle descrizioni di ogni carattere in questo minilinguaggio, ogni font
Adobe contiene una serie di suggerimenti (in inglese, hinting) per il
rasterizzatore. I suggerimenti aiutano il rasterizzatore a realizzare al meglio
il font: si tratta tipicamente di consigli grazie ai quali tutte le lettere
verranno stampate con grazie di dimensioni uguali, e che permetteranno di
aumentare la rassomiglianza tra lo Helvetica Bold e l'Helvetica Light.
![]()
TrueType adotta una strategia diametralmente opposta.
Il sistema Apple si propone di rendere più semplice la realizzazione di nuovi
font. Per rendere questo possibile, va aumentata la libertà di ogni designer, e
quindi va aumentato il numero di operatori del linguaggio che descrive i
caratteri. Operazioni che sarebbe difficile esprimere nel sistema Adobe sono
fornite direttamente da TrueType, che si propone quindi come un sistema più
completo e che non obbliga il designer dei font ad adottare una sola filosofia -
quella Adobe - per realizzare i caratteri. Di conseguenza, il rasterizzatore
TrueType è più semplice e meno sofisticato di quello Adobe, perché c'è più
intelligenza dei font e quindi non è più necessario che sia il rasterizzatore
a rimediare a potenziali problemi come quello delle lacune che abbiamo visto.
La occupazione di memoria dei due sistemi rispecchia questa verità: il
rasterizzatore Adobe Type Manager 2.0 occupa approssimativamente 224 kbyte di
memoria su un Macintosh II, e Adobe consiglia di aggiungere altri 32 kbyte per
ogni famiglia di font usata oltre le prime tre. Il sistema TrueType, dal canto
suo, si accontenta di 132 kbyte.
Naturalmente, c'è un'altra conseguenza, e non propriamente piacevole. Dato che
il sistema TrueType fornisce molte più possibilità del sistema Adobe, è anche
più difficile da dominare. Per rimediare a questo problema alcune case hanno
sviluppato degli strumenti che permetteranno ai designer di font di portare le
loro creazioni nel formato TrueType senza dover perdere tempo nell'apprendimento
delle specifiche di TrueType.
In sintesi, quindi, TrueType sposta l'accento dal rasterizzatore ai font.
Vediamo cosa succede in pratica.
Quando il rasterizzatore TrueType esegue il programma che descrive la lettera K
in Times Roman, il programmino che corrisponde alla K maiuscola, messo di fronte
alla necessità di rappresentare la lettera in uno spazio limitato (solo otto
punti di altezza) produce una sagoma modificata rispetto a quella ottimale (di
figura 1).
A questo punto, quando il rasterizzatore applica il reticolato e ne ottiene la
matrice di punti che saranno stampati o mostrati a video, appare una sagoma
adeguata a rappresentare la lettera.
Un'ultima osservazione: come il nostro esempio ci insegna, la rappresentazione
dei caratteri su dispositivi a bassa risoluzione, o se preferite la loro
rappresentazione in dimensioni limitate, è un banco di prova pregnante.
Infatti, ci possiamo aspettare che qualsiasi sistema renda adeguatamente quando
ha a disposizione un reticolato di centinaia di punti molto piccoli e molto
ravvicinati: eventuali imperfezioni saranno invisibili all'occhio nudo. C'è un
rovescio della medaglia: non a tutti interessa che il sistema di
rappresentazione dei font usato eccella in questo campo. Per un grafico che
utilizzi unità di fotocomposizione, la capacità di TrueType di ottimizzare le
prestazioni di uno schermo ha un valore molto relativo, e infatti il sistema
Adobe PostScript è nato proprio per pilotare stampanti a grande risoluzione.