Conoscere le caratteristiche OpenType di un font

In questo blog ci sono diversi articoli presentando font liberi e parlando delle loro caratteristiche OpenType. La domanda sorge spontanea: come si fa a capire quali caratteristiche OpenType si trovano in un font qualsiasi?

Oggi presenterò un modo valido e semplice per gli utenti Linux: il terminale virtuale.

Tutto si può fare con l’istruzione «otfinfo» che viene nel pacchetto «lcdf typetools» (nel mio sistema viene con texlive-lcdftypetools). L’uso risulta molto semplice:

otfinfo <opzione> /path/per/il/font

L’opzione -s ci darà le lingue supportate per il font mentre che -f ci darà quali opzioni sono disponibili.

Bisogna ricordare che se nel «path» del font si trova uno spazio bisogna aggiungere una barra prima.

Per esempio, per conoscere cosa offre il font Sukhumala Regular.otf istallato nella cartella ~/.fonts/s/ semplicemente si scrive nel terminale virtuale

otfinfo -f ~/.fonts/s/Sukhumala\ Regular.otf

che ci darà

afrc Alternative Fractions
c2pc Petite Capitals From Capitals
c2sc Small Capitals From Capitals
case Case-Sensitive Forms
clig Contextual Ligatures
dlig Discretionary Ligatures
dnom Denominators
fina Terminal Forms
frac Fractions
hlig Historical Ligatures
kern Kerning
liga Standard Ligatures
nalt Alternate Annotation Forms
numr Numerators
onum Oldstyle Figures
ordn Ordinals
ornm Ornaments
pcap Petite Capitals
salt Stylistic Alternates
sinf Scientific Inferiors
smcp Small Capitals
subs Subscript
sups Superscript

cioè, tutte le opzioni disponibili.

Per conoscere tutto ciò che ci offre il programma otfinfo è sufficiente scrivere

otfinfo -h

Con la lista pronta soltanto rimane prendere LibO Writer 5.3+ per provare come si vede, oppure utilizzare il servizio offerto da Pablo Impallari

«Trascinando» il file del font lì avremmo la possibilità di provare come si vede con le diverse opzioni OpenType.

Il codice di questo servizio può essere scaricato da GitHub per utilizzarlo localmente.

Il font Eau de Garamond

Abbinare tipografie in modo armonioso è un arte difficile. Alcuni sviluppatori ci offrono delle «famiglie» di font, come Libertinus, Source pro, eccetera. Ma quale font «sans» si abbina con un «garamond»? Dalla gente che produce Cormorant arriva una proposta interessante:

Eau de Garamond

Questo font è uno sviluppo originale di Christian Thalmann che prende i concetti di Claude Garamond e li «distilla» per creare un font senza grazie veramente unico:

Cosi si vede insieme a EBGaramond e Cormorant Garamond

Il progetto si trova ancore nelle prime tappe di sviluppo e pertanto non ha un «release ufficiale», ma si può scaricare dal repositorio (il bottone Clone or download) e così ottenere l’ultima versione di sviluppo.

Più sul supporto OpenType in LibreOffice 5.3+

Un paio di messi fa ho commentato che LibO 5.3ci ha regalato il supporto OpenType completo. Questo certamente vuol dire che la prossima edizione di certo libro (quando arrivi) verrà con il capitolo sulla tipografia completamente riscritto… E beh, mentre aspettiamo ho pensato che sarebbe una buona idea scrivere un articolo più dettagliato sull’argomento.

Per utilizzare le specialità OpenType in LibO 5.3+ si deve aggiungere una «etichetta» al nome del font. Per esempio, per attivare simultaneamente i set stilistici 1 e 11 in Vollkorn, quando viene selezionato il font per il testo doviamo scrivere

Vollkorn:ss01&ss11

I due punti iniziano la «sezione delle etichette» nel nome del font e il segno & separa le etichette utilizzate.

Però c’è di più. Si può anche disabilitare qualche opzione del font. Per esempio, il font Sukhumala ha delle strane legature contestuali che sostituiscono aa con ā, ii con ī e uu con ū. Per disabilitare le legature contestuali in Sukhumala è sufficiente chiamare l’etichetta corrispondente a quella caratteristica, «clig», con un meno davanti:

Sukhumala:-clig

Tutto lì. Certamente non è un sistema user friendly, specialmente considerando che la casella per il nome del font può risultare un tanto piccolo per presentare il nome completo del font con tutte le etichette… ma funziona! E questo è molto meglio di quello che (non) c’era prima: un passo alla volta, che così si arriva!

Come sempre, per una lista delle etichette OpenType disponibili la pagina di Dario Taraborelli risulta un magnifico punto di riferimento.

Solo una cosa da considerare: non tutti i font presentano queste specialità! Dunque, se dopo aver aggiunto un’etichetta niente è cambiato molto probabilmente il problema sia del font e non di LibO 😉

Cormorant: una «garamond per i titoli»

Oggi vi porto una famiglia di font con licenza libera (SIL) ispirata nei classici disegni di Claude Garamond, la quale è stata pensata specialmente per essere utilizzata in testo di grandi dimensioni (titoli, eccetera):

Cormorant, di Christian Thalmann.

Il font presenta un elevato contrasto e numerosi dettagli fini. Si presenta inoltre in più varianti:

Cormorant-2

Ognuna di queste versioni si presenta in diversi «pesi», dal leggero al grassetto, normali e in corsivo.

Il font offre vero maiuscoletto, sia come caratteristica OpenType che in un font indipendente. Ci offre anche legature tipografiche, set stilistici, varianti… la lista è importante!

È possibile scaricare questo font dalla pagina GitHub del progetto, ma risulta importante notare che il file Cormorant_Install_vX.Y.zip offre soltanto le versioni ttf dei font: per ottenere gli otf è necessario scaricare il file che dice «source code», il quale viene con i ttf, otf, woff e codice sorgente.

Dato che è un font peri  titoli bisogna abbinarlo a un altro font per il testo, per esempio EB Garamond oppure Flanker Griffo.

LyX: Rinominando le «Parti» e i «Capitoli»

Immaginiamo di dover scrivere un libro con LyX, scegliendo ad esempio il documentclass «Book».

In  questo modo ci saranno a nostra disposizione diversi «ambienti», tra i quali i sezionamenti Capitolo (comando LaTeX \chapter{}) per separare le diverse parti dell’opera e Parte (comando LaTeX \part{}) per raggruppare capitoli.

Ma se invece di separare in «parti» noi vogliamo utilizzare «libri»? E se invece di «Capitolo 1: Titolo scelto» ci piacerebbe di avere «Giorno 1: Titolo scelto»? Come si fa questo?

La forma più semplice è andare nel preambolo LaTeX (Documento → Impostazioni → Preambolo LaTeX) e aggiungere

\usepackage[italian]{babel}
\addto\captionsitalian{
  \renewcommand{\partname}{Libro}
  \renewcommand{\chaptername}{Giorno}
}

In un senso qui stiamo «ingannando» LaTeX con l’aiuto di Babel (il programma per gestire le opzioni relazionate con la lingua del documento), dicendole che invece di utilizzare le traduzione predeterminate per Part e Chapter utilizzi quelle da noi fornite.

Infatti, se non vogliamo niente lì semplicemente lasciamo le seconde parentesi graffe vuote:

\renewcommand{\partname}{}

ci darà soltanto il numero e il titolo da noi scritto, senza etichette.

Nella finestra di lavoro di LyX nulla cambierà, ma nel PDF compilato tutto sarà come vogliamo noi.

Testo verticale in Writer

A volte risulta necessario presentare testo verticale, per esempio nella intestazione di una tabella. Purtroppo Writer non ci aiuta molto in questo lavoro e tutte le soluzioni presentano dei problemi. Vediamo quali sono i metodi disponibili e le loro difficoltà.

Testo verticale da su in giù

Questa situazione è la più semplice da risolvere.

Con delle cornici

Inserendo una cornice (Inserisci → Cornice → Cornice), nella scheda Opzioni risulta possibile definire diverse proprietà della cornice. Lì si deve scegliere, sotto Proprietà → Direzione del testo «Da destra a sinistra (verticale)» (vi lascio giocare con le altre opzioni… non è che servano a un gran ché 😉 ).

Questa opzione da controllo completo del testo, perché rispetta tutto ciò che viene definito nello stile di paragrafo, compresa l’interlinea… ma, come potete comprovare, solo serve per testo da su in giù, mai nella direzione opposta.

Con delle tabelle

Si procede in modo simile a quello commentato per le cornici, con la differenza che prima doviamo selezionare le celle e poi con un clic destro → Proprietà tabella → scheda Flusso di testo per Orientazione del testo si sceglie Da destra a sinitra (verticale). Questo metodo ha le medesime limitazioni delle cornici.

Testo verticale da giù in su

I metodi precedenti purtroppo non funzionano. Per avvicinarci a questa impostazione nell’intestazione di una tabella, doviamo modificare lo stile di paragrafo utilizzato nelle celle corrispondenti.

Prima di tutto, nella scheda Allineamento sotto Testo a testo si deve scegliere In basso. Questo risulta importante perché altrimenti il testo risulterà centrato nella cella.

Nella scheda Posizione, sotto Rotazione/scala si sceglie 90 gradi.

Tutto pronto.

Limitazioni

Dato che questo «effetto» di rotazione si applica sui caratteri, per avere più righe nella cella dovremo inserire un interruzione linea (Maiuscolo-Invio). Inoltre, modificare l’interlineato non avrà effetto sulla separazione tra le righe di testo.

Alternativa: casella di testo

Attivando la barra degli strumenti di disegno ci sarà l’opzione di inserire una casella di testo, ancorandola per esempio in una cella di una tabella. Se a continuazione utilizziamo la barra laterale per ruotare questo oggetto potremo darli un angolo arbitrario.

Limitazioni

Le caselle di testo non permettono l’utilizzo di stili di paragrafo: tutta la formattazione del testo dovrà realizzarsi tramite formattazione diretta.

Conclusioni

In realtà non è che si può dire molto di più di «è quello che c’è»… ma almeno funziona.

Schermata d’obbligo:

vertical

Nuovo in LibO Math 5.3: integrali «dinamiche»

Certo, l’istruzione compare in 5.2 e perciò non è proprio qualcosa di «nuovo», ma solo in 5.3 comincia a funzionare correttamente (accetta dei limiti…):

math-intd-530

L’istruzione intd indica un’integrale «dinamica» che modifica le sue dimensioni a seconda dell’argomento, in contrasto con l’istruzione int normale che ci da sempre un’integrale piccola, come vediamo nella schermata.

Nella mia opinione il risultato non è ancora perfetto (l’integrale diventa troppo «grassetto» quando cresce: sarebbe necessario l’avere diversi segni per diverse larghezze), ma risulta un passo importante nella direzione giusta.

I font DejaVu

La

famiglia di font DejaVu

è un discendente diretto di Bitstream Vera… e indiretto anche, che con il tempo ha incorporato altri progetti basati su Vera.

L’obiettivo principale del progetto è coprire il meglio possibile il mappa Unicode. Offre sei varianti

DejaVu Serif

DejaVu-1

DejaVu Serif Condensed (una versione più «stretta» della precedente)

DejaVu Sans

DejaVu-2

DejaVu Sans Condensed (una versione più «stretta» della precedente)

DejaVu Sans Light (una versione con linee più «magre» della precedente)

DejaVu Sans Mono

DejaVu-3

A partire della versione 2.36 questa famiglia di font include un contributo del gruppo GUST (utenti LaTeX di Polonia): il font matematico DejaVu Math TeX Gyre.  Questo font include la tabella OpenType Math e perciò può essere utilizzata con unicode-math per scrivere formule in XeTeX/LuaTeX.

DejaVuMath

Aldilà di alcune legature tipografiche basiche, questi font non offrono caratteristiche OpenType avanzate. In future versioni si avrà numerali di stile antico e vero maiuscoletto, ma non è detto quando.

Anche se non offre tante funzioni avanzate (al meno per il momento), la sua ampia copertura delle tabelle unicode, il suo disegno «generoso» (il corpo ampio rispetto delle linee ascendenti o discendenti) che la tornano leggibile in qualsiasi situazione e il fatto di essere una «famiglia» che offre un aspetto coerente in tutte le sue varianti li dona un grande interesse ai font DejaVu. Per tenerla presente nei nostri progetti.

L’ultima versione del font può essere scaricata dalla pagina GitHub del progetto.

Writer: Tabelle vs. Tabulatori

Immaginiamo di dover scrivere un testo che sia una «definizione», cioè, un breve testo (forse anche una parola) «da definire» separato da un altro a destra che sia «la spiegazione». Ci sono due metodi per costruire questo in un documento Writer, entrambi presentati nella seguente schermata:

tab-tabla

Notate la differenza? Vero che no? E invece il modo in cui le due «definizioni» sono costruite è diverso.

Entrambi i metodi hanno pregi e difetti. Andiamo a vedere i dettagli.

Tabelle

È il metodo più evidente. Viene creata una tabella a due colonne senza bordi. La tabella viene configurata (clic destro → Proprietà tabella → scheda Bordi) per far si che la Distanza dal contenuto sia zero e si fissano le larghezze delle colonne (scheda Colonne) ai valori necessari.

Pro:

  • Risulta semplice da creare
  • È possibile utilizzare degli stili di paragrafo diversi per ogni colonna
  • Se il testo «da definire» è più lungo della colonna questo verrà distribuito in più righe automaticamente
  • Per più «definizioni» una dopo l’altra, semplicemente si aggiungono più righe alla tabella

Contro:

  • Con più «definizioni» (più righe) risulta difficile modificarne l’ordine
  • Non è così semplice muovere una tabella
  • Dato che il creare stili di tabelle continua ad essere difficile questo metodo non è proprio pratico se si deve utilizzare più volte nel documento

Tabulatori

Sia nella definizione di uno stile di paragrafo oppure come formattazione diretta di un paragrafo qualsiasi, nella scheda Tabulazioni si definisce un tabulatore a, per esempio, 3 cm. Nella scheda Rientri e spaziature si definisce un rientro Prima del testo di, continuando con l’esempio, 3 cm e un rientro di Prima riga di −3 cm (negativo). Quando viene scritto il paragrafo semplicemente si inserisce una tabulazione tra il testo «da definire» e la sua «definizione».

Pro:

  • Risulta più semplice di configurare che una tabella
  • Utilizzando stili si può ripetere la formattazione senza fatica
  • È molto semplice muovere il testo con i tasti rapidi Ctrl-Alt-Freccia in su / in giù, come con qualsiasi paragrafo in Writer

Contro:

  • Il testo «da definire» e la sua «definizione» formano parte di un unico paragrafo e perciò dovremo utilizzare stili di carattere oppure formattazione diretta (ouch!) per differenziarli
  • Il testo «da definire» non può trovarsi in più righe e se troppo lungo potrebbe «spingere» il tabulatore a destra dando problemi di formattazione

Conclusione

In questo articolo si confrontano i vantaggi e i problemi di utilizzare sia tabelle che tabulatori per creare una formattazione determinata. Nessuno dei due metodi è perfetto, ma entrambi funzionano.

Ognuno scelga il proprio veleno 😉

Pausa

Breve notizia: questo pinguino deve cambiare alloggio.

Questo vuol dire che dovrò limitare (e persino fermare) la mia presenza «on-line» fino a quando non sia tutto pronto sul nuovo posto e, più importante, il nuovo collegamento internet non sia pronto 😉

Cioè, niente nuovi articoli per un po’!

Vi saluto per il momento e ci ritroviamo in tempi più tranquilli!