- Questo topic ha 6 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 15 anni, 9 mesi fa da
egreg9.
-
CreatoreTopic
-
17 Novembre 2010 alle 13:23 #52509::
Ho un romanfont da accoppiare con un ttfont,
il quale è nettamente più grande. Posso creare
un set apposito di file per scalare il ttfont,
ma vorrei sapere una cosa. Come posso determinare
la “altezza” diciamo della lettera m di entrambi i font
per poi stabilire la percentuale esatta di scalatura
per renderle alte uguali? Perché scalare “a occhio”
.92 o .91 e simili non è il massimo e non garantisce
ovviamente l’esattezza del risultatoGrazie
M.
-
CreatoreTopic
-
AutoreRisposte
-
-
17 Novembre 2010 alle 13:33 #52510::
Ho un romanfont da accoppiare con un ttfont,
il quale è nettamente più grande. Posso creare
un set apposito di file per scalare il ttfont,
ma vorrei sapere una cosa. Come posso determinare
la “altezza” diciamo della lettera m di entrambi i font
per poi stabilire la percentuale esatta di scalatura
per renderle alte uguali? Perché scalare “a occhio”
.92 o .91 e simili non è il massimo e non garantisce
ovviamente l’esattezza del risultatoNon c’è un risultato “esatto”, quello che conta è la compatibilità visuale e qui conta certamente l’occhio.
Per esempio, le lettere di Computer Modern Typewriter sono nettamente più basse delle corrispondenti di Computer Modern Roman, in particolare le maiuscole. Se fossero grandi uguale le parti in Typewriter sarebbero troppo evidenti.
Visto che ti interessano i Bera Mono, fa’ qualche prova con
`\usepackage[scaled=x]{beramono}`
dando valori diversi a x in modo da vedere quale sembri meglio.Ciao
Enrico
-
7 Dicembre 2010 alle 14:39 #52511::
Ho un romanfont da accoppiare con un ttfont,
il quale è nettamente più grande. Posso creare
un set apposito di file per scalare il ttfont,
ma vorrei sapere una cosa. Come posso determinare
la “altezza” diciamo della lettera m di entrambi i font
per poi stabilire la percentuale esatta di scalatura
per renderle alte uguali? Perché scalare “a occhio”
.92 o .91 e simili non è il massimo e non garantisce
ovviamente l’esattezza del risultatoNon c’è un risultato “esatto”, quello che conta è la compatibilità visuale e qui conta certamente l’occhio.
Per esempio, le lettere di Computer Modern Typewriter sono nettamente più basse delle corrispondenti di Computer Modern Roman, in particolare le maiuscole. Se fossero grandi uguale le parti in Typewriter sarebbero troppo evidenti.
Visto che ti interessano i Bera Mono, fa’ qualche prova con
`\usepackage[scaled=x]{beramono}`
dando valori diversi a x in modo da vedere quale sembri meglio.Ciao
EnricoSalve.
Riesumo questa discussione (che tenevo d’occhio) perché ho provato a mettere insieme qualche comando per determinare
in prima (anche ultima se vogliamo) approssimazione, il valore da dare a scaled, facendo in modo da
avere la dimensione del font in Typewriter family leggermente minore di quella del font in Roman Family.I font che ho usato sono Utopia (pacchetto fourier) e Bera Mono (con Computer Modern e Bera Mono non funziona).
Il codice è:
`\documentclass[10pt]{book}\usepackage{fourier}
\usepackage{beramono}
\usepackage{siunitx}\newsavebox{\calcboxnorm}
\sbox\calcboxnorm{x}\newsavebox{\calcboxtt}
\sbox\calcboxtt{\texttt{x}}\begin{document}
\begin{center}
\begin{tabular}{lcS}
Roman Family & x & \the\ht\calcboxnorm\\
Typewriter Family & \texttt{x} & \the\ht\calcboxtt \\
\end{tabular}
\end{center}\end{document}`
I risultati sono 4.3045pt e 5.58998pt rispettivamente.
Pertanto per determinare un ragionevole valore della x:
`4.3045 pt / 5.58998 pt = 0.770038533`
approssimato per difetto a 0.77.Il codice diventa
`\documentclass[10pt]{book}
\usepackage{fourier}
\usepackage[scaled=0.77]{beramono}
\usepackage{siunitx}\newsavebox{\calcboxnorm}
\sbox\calcboxnorm{x}\newsavebox{\calcboxtt}
\sbox\calcboxtt{\texttt{x}}\begin{document}
\begin{center}
\begin{tabular}{lcS}
Roman Family & x & \the\ht\calcboxnorm\\
Typewriter Family & \texttt{x} & \the\ht\calcboxtt \\
\end{tabular}
\end{center}\end{document}`
i valori invece, 4.3045pt e 4.3043pt rispettivamente.I comandi per determinare quelle grandezze li ho presi da qui .
Ciao,
ansys.
-
7 Dicembre 2010 alle 17:52 #52512::
Molto interessante. Io ho fatto un’altra prova con questo programmino:
`
\documentclass{article}\usepackage{fourier}
\usepackage{beramono}\makeatletter
\newcommand*\scriviocchio[1][\normalfont]{{#1\setlength{\dimen@}{1ex}\the\dimen@}}
\newcommand*\scrivixheight[1][\normalfont]{\settoheight{\dimen@}{#1 x}\the\dimen@}
\begin{document}\centering
\begin{tabular}{lcrr}
Roman & x & \scriviocchio[\rmfamily] & \scrivixheight[\rmfamily]\\
Typewriter & \ttfamily x & \scriviocchio[\ttfamily] & \scrivixheight[\ttfamily]
\end{tabular}
\end{document}
`A parte i nomi delle macro scelti senza pensare al loro significato letterale, \scriviocchio dovrebbe scrivere il valore della x-height, propagandato come l’altezza della lettera “x”, mentre \scrivixheight stampa la vera altezza della lettera x.
Ho provato prima commentando le chiamate ai due pacchetti fourier e beramono e ho ottenuto effettivamente l’uguaglianza della x-height e dell’altezza della “x” sia con il tondo proporzionale sia per il tondo a spaziatura fissa, tutti valori di 4,30554pt per entrambi i font e per entrambe le grandezze. Notare bene che questi valori sono tutti scritti dentro il file .tfm dei rispettivi font, non sono le altezze vere dei disegni di singoli glifi, ma i CM sono creati in questo modo e l’occhio ne è soddisfatto perché il typewriter più scuro richiede un occhio vero leggermente più piccolo.
Poi ho tolto i commenti dai due pacchetti e ho quindi confrontato il tondo a spaziatura variabile di utopia con il typewriter di beramono; i numeri sono tutti diversi:
`
1ex x-height
Roman 4.40000pt 4.60999pt
Typewr. 5.46999pt 5.58998pt
`Ora il rapporto delle due grandezze “1ex” sarebbe 0.804 mentre il rapporto fra le due altezze x-height sarebbe 0.825. Non mi spiego alcuni valori ottenuti con questo programmino da quelli ottenuti da @ansys. Tuttavia, a meno che io non ci abbia messo errori che non vedo, questo piccolo esperimento mostra i diversi criteri di disegno dei CM che hanno le stesse metriche, ma i disegni sono già corretti e i CM (EC, LM, eccetera) formano una famiglia/collezione coerente di font. Mentre gli utopia e i bera mono sono stati disegnati da persone diverse in tempi diversi per scopi diversi; è chiaro che si può usare il rapporto 0.77 determinato da @ansys oppure i rapporti 0,81 0 0,82 determinati con questo programmino o anche altri valori; il giudizio definitivo lo dà l’occhio di chi esegue la composizione, ma in definitiva l’occhio di chi legge.
Personalmente penso che se il rapporto è così lontano da 1 i due font non vadano bene d’accordo assieme; infatti se si rimpicciolisce il beramono di circa il 20% c’è il pericolo che il beramono risulti sì della grandezza giusta, ma troppo chiaro rispetto all’altro font non rimpicciolito. Tuttavia io sono solo un dilettante, quindi non mi sogno assolutamente di dire che che utopia e beramono stiano assieme come i cavoli a merenda. Per fare affermazioni apodittiche come questa bisogna avere esperienza e senso estetico, che io di sicuro non ho.
-
7 Dicembre 2010 alle 18:39 #52513::
[quote]Ho un romanfont da accoppiare con un ttfont,
il quale è nettamente più grande. Posso creare
un set apposito di file per scalare il ttfont,
ma vorrei sapere una cosa. Come posso determinare
la “altezza” diciamo della lettera m di entrambi i font
per poi stabilire la percentuale esatta di scalatura
per renderle alte uguali? Perché scalare “a occhio”
.92 o .91 e simili non è il massimo e non garantisce
ovviamente l’esattezza del risultatoNon c’è un risultato “esatto”, quello che conta è la compatibilità visuale e qui conta certamente l’occhio.
Per esempio, le lettere di Computer Modern Typewriter sono nettamente più basse delle corrispondenti di Computer Modern Roman, in particolare le maiuscole. Se fossero grandi uguale le parti in Typewriter sarebbero troppo evidenti.
Visto che ti interessano i Bera Mono, fa’ qualche prova con
`\usepackage[scaled=x]{beramono}`
dando valori diversi a x in modo da vedere quale sembri meglio.Ciao
EnricoSalve.
Riesumo questa discussione (che tenevo d’occhio) perché ho provato a mettere insieme qualche comando per determinare
in prima (anche ultima se vogliamo) approssimazione, il valore da dare a scaled, facendo in modo da
avere la dimensione del font in Typewriter family leggermente minore di quella del font in Roman Family.I font che ho usato sono Utopia (pacchetto fourier) e Bera Mono (con Computer Modern e Bera Mono non funziona).
Il codice è:
`\documentclass[10pt]{book}\usepackage{fourier}
\usepackage{beramono}
\usepackage{siunitx}\newsavebox{\calcboxnorm}
\sbox\calcboxnorm{x}\newsavebox{\calcboxtt}
\sbox\calcboxtt{\texttt{x}}\begin{document}
\begin{center}
\begin{tabular}{lcS}
Roman Family & x & \the\ht\calcboxnorm\\
Typewriter Family & \texttt{x} & \the\ht\calcboxtt \\
\end{tabular}
\end{center}\end{document}`
I risultati sono 4.3045pt e 5.58998pt rispettivamente.
Pertanto per determinare un ragionevole valore della x:
`4.3045 pt / 5.58998 pt = 0.770038533`
approssimato per difetto a 0.77.Il codice diventa
`\documentclass[10pt]{book}
\usepackage{fourier}
\usepackage[scaled=0.77]{beramono}
\usepackage{siunitx}\newsavebox{\calcboxnorm}
\sbox\calcboxnorm{x}\newsavebox{\calcboxtt}
\sbox\calcboxtt{\texttt{x}}\begin{document}
\begin{center}
\begin{tabular}{lcS}
Roman Family & x & \the\ht\calcboxnorm\\
Typewriter Family & \texttt{x} & \the\ht\calcboxtt \\
\end{tabular}
\end{center}\end{document}`
i valori invece, 4.3045pt e 4.3043pt rispettivamente.I comandi per determinare quelle grandezze li ho presi da qui .[/quote]
Io ottengo un valore di 0.80438 confrontando 1ex nei due font. Confrontando le x invece ottengo 0.82469. Evidentemente lo sviluppatore di BeraMono voleva che l’altezza delle minuscole fosse minore della misura di 1ex.Un modo per avere la scelta in automatico è
`documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{fourier}
\usepackage{calc}
\begingroup\makeatletter
\fontsize{10}{10}\rmfamily\dimen0=1ex
\font\test=fvmr8t \test\dimen2=1ex
\setlength{\dimen@}{\p@*\ratio{\dimen0}{\dimen2}}
\edef\x{\endgroup
\noexpand\usepackage[scaled=\strip@pt\dimen@]{beramono}}
\x`
Uso la dimensione 1ex per rispettare l’evidente volontà dell’autore di BeraMono. 🙂Ciao
Enrico
-
7 Dicembre 2010 alle 19:49 #52514::
Grazie ad entrambi per le risposte.
Tra le altre cose, pur non sapendo quanto sia lecito, ho provato con:
`\documentclass{book}\usepackage{fourier,pifont}
\usepackage{beramono}
\usepackage{siunitx}\newsavebox{\calcboxnorm}
\sbox\calcboxnorm{1ex}\newsavebox{\calcboxtt}
\sbox\calcboxtt{\texttt{1ex}}\begin{document}
\begin{center}
\begin{tabular}{lcS}
Roman Family & x & \the\ht\calcboxnorm\\
Typewriter Family & \texttt{x} & \the\ht\calcboxtt \\
\end{tabular}
\end{center}\end{document}`
ed ottengo 0.859 (arrotondato).
In ultima analisi? Stiamo dando i numeri! 😀A parte questo gioco di parole, anche io (ovviamente) non so del perché e del per come si hanno questi
numeri tutti diversi. Probabilmente la soluzione dell’arcano sta in quello che dice egreg9.Da questo topic ho, se non altro, del materiale su cui studiare, cioè le vostre macro.
Ovviamente io ho accostato i due font senza nessun motivazione precisa: non ho esperienza e senso estetico. Questione solamente di gusti.
Grazie mille,
ansys.P.s.: Il topic non stava meglio in TeX e LaTeX?
-
7 Dicembre 2010 alle 20:22 #52515::
Grazie ad entrambi per le risposte.
Tra le altre cose, pur non sapendo quanto sia lecito, ho provato con:
`\documentclass{book}\usepackage{fourier,pifont}
\usepackage{beramono}
\usepackage{siunitx}\newsavebox{\calcboxnorm}
\sbox\calcboxnorm{1ex}\newsavebox{\calcboxtt}
\sbox\calcboxtt{\texttt{1ex}}\begin{document}
\begin{center}
\begin{tabular}{lcS}
Roman Family & x & \the\ht\calcboxnorm\\
Typewriter Family & \texttt{x} & \the\ht\calcboxtt \\
\end{tabular}
\end{center}\end{document}`
ed ottengo 0.859 (arrotondato).
In ultima analisi? Stiamo dando i numeri! 😀A parte questo gioco di parole, anche io (ovviamente) non so del perché e del per come si hanno questi
numeri tutti diversi. Probabilmente la soluzione dell’arcano sta in quello che dice egreg9.Da questo topic ho, se non altro, del materiale su cui studiare, cioè le vostre macro.
Ovviamente io ho accostato i due font senza nessun motivazione precisa: non ho esperienza e senso estetico. Questione solamente di gusti.
Grazie mille,
ansys.P.s.: Il topic non stava meglio in TeX e LaTeX?
Hai semplicemente confrontato l’altezza del carattere 1 nel font Utopia e in BeraMono. Avresti dovuto dire \sbox\calcboxnorm{\vrule height 1ex} per fare quello che speravi.
Il filone, all’inizio, andava bene qui.
Ciao
Enrico
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.