Transcript
8/14/2019 Latin Modern fonts at eleventh hour
1/37
Latin Modern fonts
at eleventh hour
Brno, November,
Bogusaw Jackowski
8/14/2019 Latin Modern fonts at eleventh hour
2/37
aaaaaaaaaaaaaaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Latin Modern fonts: what are they?
A olletion of fonts (urrently )in the POSTSCRIPT Type and OTF formats,
based on the Computer Modern fonts, equippedwith a rich repertoire of diacritical characters
AvailabilityCTAN, for example:ftp://ftp.dante.de/tex-archives/fonts/lm
current version: ..number of glyphs: (ca per font)
licence: openware, LPPL-basedmaintainers: B. Jackowski and J. M. Nowacki, GUST
8/14/2019 Latin Modern fonts at eleventh hour
3/37
aaaaaaaaaaaaaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Latin Modern fonts: what are they for?
The Latin Modern project, launched bylocal TEX users groups in Spring 2002,
aimed at the collection of multilingual Latin-basedfonts that could be used as a default font family
in the realm of TEX.
Moreover, being distributed in bothPOSTSCRIPT Type 1 and OTF formats,
the Latin Modern fonts can be used in any system
that supports these formats.
8/14/2019 Latin Modern fonts at eleventh hour
4/37
aaaaaaaaaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Why Latin Modern fonts?
Other possibilities:
Computer Modern fonts (D. E. Knuth, )obsolete because of the lack of diacritical characters
EC fonts (J. Knappen and N. Schwartz, )obsolete because of the lack of outline fonts
CM-Super family (V. Volovich, )
very large and difficult to maintain
8/14/2019 Latin Modern fonts at eleventh hour
5/37
aaaaaaaaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The Latin Modern distribution
POSTSCRIPT Type 1 fonts, produced byMETATYPE1 (METAPOST engine plusa bunch of AWK scripts)
OpenType fonts, prepared using Adobe Font
Development Kit for OpenType (implementedfeatures: liga, onum, cpsp, dlig, frac)
Support for TEX (.tfm files)
Support for dvips and pdfTEX (.map and .enc files)
Support for LATEX (.fd and .sty files) Substitutions (partial, of course) for CM, PL, CS, VN;
the idea: to use the original TFM files with the relevantLatin Modern PFB files and dvips requisites
METATYPE1
sources
8/14/2019 Latin Modern fonts at eleventh hour
6/37
aaaaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The Latin Modern distribution:
the collection of fonts Fonts occurring both in LMs and CMs (50)
lmb lmbx lmbx lmbx lmbx lmbx lmbx lmbx lmbxi lmbxolms lmr lmr lmr lmr lmr lmr lmr lmrlmri lmri lmri lmri lmri lmro lmro lmro lmrolmss lmss lmss lmss lmss lmsso lmsso lmsso lmsso lmssolmssbx lmssd lmssq lmssqolmts lmtt lmtt lmtt lmtt lmtti lmtto lmvtt
Fonts present in LMs and absent from CMs (19)lmbo lmso lmro lmssbo lmssdo lmssqbx lmssqbo
lmtso lmtk lmtko lmtl lmtlo lmtl lmtlolmvtk lmvtko lmvtl lmvtlo lmvtto
Fonts absent from LMs and present in CMsmath companion (!)cmdunh cmff cmfi cmfib cminch cmtex cmtex cmtex cmu
8/14/2019 Latin Modern fonts at eleventh hour
7/37
aaaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Latin Modern distribution:
dark and light typewriter fonts
lmtl10 (light): abcdefABCDEF012345
lmtt10 (normal): abcdefABCDEF012345
lmtk10 (dark): abcdefABCDEF012345 lmtlc10 (light condensed): abcdefABCDEF012345 lmvtl10 (light): abcdefABCDEF012345
lmvtt10 (normal): abcdefABCDEF012345
lmvtk10 (dark): abcdefABCDEF012345
plus all oblique variants
8/14/2019 Latin Modern fonts at eleventh hour
8/37
aaaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The Latin Modern distribution:
encodingsThe LM package provides TEX font metric files for:
EC (Cork) encoding (ec-.tfm)
EL (European Letters aka dense) encoding, el-.tfm(originally introduced by the ConTEXt fraternity)
QX (GUST) encoding, qx-.tfm
Y&Ys TEXnANSI aka LY1 encoding, texnansi-.tfm
T5 (Vietnamese) encoding, t5-.tfm Text Companion for EC fonts aka TS1, ts1-.tfm
8/14/2019 Latin Modern fonts at eleventh hour
9/37
aaaaa
cc ce ee ee ee ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The Latin Modern distribution:
the collection of glyphs
Aa
& ^~*@Bb\ | { } [ ] Cc : , Dd $ E e 8 = ! F f
ff ffifflfi5 fl 4 Gg
8/14/2019 Latin Modern fonts at eleventh hour
10/37
aaaa
cc cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The Latin Modern distribution:
the collection of glyphs
` > Hh - I i
J j Kk L l
8/14/2019 Latin Modern fonts at eleventh hour
11/37
aaa
cc cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The Latin Modern distribution:
the collection of glyphs
S s ; 7 6 /
T t 3 2 U u _ V v W w
X x Y y Z z 0
8/14/2019 Latin Modern fonts at eleventh hour
12/37
aa
cc cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Who is to be blamed for the plentitude
of diacritical characters?Six hundred years ago people tried to avoid them:
Ztyechto kuow myey nauczenye kterak mazywbyty awey duy propyety /Prwy kuzlaty / ktoz da geden halerz
Z techto kusv mej naucenie, kterak mas zivbyti a svej dusi prospeti.Prvy kus zlaty: Ktoz da jeden haler. . .
Jan Hus (), Devet zlatych kusu
8/14/2019 Latin Modern fonts at eleventh hour
13/37
a
cc cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Who is to be blamed for the plentitude
of diacritical characters?
Mistr Jan HusOrthographia Bohemica
Alois Vojtech Sembera, Mistra Jana Husiortografie ceska. Vydal Alois Vojtech Sembera.Ve Vidni , s. (v Archvu hl. m. Prahy?)
8/14/2019 Latin Modern fonts at eleventh hour
14/37
cc cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
What can be found in the Internet
about hacek? It was introduced by Jan Hus (probably)
HACEK can be acute to your heart...
The acronym HACEK refers to a groupingof gram-negative bacilli:Haemophilus species,Actinobacillus actinomycetemcomitans,Cardiobacterium hominis,
Eikenella corrodens,Kingella species.These organisms are responsible for acuteheart diseases.
8/14/2019 Latin Modern fonts at eleventh hour
15/37
a
cc cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
What can be found in the Internet
about hacek? It was introduced by Jan Hus (probably)
HACEK can be acute to your heart...
Which, in a way, agrees with D. E. Knuthsanticipation:
Type design can be hazardous [...] Once you gethooked, you will develop intense feelings aboutletterforms; the medium will intrude
on the messages that you read. And you willperpetually be thinking of improvementsto the fonts that you see everywhere, especiallythose of your own design.
Isnt it a heart disease?
8/14/2019 Latin Modern fonts at eleventh hour
16/37
c cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
How the Latin Modern family was created?
METATYPE1
source(and report)
PostScript
Type 1 font
Gawk
T1Utils
METATYPE1
source
METAPOST
output(tfm, eps, aux)
PostScript
Type 1 font
METAPOST
Gawk
T1Utils
8/14/2019 Latin Modern fonts at eleventh hour
17/37
cee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The structure of a Latin Modern source:
a driver file (lmr10)
1. % LATIN MODERN font: a driver file for lmr102. input fontbase;3. vardef cm_pal = "cmr10" enddef;
4. input comm_mac; % common defs, CM params5. input comm_mph; % common header6. input lmr10.mpm; % metric data7. input lmr10.mph; % PS-oriented header8. beginfont9. input lmr10.mpg; % frozen glyphs
10. input comm_mpg; % common glyphs (mainly diacritics)
11. if known generating: % optimize proofing time12. input lmr10.mpl; % ligatures and kerns13. fi14. endfont15. %%%% EOF
8/14/2019 Latin Modern fonts at eleventh hour
18/37
ee eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
The structure of a Latin Modern source:
a boring excerpt from the file comm_
mpg.mp(common glyphs)
. . .
%% \vb\- Aacute:\- \PICT{Aacute}\-acc_glyph(_A)(_Acute)(_Aacute);
%% \vb\- aacute:\- \PICT{aacute}\-acc_glyph(_a)(_acute)(_aacute);
%% \vb\- Abreve:\- \PICT{Abreve}\-acc_glyph(_A)(_Breve)(_Abreve);
%% \vb\- abreve:\- \PICT{abreve}\-acc_glyph(_a)(_breve)(_abreve);
%% \vb\- Abreveacute:\- \PICT{Abreveacute}\-acc_glyph(_A)(_breveacute)(_Abreveacute);
%% \vb\- abreveacute:\- \PICT{abreveacute}\-acc_glyph(_a)(_breveacute)(_abreveacute);. . .
8/14/2019 Latin Modern fonts at eleventh hour
19/37
e eee eee eee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
A few examples of less boring
accented characters
8/14/2019 Latin Modern fonts at eleventh hour
20/37
eee eee e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
A few examples of less boring
accented characters
8/14/2019 Latin Modern fonts at eleventh hour
21/37
ee eee e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
A few examples of less boring
accented characters
8/14/2019 Latin Modern fonts at eleventh hour
22/37
e eee e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
A few examples of less boring
accented characters
8/14/2019 Latin Modern fonts at eleventh hour
23/37
ee e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues
A subset of CMs font metric files can be safelyused with LMs PFB files; known exceptions:
lack of math (will be fixed soon)
a macro \hbar produces slightly worse result(green CM, gray LM, blue LM glyph):
hh
8/14/2019 Latin Modern fonts at eleventh hour
24/37
e e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues
A subset of CMs font metric files can be safelyused with LMs PFB files; known exceptions:
lack of math (will be fixed soon)
a macro \hbar produces slightly worse result
there are some discrepancies between CS and LMType 1 (PFB) fonts, reported by Karel Pska;for example, the widths of guillemots differ,most significantly in 5-point fonts:
csr5.pfb: 5000/9=555.556; lmr5.pfb: 750but in csr10.pfb i and lmr10.pfb the respectivewidths are consistent:
csr10.pfb: 5000/9=555.556
lmr10.pfb: 5000/9=555.556
8/14/2019 Latin Modern fonts at eleventh hour
25/37
e e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues
A subset of CMs font metric files can be safelyused with LMs PFB files; known exceptions:
lack of math (will be fixed soon)
a macro \hbar produces slightly worse result
there are some discrepancies between CS and LMType 1 (PFB) fonts, reported by Karel Pska:
csr5.pfb: H
lmr5.pfb: H
8/14/2019 Latin Modern fonts at eleventh hour
26/37
e e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues
A subset of CMs font metric files can be safelyused with LMs PFB files
In general, however, full compatibilitycannot be even dreamt of
the sets of fonts differ
the exact dimensions of glyphs cannot be retained(the infamous limit of 16 heights, 16 depthsand 64 italic corrections)
in the LM fonts some apparent flawsof the CM fonts have been corrected(both concerning metric dataand character shapes)
8/14/2019 Latin Modern fonts at eleventh hour
27/37
e e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues
So, why not to follow the Senior Typographer, Hermann Zapf,who quite recently decided to improve his Optima?
8/14/2019 Latin Modern fonts at eleventh hour
28/37
e e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues
What can we do to make the LM fontsusable for the Czech TEX community?
We have already equipped LMs inCzech double quotes
Accents (hacek) have been modified
CS encoding(s), i.e., the relevant .tfm files,can be easily added to the LM distribution
We are open to further suggestions
8/14/2019 Latin Modern fonts at eleventh hour
29/37
e
ee eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues:an example of strange kernings
that have been corrected
The file roman.mf reads:
% three degrees of kerning:k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#;ligtable "k":
if serifs: "v": "a" kern -u#, fi"w": "e" kern k#, "a" kern k#,
"o" kern k#, "c" kern k#;
The kern pair k-a appears in TFMs of serif fontstwice: first with the value u#, next with
the value k#, i.e., 0.5u#; moreover, thereare no v-a, v-c, v-e, and v-o kern pairs in sansseriffonts, although there are k-c, k-a, k-e, k-o, w-a,w-c, w-e, and w-o kern pairs in these fonts.The problem of missing v-* kerns in sansserif variants
occurs in EC, CS, PL, VN, and CM-Super fonts!
8/14/2019 Latin Modern fonts at eleventh hour
30/37
e eee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues:a few example glyphs (mostly accents)
that we decided to touch
} ^ _
solid green CM, outline black
8/14/2019 Latin Modern fonts at eleventh hour
31/37
ee eggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Compatibility issues:an example feature
that we are not going to touch
In the LM typewriter fonts, the letters v, y, x werereported to be too thin; the comparison with the
original fonts shows, that this was D. E. Knuths design:
Font vtt10: CMs bitmap; CMs outlines; LMs outlines
8/14/2019 Latin Modern fonts at eleventh hour
32/37
ggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Plans for the future
We are not going to equip the Latin Modernfonts with non-Latin alphabets, such ascyrillic, Greek, etc.
We are not going to increase the numberof so called optical sizescan you seeany difference?
eee
8/14/2019 Latin Modern fonts at eleventh hour
33/37
ggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Plans for the future
We are not going to equip the Latin Modernfonts with non-Latin alphabets, such ascyrillic, Greek, etc.
We are not going to increase the numberof so called optical sizescan you seeany difference?
eeecmr8 at 9pt cmr9 at 9pt cmr10 at 9pt
8/14/2019 Latin Modern fonts at eleventh hour
34/37
ggg
y yy yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Plans for the future
We are not going to equip the Latin Modernfonts with non-Latin alphabets, such ascyrillic, Greek, etc.
We are not going to increase the numberof so called optical sizes
In general, we are not going to go too far withthe improvement of the original D. E. Knuthsdesignwe will consider the changing of only
those features which would have hamperedthe extending of the Latin Modern familywith new diacritical characters
8/14/2019 Latin Modern fonts at eleventh hour
35/37
yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Plans for the future: to do
Fixing bugs and misfeaturesas soon as possible
Reaching the basic stability of the metric dataof the packagebefore the release of the version 1.00(scheduled for Spring 2006, BachoTEX)
Adding a basic math companion (borrowedfrom CMs, to begin with)timing as above
The improvement of kerning (reluctantly), glyphshapes (redrawing all accents from scratch?),and hinting; improving OTFs by, e.g., the additionof new featuresnot in a hurry
Further extensions to the character set (e.g., Africanlanguages)after the release of the version 1.0
More math, small capsfar future?..
8/14/2019 Latin Modern fonts at eleventh hour
36/37
yBrno, November, Bogusaw Jackowski Latin Modern fonts at eleventh hour
Should you have remarks concerningthe current LM release, please consult
Harald Harderss www pageWishes for Latin Modern:
http://www.harald-harders.de/latex/lmodern.html
At the moment the page is unmaintained;
nevertheless, a lot of information can be found there.
8/14/2019 Latin Modern fonts at eleventh hour
37/37
The Latin Modern project is supported by TEX UsersGroups, in particular, by the German-speakingTEX Users Group DANTE e.V., the Polish TEX UsersGroup GUST, the French-speaking TEX Users Group
GUTenberg, the Dutch-speaking TEX Users Group NTGandlast but not leastTUG.
top related