The Greek fonts of the cbgreek bundle Copyright 1999--2004 Claudio Beccari The programs contained in this bundle can be redistributed and/or modified under the terms of the LaTeX Project Public License Distributed from CTAN archives in directory macros/latex/base/lppl.txt; either version 1 of the License, or any later version. The cbgreek bundle comprises the METAFONT files necessary to create the tfm (TeX font metrics) and the pk (raster) files in order to use such fonts for the composition of Greek text. The PostScript fonts are also available on CTAN and are partly maintained by Apostolos Syropoulos and partly by Claudio Beccari; these fonts come in the form of a collection of PFB files together with a cbgreek.map file that contains the information to be added to the psfonts.map file or to be added to the files that the various configuration files read in. This collection of fonts forms a complete set of families, series and shapes, at least in the sense as the EC fonts by J. Knappen do; even wider, because the cbgreek bundle includes also the outline family that is not available with the EC fonts. The names of the fonts are formed (similarly to the EC fonts) with a string comprising four letters and four digits: lllldddd.mf lllldddd.tfm lllldddd.pk (lllldddd.pfb) but, differently from the EC fonts, the four letters have special meanings: 1) the first letter is always "g" to remind the word Greek 2) the second letter identifies the family: r: regular s: sans serif t: typewriter type l: font for slides o: outline 3) the third letter identifies the series: m: medium b: bold x: bold extended t: monospaced i: invisible (proportional) font for slides j: invisible (monospaced) font for slides w: invisible bold extended font for slides 4) the fourth letter identifies the shape: n: normal o: oblique (or slanted) i: italic (or cursive) u: upright italic c: caps and small caps l: leipzig r: roman (serifed lower case letters) a: for sans serif italic upright fonts with a variant shape for epsilon e: for sans serif italic fonts with a variant shape for epsilon (see below). Not every family has all shapes and series, as, for example, the monospaced family lacks the bold extended series, and the slides font family lacks the "serifed" normal series; in total there are 74 (predefined) combinations. The digits represent the design size multiplied by 100, rounded to four digits and left padded with zeros; a design size of 5pt corresponds to 0500; a design size of 19.907pt corresponds to 1990 or 1991 depending on what you decide (I prefer 1991). The standard sizes for normal text typesetting are: 5pt 6pt 7pt 8pt 9pt 10pt 10.95pt 12pt 14.4pt 17.28pt 20.74pt 24.88pt 29.86pt 35.83pt At least these are the sizes declared in the T1????.fd files. For what concerns the slide fonts, the standard sizes, as defined in the corresponding fd files, are: 13.82pt 16.59pt 19.907pt 23.89pt 28.66pt 34.4pt 41.28pt although with the EC fonts the "normal" default font is specified for several other smaller sizes used only in mathematics. The standard size is 19.907 pt, and this is where I prefer to specify 1991 as the digit sequence of the corresponding font name. The New Font Selection Scheme NFSS used by LaTeX won't complain and will chose the four digit font closest to the one it requires; the NFSS issues a warning message only when the discrepancy is significant. Sans serif italic shapes. It has been noticed that all families but the Sans Serif one have the italic shape that contains an epsilon glyph resembling to the mathematical "contains" symbol, while all other shapes contain an epsilon glyph that resembles a "3" sign flipped left to right. In order to meet the demand for a uniform behavior of all families, but maintaining the necessary compatibility with the past situation, four new series/shape combinations have been added that meet the above demand. These new combinations have the literal part of their names as such: gsme: sanserif italic with variant epsilon gsxe: sanserif bold italic with variant epsilon gsma: sanserif italic upright with variant epsilon gsxa: sanserif bold italic upright with variant epsilon These new series/shape combination may be used in the following ways: a) incompatible way: substitute the above names respectively to the names gsmi, gsxi, gsmu, and gsxu in the lgrcmss.fd file; in this way you systematically replace the pre-existing series/shape combinations with the new ones. This setup might result incompatible with other people setups and may be used only if you never exchange documents with other writers without a previous agreement on the non standard .fd files. b) compatible way; you define two new shapes to be used in alternative to the standard ones, say ite and uie to match the standard it and ui. You add the relevant lines to the lgrcmss.file copying the lines with the standard shapes and modifying the shape indication as indicated above. You may actually create your non standard extension in an alternate font description file, say lcmcmsse.fd, that must be accompanied by a sty file where you define the user commands for using such shapes. See the fntguide.dvi documentation, that come with every distribution of the TeX system for further details, that in any case let you chose the definitions and the shortcuts you prefer. Remember: this solution is Compatible in the sense that the extension can be sent to any partner by means of the \begin{filecontents}{filename}...\end{filecontents} facility provided by LaTeXe. As anybody can verify in the /knappen/ec branch of the TeX directory tree, the number of EC fonts specified by the four letter-four digit scheme is tremendous, because METAFONT requires the full name in order to generate every font. The cbgreek bundle does not contain all such font driver files for every usable font for three reasons: 1) Apostolos Syropoulos already produced them in the sense that he produced a LaTeX script that generates all the necessary driver files; this LaTeX script is available in the same location of the CTAN archive. 2) The users of MS-DOS, Windows 3.x, Windows 9x with a FAT16 file allocation table may get in trouble with disk occupation if they had all those small font driver files (more or less 900 files). 3) Most, if not all, driver files can be downloaded from the CTAN archives as they are already available there. I managed to have such driver files reduced to only one statement, i.e. all those font driver files contain just the line input cbgreek You can add comments before and/or after that only line, but that is the only line that METAFONT and the font driver file require in order to generate both the tfm and the pk files. Therefore if you are one of those unfortunate FAT16 users, you might as well generate yourself just those driver files you really need. As an example suppose you want to generate the regular medium normal 10 point Greek font: you just create one file containing only the above magic line and you save it in a folder searched by METAFONT with the name grmn1000.mf Afterwards you run (directly or indirectly) METAFONT and your tfm and pk files get generated with the proper extensions and possibly are moved to the proper directories/folders. If you use one of those TeX systems that generates the necessary tfm and pk files on the fly, you only need to prepare the mf files as described above; if you have available the makeTeXtfm (or maketfm) and the makeTeXpk (or makepk) applications/executables, once you have created the above simple file grmn1000.mf, you might create the tfm and pk files directly by issuing such commands as makeTeXtfm grmn1000 or maketfm grmn1000 and makeTeXpk grmn1000 or makepk grmn1000 and if your system is well configured you get the desired files in the correct directories/folders without any more work. For creating PBF PostScript fonts either you download them directly from CTAN, or, if you need other sizes not already provided for by Apostolos or by me, you need sophisticated software (although freely available from the Internet) and must learn its use so as to get the best out of it. The cbgreek fonts have already been used to typeset a number of books in Greece and the newsletter "Eutupon", which is the bulletin of the Hellenic Association of the Friends of TeX. The BABEL version 3.7 should have these fonts as the default ones. Nevertheless no guarantee of any kind can be given concerning the fitness and merchantability of these fonts for any specific task; you use them as they are and you are responsible of the results you get. At the same time criticism is welcomed so that new versions may satisfy more users. As long as I can, I try to maintain these fonts; address your criticism and your suggestions to claudio.beccari@polito.it and I see what I can do in order to satisfy the largest part of the Greek typesetting community. ======================================================================== In order to use these fonts with LaTeX2e you should resort to the babel package and invoke the greek language, possibly among the other languages you use in that particular document; in the latter case the last named language is the default one. The babel support for Greek includes several .sty files, the greek font definition files and the Greek language description file. Once you have all these files and you have configured your TeX system for typesetting Greek text, you do not have to worry about anything else but writing your text. All the font selection commands keep working as with the Latin alphabet (except you have also the possibility of using the outline family of fonts, that is not standard with latin fonts); size, shape, series and family are changed exactly with the same common commands you use with Latin text, even {\em ...} or \emph{...}. Of course, if you want to have correctly hyphenated text, you have to edit the file language.dat so as to add Greek to the other loaded hyphenation patterns, and you must run initex so as to produce a new latex.fmt format file; the details vary between the various implementations of the TeX system, therefore you have to find out the details on your documentation. Babel offers two flavors of greek; if you specify greek in the command \usepackage[...,greek,...]{babel} you are set for typesetting with modern monotoniko spelling, where you use only the acute accent and no spirits (breathings); on the opposite, if you want to typeset classical (or katareuousa) Greek, you specify polutoniko greek as in \usepackage[...,greek,...]{babel} \languageattribute{greek}{polutoniko} and you can typeset with the whole set of accents, spirits, and subscripted or adscripted iotas. You select the language you want by means of the command \selectlanguage{greek} or you can input a citation in a different language by means of the command \foreignlanguage{greek}{....}. Read the general babel documentation for more specific environments and read the Greek support documentation file for finding out how to map the Greek characters on a Latin keyboard and what you can actually do with the babel support for Greek. Happy LaTeXing! =================================================================== Acknowledgments I have to thank many people and I can't list all of them here, but some are so important that I have to specify: Silvio Levy produced the first Greek font files I started with; if I had to start from scratch my fonts wouldn't even exist. Yannis Haralambous wrote other METAFONT files after those of Levy; I got suggestions also from Yannis files. He gave me also very fine advice and suggestions, for which I thank him in a special way. Jorge Knappen produced the EC fonts from which I got the whole idea of extending that approach to the Greek fonts; for compatibility reasons, therefore, I extracted his METAFONT interpolation routines from his files and put them in the file cbspline.mf; the merit of generating fonts of any size between 5pt and 99.99pt comes directly from Jorge. Apostolos Syropoulos, the president of the Hellenic Association of the Friends of TeX assisted me with patience and countless suggestions, criticism and time spent in testing the various versions of the fonts. He also was the first one who dared using my fonts, and, he told me, he started with the slides for a speech he gave some years ago, when no other Greek slide fonts were available. He also wrote the experimental versions of the BABEL extensions for the Greek language and defined the font definition files that go with version 3.7 of BABEL. Dimitri Filippou tested my fonts and sent me a conspicuous number of suggestions and criticism for which I thank him very much. He also "forced" me to produce the Leipzig Greek fonts; he cooperated in this task revising the different glyphs several times; he spent a lot of time helping me with these fonts; without his help these fonts would not exist. Later on he helped me with the revision of the sans serif fonts and revised every single lower case glyph in this family. Again a lot of thanks. The many unknown Hellenic Friends of TeX who, with the intermediation of Apostolos, let me know the bugs of the METAFONT code I wrote, so that I could correct it and possibly eliminate such bugs. =========================================================================== File list: 1) METAFONT CODE USED BY THE ALL THE FONT DRIVER FILES cbaccent.mf cbbase.mf cbdigits.mf cbgreek.mf cblig.mf cbligit.mf cbligsc.mf cbligtt.mf cblower.mf cbpunct.mf cbspline.mf cbupper.mf 2) METAFONT CODE USED BY SPECIFIC BASE FONT DRIVER FILES glic.mf glii.mf glin.mf glio.mf gliu.mf gljc.mf gljn.mf gljo.mf glmc.mf glmi.mf glmn.mf glmo.mf glmu.mf gltc.mf gltn.mf glto.mf glic.mf glii.mf glin.mf glio.mf gliu.mf glwc.mf glwi.mf glwn.mf glwo.mf glwu.mf glxc.mf glxi.mf glxn.mf glxo.mf glxu.mf gmtr.mf gomc.mf gomi.mf gomn.mf gomo.mf gomu.mf goxc.mf goxi.mf goxn.mf goxo.mf goxu.mf grmc.mf grmi.mf grmn.mf grmo.mf grmu.mf grml.mf grmr.mf grxc.mf grxi.mf grxn.mf grxo.mf grxu.mf grxl.mf grxr.mf grbl.mf gsmc.mf gsmi.mf gsmn.mf gsmo.mf gsmu.mf gsme.mf gsma.mf gsxc.mf gsxi.mf gsxn.mf gsxo.mf gsxu.mf gsxe.mf gsxa.mf gttc.mf gtti.mf gttn.mf gtto.mf gttu.mf Turin, 2nd of August 2004