Ukázky • Examples (PDF)

Boisik

Font Boisik je patkový font, který je inspirován písmem Baskerville. Je určen pro sazbu s použitím programu TeX a je napsán v Metafontu. Vzhledem k charakteru fontu a rozsahu dostupných symbolů se předpokládá jeho použití při sazbě jednodušších matematických a fyzikálních textů. Font pokrývá všechny symboly z fontů Computer Modern (popsané v knize Computer Modern Typefaces), znaky nutné pro češtinu (také z kódování T1 a TS1) a některé další matematické symboly (sada AMS fontů, Unicode). Font Boisik is a serifed font inspired by Baskerville typeface. It is written in Metafont and can be used with TeX to typeset simple mathematical and physical texts. Available symbols cover all symbols from Computer Modern fonts (described in Computer Modern Typefaces), accented letters needed in Czech (also T1 and TS1 encoding is covered, but unsupported) and others math symbols (from AMS fonts).
Some information on this page may be in Czech only. English translation has a low quality.
Font je uvolněn pod licencí GPL verze 2. Font je ve vývoji, proto se nedoporučuje použití tam, kde je důležitá stabilita sazby. Použití fontu je jen na vlastní riziko, odpovědnost autora je veškerá žádná. Font is licensed under GPL version 2. Font is in development and its application is not recommended in instances, where stability of typesetting is important. The font is provided as is without warranty of any kind.

Jednotlivé fonty • Available Faces

založené na antikvě based on roman
základní řezbskr10normal face
polotučný řezbskrsb10    semibold face
tučný řezbskrb10bold face
světlý řezbskrl10light face
skloněná varianta základního řezubskrsl10slanted normal face
základní řez zúženýbskrc10condensed face
tučný zúžený řezbskrcb10bold condensed face
základní řez obrysovýbskrol10outlined normal face
základní řez s normálními číslicemibskrf10normal face with new-style figures
základní řez s pevnou šířkou písmen bskrw10normal face with fixed width
malé kapitálkybsksc10small capitals
velmi tučné majuskulebskhc10heavy curves majuscules
založené na italice based on italic
základní řezbski10normal face
tučný řezbskib10bold face
vzpřímená italikabskiu10upright italic
základní řez obrysovýbskiol10outlined normal face
matematické math
matematická italikabskmi10math italic
matematické symbolybsksy10math symbols
velké matematické symbolybskex10big math symbols
další matematické symboly (AMS sada)bskms10other math symbols (AMS set)
přídavné matematické symbolybskma10additional math symbols
šipkybskarr10arrows
Vzhled písmen v některých fontech může být hodně úsměvný, je třeba jej brát s rezervou. Zatím je nejpropracovanější základní řez bskr10. Časem se snad zlepší i ostatní. Some symbols in listed faces may look ugly. Currently, the most elaborated face is bskr10. I hope in future improvement of other faces.

Problémy • Problems

V současné době to vypadá, že s použitím fontu je více problémů než užitku. Níže jsou uvedeny některé z nich.
  • Základní písmo bskr10 používá skákavé číslice. Pro lepší sazbu v matematice se používá upravený font, který má číslice stejné výšky. Proto je třeba v textu důsledně rozlišovat např. bod 1 je a bod $1$ je.
  • Drobné problémy se vyskytují u natahovatelných závorek. Princip, použitý v TeXu, vyžaduje, aby závorky byly symetrické kolem vodorovné osy. Vzhledem k návrhu složených závorek a k zaokrouhlovacím chybám je to obtížné dodržet, proto může dojít k malým nepřesnostem.
  • Font Boisik neobsahuje žádné ostré překrytí tahů, ale vždy jen pozvolné náběhy. To však vede ke dvěma problémům:
    1. Zaoblování je řešeno pomocí cest a intersectiontimes, což vzhledem k chybám při diskretizaci může vést k tomu, že se generování fontu při daném rozlišení nezdaří. Zvláště bývá problém při nízkém rozlišení. Pokud se tento problém vyskytne, lze ho odstranit většinou zvětšením rozlišení, např. dvips -mode supre -D 2400 soubor.dvi.
    2. Mnoho znaků, zvláště matematických negací, je v TeXu skládáno ze dvou znaků, např. základního znaku a symbolu negace. Použije-li se stejný princip s fontem Boisik, výsledný znak nedodrží styl písma.
  • Kerningové páry jsou jen prvotní nástřel a ještě se budou upravovat.
  • Font neřeší takové záležitosti, jako jsou symboly generované řidicím souborem texset. Rovněž ignoruje hrátky s parametrem ligs v řidicích souborech roman a textit.
Now the application of Boisik font has many problems. In this listing some of them are explained.
  • Basic face bskr10 uses old-style figures. To allow better math typesetting, modified font with new-style figures is used in math environments. Therefore it must be distinguished between point 1 is and point $1$ is in the source code.
  • There are small problems with extensible curly braces. TeX requires that braces must be symmetric around horizontal axis. With regards to rounding errors this is not possible with Boisik design of braces. So, small inaccuracies may appear.
  • Font Boisik doesn't contain sharp overlapping of strokes, only their gradual connections. This makes two problems:
    1. Connections are performed by paths and intersectiontimes. Due to discretion errors font generation at particular (especially small) resolution can fail. In this case try increase resolution, e.g. use dvips -mode supre -D 2400 file.dvi.
    2. Many symbols in TeX, especially math negations, are created from two symbols, e.g. from base symbol and symbol for negation. When such method is used with Boisik, final symbols is not compliant with Boisik font style.
  • Kern pairs are first attempt of kerning and the change of them is presumable.
  • Some specialities of Computer Modern fonts are igonored (e.g. texset driver file). Also ligs parameter in drivers roman and textit is igonored.

Co teď chybí • What is missing

  1. Matematické fonty neobsahují všechna velká kaligrafická písmena.
  2. Fontdimen parametry matematických fontů jsou opsány z odpovídajících souborů Computer Modern, moc jim totiž zatím nerozumím.
  3. Problém představují horizontální složené závorky (pro příkazy \overbrace a \underbrace). Při použití Computer Modern jsou poskládány ze čtyř symbolů a dvou linek, přičemž zmíněné symboly se používají jinak pro horní a jinak pro spodní závorku. Tento způsob omezuje tvary závorek, což je zatím vyřešeno tak, že prostě horizontální závorky chybí.
  1. There are few calligraphic letters only.
  2. Parameters fontdimen in math fonts are now taken from Computer Modern files without adaptation.
  3. There are problems with horizontal braces (made with commands \overbrace and \underbrace): they are missing.

Co nadbývá • What is added

  • Některá malá řecká písmena jsou obsažena ve dvou verzích. V základní pozici jsou písmena umírněnějšího tvaru, v pozici o 128 vyšší jsou písmena kresby rozvernější.
  • České znaky kopírují rozložení v CS-fontech (IL2), ale jsou přidány ligatury f+l s čárkou, f+l s háčkem a f+j.
  • Ve zdrojových souborech se vyskytují znaky, které nejsou použity v žádném fontu. Některé se mohou objevit v dalších řezech (např. symbol mikro), některé jsou jen pro zájemce, kteří si vytvoří vlastní kódování (a také jsou použity v OpenType variantě). Každý znak má přiřazenu proměnnou z pole chars (např. chars.latin_Aacute) a při překladu se testuje, zda je vytvořena odpovídající proměnná. Pokud ano, použije se její hodnota jako pozice znaku. Výpis všech symbolů lze získat pomocí grep "bskchar \"" *.mf (některá písmena zatím nejsou v italice). Kresby znaků jsou uloženy v souborech
    • bskletters-r.mf – písmena, číslice a speciální znaky ve stylu Roman (stojatá),
    • bskletters-i.mf – písmena, číslice a speciální znaky pro italiku,
    • bskletters-o.mf – jiná písmena (řecká a kaligrafická),
    • bsksymbols.mf – ostatní symboly, především pro matematiku.
    Použití pole chars umožňuje načítat soubory opakovaně, s jinými parametry.
    Fonty s kódováním T1 a TS1 bohužel nejsou k dispozici, především proto, že se mi pro ně nechce dělat kerny. Písmena a symboly z tohoto kódování však už jsou ve zdrojových souborech obsažené, není teda problém vytvořit si vlastní font (použijte bskr10-T1.mf a bskr10-TS1.mf, příp. změňte bskligtab.mf).
  • Kromě základního typu písma existují také abecedy a alfabety dvojitých písmen (blackboard-bold) a bezpatkových (sans-serif) písmen. Ty jsou však určeny pouze pro matematickou sazbou. Nepředpokládám, že by Boisik někdy měl plnohodnotnou bezpatkovou verzi. Přítomnost těchto variant je jedním z důvodů, proč matematické fonty nepoužívají standardní kódování OML a OMS.
  • Some small greek letters are available in two variants. Basic slots are occupied by letters with moderate look, slots with value of 128 higher contain more curved shapes.
  • Czech characters follow CS-font encoding (IL2) with some additions (ligatures f+l with acute, f+l with caron, f+j).
  • In the source files are characters which are not used by any font. Some of them can appear in other faces (e.g. micro sign), others are for interested persons only (and for OpenType variant). You can make your own encoding. Each symbol has assigned variable from the chars array (e.g. chars.latin_Aacute) and its assignment is tested during processing. If it has known value this value determines symbol slot in font. Listing of all available symbols can be obtained by grep "bskchar \"" *.mf (some letters are not available in italic form). Drawings of symbols are in following files
    • bskletters-r.mf – letters, figures and special symbols for Roman (upright),
    • bskletters-i.mf – letters, figures and special symbols for italic,
    • bskletters-o.mf – other letters (greek and calligraphic),
    • bsksymbols.mf – other symbols, mainly math.
    Usage of chars array allows repeatable reading with different parameters.
    There are no fonts with T1 and TS1 encoding (I'm too lazy to make kerns for them). However, accented letters and symbols included in this encoding are available in source files. If you want, simply make your own font (use bskr10-T1.mf and bskr10-TS1.mf, eventually change bskligtab.mf)
  • Beside the main font there are also blackboard-bold and sans-serif variants (lowercase and uppercase Latin and Greek letters), intended for math only. I don't assume that Boisik will ever have full-featured sans-serif variant. Due to these letters math fonts don't follow standard encodings OML and OMS.

Parametrické soubory

Pro generování fontů jsou používány parametrické soubory. To však bohužel neznamená, že je možné parametry libovolně měnit. Jejich změna může způsobit celou řadu chybových hlášení, proto je vhodné neměnit číselné parametry (mnoho z nich se stejně nevyužívá, jen kopírují parametry z Computer Modern). Je ovšem možné měnit parametry logické, což má smysl jen v těchto případech: medieval určuje, zda budou vytvářeny skákavé číslice, monofig určuje, zda budou mít číslice stejnou šířku a monospace určuje, zda bude písmo proporcionální. Z číselných parametrů lze měnit např. punct_fit, který určuje velikost nálitku před otazníkem a vykřičníkem.

Písmena ve fontu jsou zásadně řešena jako obrysová, tj. nejprve je vyplněn vnější obrys celého písmena a pak je případně vymazán a obtáhnut vnitřní obrys. Definicí let fildraw=draw lze dosáhnout toho, že bude vykreslen jen obrys písmen tloušťkou tiny. Tato vlastnost zatím nemá valný význam, ale mohla by ulehčit případný převod do jiných formátů. Obrysové písmo lze získat také zadáním parametru bsk_outline# (jako u bskrol10) s významem tloušťky čáry obrysu. Při nízkém rozlišení se však může stát, že znak bude prázdný. Případně lze použít klasický způsob využívající extra_endchar a manipulaci s currentpicture. Obrysové písmo nepracuje správně v případě natahovatelných symbolů.

Instalace a použití • Installation and Usage

  1. Stáhnout font Boisik,
  2. rozbalit soubory *.mf do adresáře, kde je najde Metafont, např. /usr/share/temxf/fonts/source/public/boisik,
  3. soubory pro LaTeX (boisik.sty, *.fd) rozbalit tam, kde je LaTeX najde, např. /usr/share/temxf/tex/latex/boisik,
  4. je-li třeba, aktualizovat databázi (např. texhash).
  5. Jako doplněk si lze stáhnout předběžnou OTF verzi fontu Boisik.
Font lze použít buď přímo (TeX i LaTeX), např.
  1. Download font Boisik,
  2. unpack *.mf files to directory used by Metafont, e.g. /usr/share/temxf/fonts/source/public/boisik,
  3. unpack LaTeX files (boisik.sty, *.fd) to directory used by LaTeX, e.g. /usr/share/temxf/tex/latex/boisik,
  4. rebuild database if needed (e.g. texhash).
  5. As an add-on you can get a preliminary OTF version of Boisik font.
Font can be used directly (TeX and LaTeX), for example
\font\bsk bskr10 at 12pt \bsk Text,
nebo lze v LaTeXu použít balíček boisik.sty, který přemapuje základní fonty v dokumentu na řezy Boisiku (tj. podobně, jako např. balíček palatino). V případě češtiny můžete použít volbu czech pro kódování IL2. Je asi jasné, že i tento balíček je zatím ve vývojovém stavu. Volba arrows definuje rozšířenou množinu šipek. or in LaTeX a package boisik.sty can be used. This package remapes default document fonts onto Boisik typefaces (similarly to package, e.g. palatino). Also this package is in development. With option arrows an extended set of arrows will be available.

Budoucnost

Upřímně doufám, že vývoj fontu bude zdárně pokračovat, ale rozhodně to nemohu zaručit. Předpokládám, že by mělo dojít k vyladění zdrojových souborů tak, aby se omezily chyby diskretizace při rozumných rozlišeních (ale rozsahu fontů Computer Modern asi nebude dosaženo) a základních parametrech pro normální a tučnou antikvu, normální a tučnou italiku a skloněný řez. Budu také přidávat další matematické symboly (např. z stmaryrd). Postupný vývoj v pokrytí symbolů bude sledovat balíček boisik.sty.

Konečným stupněm ve vývoji by mělo být vytvoření i jiného vektorového tvaru, nejspíše OpenType varianty, s případnou podporou některých vlastností. Výše dostupná verze není příliš kvalitní, je vytvořena překladem souborů metapostem s bází mfplain, načtením EPS souborů do FontForge a provedením RemoveOverlap a Simplify. Chybně interpretované znaky jsou ručně upraveny. Všechny akcentované znaky jsou zatím kresleny zvlášť, bez využití reference na základní znak.

Novinky • News

21. 8. 2009
nové symboly (především matematické a obecné značky pro Unicode OTF), nové šipky, doplnění boisik.sty, drobné úpravy new symbols (especially for Unicode OTF), new arrows, small changes, upgrade of boisik.sty
20. 3. 2009
první (dvě) kaligrafická písmena, šipky pro bskarr10, matematické symboly pro bskma10, drobné úpravy first (two) calligraphic letters, arrows in bskarr10, math symbols in bskma10, small changes
16. 2. 2009
reorganizace matematických fontů, balíček bosik.sty, drobné úpravy a opravy chyb reorganization of math fonts, package boisik.sty, small changes and bug corrections
12. 1. 2009
nové znaky podle msam a msbm, drobné úpravy stávajících znaků a italických korekcí new symbols (msam, msbm set), small changes of characters and italic corrections

Kontakt • Contact

Pokud u fontů narazíte na problém, který se vám zdá neočekávaný (většinu předpokládám ;-), nebo chcete kontaktovat autora (např. chcete vývoj podpořit ;-), pošlete, prosím, e-mail na adresu mitek@email.cz, ale vložte do předmětu text [BSK]. If you encounter an unexpected problem (there are many expected problems ;-) or you want contact an author, send an email on address mitek@email.cz with subject containing text [BSK] (prefer simple English).