Fonts (Italiano)
Documenta l'installazione e l'utilizzo dei Fonts su Arch Linux.
Font formats
La maggior parte dei font usati oggi dai computer sono sia in formato bitmap che outline. I font Bitmap archiviano immagini fisse per ogni glifo, di ogni dimensione e tipo, per carattere e punto. Il profilo o vettore dei font memorizza i caratteri come istruzioni per disegnare ogni linea e curva del glifo, potendo inoltre scalare in un ampio raggio di dimensioni senza problemi.
Le estensioni comuni nei nomi dei font comprendono:
-
bdf
ebdf.gz
– (Bitmap Distribution Format), font bitmap compressi in gzipbdf
-
pcf
epcf.gz
– (Portable Compiled Font), font bitmap compressi in gzippcf
-
psf
,psfu
,psf.gz
epsfu.gz
– (Pc Screen Font), (Pc Screen Font Unicode) e le versioni gzip, font bitmap, (incompatibili con Xorg) -
pfa
epfb
– (PostScript Font A-SCII) e (PostScript Font Binary), font con funzionalità di contorno e font PostScript, per istruzioni built-in delle stampanti. -
ttf
– (True Type Font), font con funzionalità di contorno. Originariamente concepito come una sostituzione per i font PostScript. -
otf
– (Open Type Font), font con funzionalità di contorno. TrueType con istruzioni tipografiche PostScript.
Nella maggior parte dei casi, le differenze tecniche tra TrueType e OpenType possono essere ignorate, alcuni font con un'estensione ttf
sono in realtà i font OpenType.
Altri formati
L'applicazione di composizione TeX, ed il suo software font abbinato, Metafont, randerizza i caratteri utilizzando metodi propri. Alcune delle estensioni dei file utilizzati per i font da questi due programmi sono *pk
, *gf
, mf
e vf
.
FontForge, è un'applicazione per l'editing dei caratteri in grado di memorizzare i caratteri nel loro formato nativo basato su testo, sfd
, spline font database.
Installazione
Vari metodi di installazione dei font.
Pacman
Font specifici e collezioni di font possono essere installati dai nei repository abilitati utilizzando pacman. I font disponibili possono essere trovati utilizzando:
$ pacman -Ss font
O per ricercare solo i font ttf
:
$ pacman -Ss ttf
Alcuni font come terminus sono installati in /usr/share/fonts/local
, che non viene aggiunto al percorso dei font di default. Aggiungendo le seguenti righe a ~/.xinitrc
xset +fp /usr/share/fonts/local xset fp rehash
i font possono essere usati in X11.
Creazione di un pacchetto
Per avere la possibilità di gestire i font con pacman, è possibile creare un pacchetto per Arch. Questi possono anche essere condivisi con la comunità per mezzo di AUR. Ecco un esempio di come compilare un pacchetto di base. Per ulteriori informazioni sulla creazione di pacchetti, leggere PKGBUILD.
pkgname=ttf-fontname pkgver=1.0 pkgrel=1 depends=('fontconfig' 'xorg-font-utils') pkgdesc="custom fonts" arch=('any') source=(http://someurl.org/$pkgname.tar.bz2) install=$pkgname.install build() { mkdir -p $pkgdir/usr/share/fonts/TTF cp $srcdir/$pkgname/*.ttf $pkgdir/usr/share/fonts/TTF }
Questo PKGBUILD presuppone che i font siano TrueType. Dovrà anche essere creato un file di installazione (ttf-fontname.install
) per aggiornare la cache dei font:
post_install() { echo -n "Updating font cache... " fc-cache -fs >/dev/null mkfontscale /usr/share/fonts/TTF /usr/share/fonts/Type1 mkfontdir /usr/share/fonts/TTF /usr/share/fonts/Type1 echo "done" } post_upgrade() { post_install }
Installazione manuale
Il metodo raccomandato per aggiungere font non disponibili nei repository al sistema, è descritto in #Creazione di un pacchetto. Questo dà a pacman la possibilità di rimuoverli o aggiornarli in un secondo momento. Possono inoltre essere installati manualmente.
Per installare i font a livello di intero sistema (disponibile per tutti gli utenti), spostare la cartella nella directory /usr/share/fonts/
. Per installare i font ad un singolo utente, utilizzare invece ~/.fonts/
.
Potrebbe anche essere necessario aggiornare /etc/X11/xorg.conf
o /etc/xorg.conf
con la nuova directory. Eseguire una ricerca con chiave FontPath
per trovare la posizione corretta del file ed aggiungere il nuovo percorso. Consultare #Font e Xorg per maggiori informazioni.
Aggiornare infine fontconfig, la cache dei font:
$ fc-cache -vf
Applicazioni datate
Con le vecchie applicazioni che non supportano fontconfig (ad es. le applicazioni GTK1, e xfontsel
) l'indice dovrà essere creato nella directory dei font:
$ mkfontscale $ mkfontdir
O per includere più di una cartella con un solo comando:
$ for dir in /font/dir1/ /font/dir2/; do xset +fp $dir; done && xset fp rehash
A volte il server X potrebbe non riuscire a caricare la cartella fonts e sarà necessario ripetere l'analisi tutti i file fonts.dir
:
# xset +fp /usr/share/fonts/misc # Inform the X server of new directories # xset fp rehash # Forces a new rescan
Per controllare che i font siano inclusi:
$ xlsfonts | grep fontname
Pango Warnings
Quando Pango è in uso sul proprio sistema sarà letto da fontconfig[link interrotto 2020-08-02] per risolvere da dove leggere i font.
(process:5741): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='common' (process:5741): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='latin'
Nel caso si vedano errori simili a questo e/o blocchi invece di caratteri nell'applicazione, sarà necessario aggiungere dei font e aggiornare la cache dei font. Questo esempio utilizza i font ttf-liberation per illustrare la soluzione e viene eseguito da root, per consentirne l'utilizzo a livello globale nel sistema.
# pacman -S ttf-liberation -- output abbreviated, assumes installation succeeded -- # fc-cache -vfs /usr/share/fonts: caching, new cache contents: 0 fonts, 3 dirs /usr/share/fonts/TTF: caching, new cache contents: 16 fonts, 0 dirs /usr/share/fonts/encodings: caching, new cache contents: 0 fonts, 1 dirs /usr/share/fonts/encodings/large: caching, new cache contents: 0 fonts, 0 dirs /usr/share/fonts/util: caching, new cache contents: 0 fonts, 0 dirs /var/cache/fontconfig: cleaning cache directory fc-cache: succeeded
È possibile verificare la corretta configurazione di un font di default in questo modo:
# fc-match LiberationMono-Regular.ttf: "Liberation Mono" "Regular"
Font e Xorg
Per abilitare Xorg a trovare ed utilizzare i nuovi font installati, è necessario aggiungere i percorsi dei font stessi in /etc/xorg.conf
(un file di configurazione Xorg diverso potrebbe funzionare comunque).
Ecco un esempio della sezione che deve essere aggiunta a /etc/xorg.conf
. Aggiungere o rimuovere i percorsi in base agli specifici requisiti dei propri caratteri.
# Let Xorg know about the custom font directories Section "Files" FontPath "/usr/share/fonts/100dpi" FontPath "/usr/share/fonts/75dpi" FontPath "/usr/share/fonts/cantarell" FontPath "/usr/share/fonts/cyrillic" FontPath "/usr/share/fonts/encodings" FontPath "/usr/share/fonts/local" FontPath "/usr/share/fonts/misc" FontPath "/usr/share/fonts/OTF" FontPath "/usr/share/fonts/TTF" FontPath "/usr/share/fonts/util" EndSection
Pacchetti font
Questa è una lista selettiva, ma riporta la maggior parte dei font reperibili su AUR oltre a quelli nei repository ufficiali. I caratteri sono taggati "Unicode" se provvisti di ampio supporto Unicode; consultarere il progetto o le pagine di Wikipedia per maggiori informazioni.
Braille
- ttf-ubrailleAUR - Font per simboli braille
International users
Arabo
- ttf-sil-lateefAUR - Font Unicode arabici da SIL (AUR)
- ttf-sil-scheherazadeAUR - Font Unicode arabici da SIL (AUR)
Cinese, Giapponese, Coreano, Vietnamita
Cinese (principalmente)
- wqy-microhei - Font in stile Sans-Serif, di alta qualità CJK. (AUR)
- wqy-zenhei - Font cinesi stile Hei Ti (sans-serif) con schema incorporato e bitmap Song Ti (supporto parziale caratteri giapponesi e coreani).
- ttf-arphic-ukai - Kaiti (colpo di pennello) Font Unicode (consigliato abilitare l'anti-aliasing)
- ttf-arphic-uming - Mingti (stampato) Font Unicode
- opendesktop-fonts - New Sung font, questo pacchetto prima si chiamava ttf-fireflysung.
- wqy-bitmapfont - "wqy-bitmapfont" Font cinese in stile Song Ti (serif)
- ttf-hannom - Font TrueType Cinese e Vietnamita
Giapponese
- ttf-sazanami - Set di Font giapponesi TrueType da alternare con la famiglia di font ttf-kochi.
- ttf-kochi-substituteAUR - Font giapponesi TrueType di alta qualità. Forniscono informazioni "bitmap hinting", quindi sono curati e non risultano frastagliati nella visualizzazione su schermi CRT.
- otf-ipafont - Set di font giapponesi gothic (san-serif) e Mincho (serif); uno dei font open source di migliore qualità. Di default su openSUSE-ja. (AUR)
- ttf-vlgothicAUR - Font giapponesi gothic. Default su Debian/Fedora/Vine Linux (AUR)
- ttf-monapoAUR - Font giapponesi per visualizzare correttamente 2channel Shift JIS art. (AUR)
Coreano
- ttf-baekmuk - Collezione di font coreani TrueType
Greco
Quasi tutti i font Unicode contengono il set di caratteri greci (polytonic incluso). Alcuni pacchetti di font aggiuntivi, che potrebbero non contenere il set completo Unicode ma utilizzano caratteri tipografici greci di alta qualità (e naturalmente anche latini) sono:
- otf-gfsAUR - Selezione di font OpenType dalla Greek Font Society (AUR)
- ttf-mgopenAUR - Font professionale TrueType da Magenta (AUR)
Ebraico
- culmusAUR - Ottima collezione di font in ebraico
Indiano
- ttf-freebanglafontAUR - Font per Bangla
- ttf-indic-otf - Collezione di font OpenType indi (contiene ttf-freebanglafont)
Khmer
- ttf-khmer - Font necessario per i grafi della lingua Khmer
- Hanuman[link interrotto 2020-08-02] (ttf-google-fonts-gitAUR)
Singalese
- ttf-lklugAUR - Font Unicode Sinhala (AUR)
Tamil
- ttf-tamilAUR - Font Unicode Tamil (AUR)
Math
- ttf-mathtypeAUR[broken link: package not found] - Font MathType (AUR)
- ttf-computer-modern-fontsAUR[broken link: package not found] - Segnalato come non aggiornato dal 2009-11-14 (AUR)
Microsoft fonts
Consultare MS Fonts.
Monospace
Ecco alcuni suggerimenti: ogni utente ha le proprie preferenze, quindi sperimentare un po' per trovare quello più consono ai propri gusti. Se non si ha voglia di provarli uno alla volta, c'è uno spunto di Dan Benjamin sul suo blog: Top 10 Programming Fonts.
Qui è visualizzabile una discreta lista di font suggeriti da Trevor Lowing: http://www.lowing.org/fonts/
TrueType
- Andalé Mono (ttf-ms-fontsAUR)
- Anonymous Pro (ttf-anonymous-pro)
- Bitstream Vera Mono (ttf-bitstream-vera)
- Consolas (ttf-vista-fontsAUR)
- Courier New (ttf-ms-fontsAUR)
- Cousine (ttf-google-fonts-gitAUR) - Sostituto di Chrome/Chromium OS per Courier New (compatibilità metrica)
- DejaVu Sans Mono (ttf-dejavu) - Unicode
- Droid Sans Mono (ttf-droid, inclusi in ttf-google-fonts-gitAUR)
- Envy Code R (ttf-envy-code-rAUR)
- FreeMono (gnu-free-fonts) - Unicode
- Inconsolata (ttf-inconsolata)
- Inconsolata-g (ttf-inconsolata-gAUR) - aggiunge qualche modifica di facile programmazione
- Liberation Mono (ttf-liberation) - Alternativa a Courier New (compatibilità metrica)
- Lucida Console (ttf-ms-fontsAUR)
- Lucida Typewriter (inclusi nel pacchetto jreAUR)
- Monaco (ttf-monacoAUR)
- Monofur (ttf-monofur)
Bitmap
- Default 8x16
- Dina (dina-font)
- Lime (artwiz-fontsAUR)
- ProFont (ttf-profont-iixAUR)
- Proggy Programming Fonts (proggyfontsAUR)
- Tamsyn (tamsyn-font)
- Terminus (terminus-font)
- Unifont (glifi come ಠ_ಠ (sguardo di disapprovazione)) (bdf-unifont)
Sans-serif
- Andika (ttf-andikaAUR, inclusi in ttf-sil-fontsAUR)
- Arial (ttf-ms-fontsAUR)
- Arial Black (ttf-ms-fontsAUR)
- Arimo (ttf-google-fonts-gitAUR) - Sostituto di Chrome/Chromium OS per Arial (compatibilità metrica)
- Calibri (ttf-vista-fontsAUR)
- Candara (ttf-vista-fontsAUR)
- Constantia (ttf-vista-fontsAUR)
- Corbel (ttf-vista-fontsAUR)
- DejaVu Sans (ttf-dejavu) - Unicode
- Droid Sans (ttf-droid, inclusi in ttf-google-fonts-gitAUR)
- FreeSans (gnu-free-fonts) - Unicode
- Impact (ttf-ms-fontsAUR)
- Liberation Sans (ttf-liberation) - Alternativa a Arial (compatibilità metrica)
- Liberation Sans Narrow (ttf-liberation) - Alternativa ad Arial Narrow (compatibilità metrica)
- Linux Biolinum (ttf-linux-libertine)
- Lucida Sans (ttf-ms-fontsAUR)
- Microsoft Sans Serif (ttf-ms-fontsAUR)
- PT Sans (ttf-google-fonts-gitAUR) - 3 varianti principali: normale, stretto, e didascalia- Unicode: Latino, Cirillico
- Tahoma (ttf-tahomaAUR)
- Trebuchet (ttf-ms-fontsAUR)
- Ubuntu Font Family (ttf-ubuntu-font-family)
- Verdana (ttf-ms-fontsAUR)
Script
- Comic Sans (ttf-ms-fontsAUR)
Serif
- Cambria (ttf-vista-fontsAUR)
- Charis (inclusi in ttf-sil-fontsAUR) - Unicode: Latino, Cirillico
- DejaVu Serif (ttf-dejavu) - Unicode
- Doulos (inclusi in ttf-sil-fontsAUR) - Unicode: Latino, Cirillico
- Droid Serif (ttf-droid, inclusi in ttf-google-fonts-gitAUR)
- FreeSerif (gnu-free-fonts) - Unicode
- Gentium (gentium-plus-font, inclusi in ttf-sil-fontsAUR) - Unicode: Latino, Cirillico, Greco, alfabeto fonetico
- Georgia (ttf-ms-fontsAUR)
- Liberation Serif (ttf-liberation) - Alternativa a Times New Roman (metric-compatible)
- Linux Libertine (ttf-linux-libertine) - Unicode: Latino, greco, cirillico, ebraico
- Times New Roman (ttf-ms-fontsAUR)
- Tinos (ttf-google-fonts-gitAUR) - Sostituto di Chrome/Chromium OS per Times New Roman (compatibilità metrica)
Assortiti
- ttf-google-fonts-gitAUR - una vasta collezione di font gratuiti (tra cui ubuntu, inconsolata, droid, ecc.)
- ttf-mph-2b-damaseAUR - Covers full plane 1 and several scripts
- ttf-sil-fontsAUR - Gentium, Charis, Doulos, Andika e Abyssinica da SIL (AUR)
- font-bh-ttfAUR - Font Xorg Luxi
- ttf-cheapskateAUR - Collezione di font di dustismo.com
- ttf-junicode - Caratteri junius contenenti una collezione di glifi medievali in alfabeto latino
- xorg-fonts-type1 — Set IBM Courier e Adobe Utopia per Font PostScript
Font per console
La console, ovvero un terminale in esecuzione senza X Window System, utilizza il carattere ASCII impostato come predefinito. Questo tipo di carattere e la mappa dei tasti utilizzati sono facilmente modificabili.
Un font per la console è limitato a 256 o 512 caratteri. I font si trovano in /usr/share/kbd/consolefonts/
.
I Keymaps, la connessione tra il tasto premuto e il carattere utilizzato dal computer, si trovano nelle sottodirectory di /usr/share/kbd/keymaps/
.
Anteprima e verifica
Purtroppo, nessuna libreria organizzata di immagini è disponibile per le anteprime dei font per la console. L'utente può tuttavia, usare setfont
per cambiare temporaneamente i caratteri e valutare se utilizzarli come predefiniti. I glifi o lettere disponibili nel carattere possono anche essere visti come una tabella con il comando showconsolefont
.
Se il font appena modificato non è adatto, è possibile il ripristino al font di default con il comando setfont
senza argomenti. Se la console è totalmente illeggibile, questo comando, setfont
, sarà ancora utile all'utente mentre "digita alla cieca".
Si noti che setfont
funziona solo sulla console attualmente in uso. Eventuali altre console, attive o inattive, rimangono inalterate.
Esempi
Modificare il carattere. Questo è un esempio rappresentativo:
$ setfont /usr/share/kbd/consolefonts/gr737b-9x16-medieval.psfu.gz
Oppure passare ad un carattere con 512 glifi e impostare la mappatura della tastiera a ISO 8859-5 per mezzo dell'opzione -m
:
$ setfont /usr/share/kbd/consolefonts/LatArCyrHeb-16.psfu.gz -m 8859-5
Poi impartire dei comandi per inviare messaggi di testo sul display, consultare magari una manpage, provare vi o nano e visualizzare la tabella dei glifi con il comando showconsolefont
.
Ritornare al font di default con:
$ setfont
Modificare il carattere predefinito
Per cambiare il font di default, le impostazioni CONSOLEFONT=
e CONSOLEMAP=
in /etc/rc.conf
devono essere modificate. Si ricorda ancora che i caratteri si trovano nella cartella /usr/share/kbd/consolefonts/
e i keymap si trovano nelle sottodirectory di /usr/share/kbd/keymaps/
.
Esempi
Per la visualizzazione di caratteri come Č, ž, đ, š or Ł, ę, ą, ś usando i font lat2-16.psfu.gz
:
CONSOLEFONT="lat2-16"
Ciò significa che la seconda parte dei caratteri ISO/IEC 8859 sono usati con il formato 16. È possibile modificare la dimensione del carattere usando altri valori come lat2-08...16. Per le regioni soggette alle specifiche 8859, vedere Wikipedia. Si possono usare i caratteri Terminus, consigliati se si lavora molto in console senza server X. Per esempio ter-216b è latin-2 part, dimensione 16, grassetto. ter-216n è lo stesso, ma con peso normale. I font Terminus hanno dimensioni fino a 32.
Ora, impostare il keymap corretto; per lat2-16 sarà:
CONSOLEMAP="8859-2"
Per utilizzare il carattere specificato nello userspace iniziale, cioè nelle prime fasi del processo di avvio, aggiungere il consolefont
abbinato a /etc/mkinitcpio.conf
:
HOOKS="base udev autodetect block filesystems consolefont keymap"
Poi ricompilare l'immagine:
# mkinitcpio -p linux
Consultare Mkinitcpio#HOOKS per maggiori informazioni.